Exactly. But, even if the field attached with some enum type and after removed from AOT (i.e., field is empty but, property is in Bold), it's printing the id value of removed/un-available enum in AOT. Please check.
Regards, KBS --- In Axapta-Knowledge-Village@yahoogroups.com, Sumit Loya <loya.su...@...> wrote: > > Hi, > > What has happened is that the name of the Enum was changed so the EnumType > field is empty (But the property is in Bold) which means there is an enum > attached to the field but it is not found in the AOT. So the Enum Id is not > empty but there is no name in the EnumType field. > > For your second query, when you create a new field of Enum type and do not > assign anything, system by default assigns ABC type enum, this is what i > have noticed and that is why it is displaying an Enum name > > Regards, > Sumit > > On Sat, Jun 27, 2009 at 11:09 PM, tkbsmanian <tkbsman...@...> wrote: > > > > > > > Sumit, > > > > Thanks for your screenshots. > > > > But, my question is simple and straight forward (applicable for both AX40 & > > AX5.0; but not to AX3.0). > > > > 1. How can it indicates that there is some enum attached even if > > EnumType field is empty (as you replied)? If it indicates so, why > > it is not printing the EnumName for DEL_BMBuildTable in AX4.0? > > > > 2. Why it is printing the EnumName for the user created field which > > doesn't have EnumType/not attached against EnumType property? > > (Having same field and table properties of DEL_BMBuildTable) > > > > Note : There is not only 'DEL_BMBuildTable'. There are 17 in AX4.0 and 13 > > in AX5.0 such as DEL_BMModuleParm, DEL_BMModuleTable, DEL_BMParm, > > DEL_BMTableSetup etc. > > > > Please clarify. > > > > Thanks && Regards, > > Balasubramanian Kuamaran. > > > > > > --- In > > Axapta-Knowledge-Village@yahoogroups.com<Axapta-Knowledge-Village%40yahoogroups.com>, > > Sumit Loya <loya.sumit@> wrote: > > > > > > Hi, > > > > > > If you look at the properties of the field, you will notice that EnumType > > > field is empty but it indicates that there is some enum attached. Looks > > like > > > the Base Enum attached with the field has been deleted in AX 4.0. > > > > > > In AX 2009 the Enum Type has been changed to ABC. This code will work in > > AX > > > 2009. > > > > > > Attached are the screen shots of the two in 4.0 and 2009. > > > > > > Hope this resolves your query. > > > > > > Regards, > > > Sumit > > > > > > On Thu, Jun 25, 2009 at 9:09 PM, tkbsmanian <tkbsmanian@> wrote: > > > > > > > > > > > > > > > Hi All, > > > > > > > > Today i came up with one strange thing. I executed the script given > > below. > > > > Please go through and let me know why its happening in such a way... > > > > > > > > 1. static void enumId(Args _args) > > > > 2. { > > > > 3. EnumId enumId; > > > > 4. SysDictEnum sysDictEnum; > > > > 5. > > > > 6. SysDictTable sysDictTable; > > > > 7. SysDictField sysDictField; > > > > 8. ; > > > > 9. > > > > 10. sysDictTable = new SysDictTable(978); > > > > 11. sysDictField = new SysDictField(sysDictTable.id(), 1); > > > > 12. > > > > 13. if (sysDictField.enumId()) > > > > 14. { > > > > 15. if (sysDictField.type() == Types::Enum > > > > 16. || sysDictField.baseType() == Types::Enum) > > > > 17. { > > > > 18. sysDictEnum = new SysDictEnum(sysDictField.enumId()); > > > > 19. > > > > 20. if (sysDictEnum) > > > > 21. { > > > > 22. info (sysDictEnum.name()); > > > > 23. } > > > > 24. } > > > > 25. } > > > > 26. } > > > > > > > > Note : TableName : DEL_BMBuildTable & FieldName : BuildID > > > > > > > > This script which ideally should print the BaseEnum name attached > > > > to the field, is not printing the value. The reason is, though the > > > > field is the type of Enum, no BaseEnum or EDT derived from > > > > BaseEnum attached to that field. Upto this ok. > > > > > > > > Line#18 of the above script failed on initializing because of > > > > no Enum attached to the field though it got passed at Line#13, > > > > since it's getting the value of 65535, which is max range for > > > > this object (type), which is actually not attached into the field. > > > > > > > > Now, > > > > > > > > 1. If i delete the enum attached to the field, which is type of Enum > > > > from standard SYS layer object, and after saved and sync, if i > > > > run the same script with the corresponding TableId and FieldId > > > > changes. It's printing the name. Why? How? > > > > > > > > 2. I created new table and added new field type of Enum and didn't > > > > attached any BaseEnum. Saved it. If i run the above script, with > > > > the corresponding TableId and FieldId changes, it's printing 'ABC' > > > > as default value. Why? How? > > > > > > > > Like said in the above two scenarios, why it is not happening for the > > > > tables like 'DEL_BMBuildTable'? (also configkey enabled) > > > > > > > > Any info/thought would be appreciated. > > > > > > > > Thanks && Regards, > > > > Balasubramanian Kumaran. > > > > > > > > > > > > > > > > > > > > > >