Index: vhLib/Class.mac.rou =================================================================== diff -u -r699 -r871 --- vhLib/Class.mac.rou (.../Class.mac.rou) (revision 699) +++ vhLib/Class.mac.rou (.../Class.mac.rou) (revision 871) @@ -32,28 +32,29 @@ ; ;---------------------------------------------------------------------------------------------------- -arrProperties(ClassName,arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly) +arrProperties(ClassName,arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly,flagDeeperLevel) set flagRequired = $get(flagRequired , "A") set flagCalculated = $get(flagCalculated , "A" ) set flagEmbeddedOnly = $get(flagEmbeddedOnly, 0 ) + set flagDeeperLevel = $get(flagDeeperLevel, 1 ) kill arrHULP($job) kill arrProperties - - do BuildarrProperties(ClassName,.arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly) + do BuildarrProperties(ClassName,.arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly,flagDeeperLevel) quit // returns arr(Property) = $listbuild( items ) .. volgorde van items kan je vinden in vhLib.Class.inc ; ps : vraag mij niede wat er hier allemaal gebeurd , snap het ondertussen zelf al niet meer maar blijkbaar werkt het toch -BuildarrProperties(ClassName,arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly) +BuildarrProperties(ClassName,arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly,flagDeeperLevel) new IdxProperty set IdxProperty = "" new objCompiledClass , Counter - new PropertyName , PropertyType , flagCanSave , flagDeeperLevel + new PropertyName , PropertyType , flagCanSave set flagRequired = $get(flagRequired , "A") set flagCalculated = $get(flagCalculated , "A" ) set flagEmbeddedOnly = $get(flagEmbeddedOnly, 0 ) + set flagDeeperLevel = $get(flagDeeperLevel , 1) set arrHULP($job,"ClassName") = $get(arrHULP($job,"ClassName")) @@ -71,11 +72,11 @@ set PropertyName = $select($length(arrHULP($job,"ClassName")):arrHULP($job,"ClassName")_".",1:"")_PropertyName if flagCanSave set arrProperties(PropertyName) = $$BuildarrPropertiesListBuild(ClassName,PropertyName) }else { - set flagDeeperLevel = ( $$IsEmbedded(PropertyType) && '$length($$Collection(ClassName,PropertyName))) + set:flagDeeperLevel'="F" flagDeeperLevel = ( $$IsEmbedded(PropertyType) && '$length($$Collection(ClassName,PropertyName))) if 'flagDeeperLevel set arrProperties(PropertyName) = $$BuildarrPropertiesListBuild(ClassName,PropertyName) - if flagDeeperLevel,'$$IsSwizzled(ClassName,PropertyName) { + if ( (flagDeeperLevel ) || ( flagDeeperLevel = "F" ) ) ,'$$IsSwizzled(ClassName,PropertyName) { set arrHULP($job,"ClassName") = $select($length(arrHULP($job,"ClassName")):arrHULP($job,"ClassName")_".",1:"") _ PropertyName - do BuildarrProperties(PropertyType,.arrProperties,flagRequired,flagCalculated) + do BuildarrProperties(PropertyType,.arrProperties,flagRequired,flagCalculated,flagEmbeddedOnly,flagDeeperLevel) } } }