Use FieldId, Enum Id, ExtendedDataType ID, ExtendedId in AX
来源:互联网 发布:mac如何固定dock 编辑:程序博客网 时间:2024/06/05 10:39
在AX中,每一种数据类型都有对应的ID, 系统也提供了很多函数用于在类型名字,标签(label)以及值之间转换。
Enumerate types
ExtendedDataTypes
Field in tables
Enumerate types:
以枚举类型ABC为例:
Type
Name
ID
Label
Value
Base Enum
ABC
1
Category
Element
None
None
0
A
A
1
B
B
2
C
C
3
方法名
描述
例子
EnumName2ID
通过Enum Name获取ID
Int EnumName2ID(“ABC”)
结果:1
enumid2name
通过Enum ID获取Name
Identifiername enumid2name(1)
结果:ABC
enumid2pname
通过Enum ID获取Label
Identifiername enumid2pname(1)
结果:Category
enum2symbol
通过Enum Name和Element的Value获取Element的Name
Str enum2symbol(EnumName2ID("ABC"),1)
结果:A
enum2value
通过枚举值获取对应Element的label
Str enum2value(ABC::A)
结果:A
Enum2int
通过枚举值获取对应Element的value
Int enum2int(ABC::A)
结果:1
ExtendedDataTypes
以类型Dimension为例:
Type Name
ArrayIndex
Name
Label
ID
Dimension
1
Dimension
Department
132
2
Cost center
Cost center
132
3
Purpose
Purpose
132
方法名
描述
例子
extendedTypeName2Id
通过Type Name获取ID
extendedTypeId extendedTypeName2Id (“Dimension”)
结果:132
ExtendedTypeId2name
通过ID获取Type Name
identifiername ExtendedTypeId2name(132)
结果:Dimension
extendedTypeId2pname
通过ID获取Label
identifiername extendedTypeId2pname(132)
结果:Department
extendedTypeId2Type
通过Id获取Type
Types extendedTypeId2Type(132)
结果:Types::String
Filed in table
以SalesTable中的Dimension为例:
Field Name
Id
Label
Dimension
23
Department
ExtendedDataType
ArrayIndex
Name
Label
ID
extId in table
Dimension
1
Dimension
Department
132
65559
2
Cost center
Cost center
132
131095
3
Purpose
Purpose
132
196631
Dimension本是是一个字符串数组的类型,当在SalesTable中加入一个Dimension类型的字段时,这个字段的ID是23. 由于这个字段是一个数组,对应每一个元素,对于表SalesTable都有唯一的extendedId,这个extendedID和ExtendedDataType上的ID是无关的。ExtendedId是按这样的原则构成的:
前16位
后16位
ArrayIndex
Field ID in table
ExtendedId一般是32位的,前16位的值是该元素在数组中的Index,后16位是该元素所在字段(即这个数组)在表中的ID。以Dimension的第一个元素为例,前16位的值是:1,后16位的值是23,整个32位数的值是65559.
ExtendedId会在 SysQueryForm, 系统标准的使用Excel导入导出数据时被用到(当然还有很多其他地方也会用到),所以了解ExtendedIid的构成是很有必要的。
(在以下表格中,字段指Dimension,元素指Dimension中的数组元素)
方法名
描述
例子
FieldExt2Id
通过extendedID获取字段的ID
fieldId FieldExt2Id(65559)
fieldId FieldExt2Id(131095)
fieldId FieldExt2Id(196631)
结果:23
FieldExt2Idx
通过extendedID获取元素的Index
int FieldExt2Idx(65559)
结果:1
int FieldExt2Idx(131095)
结果:2
int FieldExt2Idx(196631)
结果:3
FieldId2Ext
通过字段的ID和元素的index获取元素的extendedId
fieldId FieldId2Ext(23, 1)
结果:65559
fieldId FieldId2Ext(23, 2)
结果:131095
fieldId FieldId2Ext(23, 3)
结果:196631
FieldLabelValue
查看字段的label,第三个参数只是一个显示的作用,返回的结果是: 字段的label : 第三个参数
str FieldLabelValue(tablenum(SalesTable),
fieldnum(SalesTable,Dimension),
’anything’)
结果:Department:anything
Fieldnum
通过表名和字段名获取字段ID
fielded fieldnum(SalesTable,Dimension)
结果:23
- Use FieldId, Enum Id, ExtendedDataType ID, ExtendedId in AX
- ENUM WindowsMessages ID
- uploadify"ID SWFUpload_0 is already in use..."错误的解决方法
- ID
- id
- id
- id
- ID
- ID
- @Id
- ID
- SQLSERVER id in string
- id in yii框架
- How to Collect Errorstacks for use in Diagnosing Performance Issues. (文档 ID 1364257.1)
- 警告: Deprecated public id in dwr.xml. Use: <!DOCTYPE dwr PUBLIC "-//GetAhead Limi
- uploaddify 报错 "ID SWFUpload_0 is already in use. The Flash Object could not be added"
- [Vue warn]: Do not use built-in or reserved HTML elements as component id:
- Notice: Use of undefined constant id
- Jquery CSS 操作
- 音乐中各频段声音的作用
- 客户端限制上传文件大小的方法
- JDBC批处理
- Top 20 practical software testing tips you should read before testing any application
- Use FieldId, Enum Id, ExtendedDataType ID, ExtendedId in AX
- 老子杀回来了
- IE6 not showing background image on hover
- c 与 c++中的time相关函数
- WM_CLOSE消息处理后
- main()方法
- slient instation
- loadrunner经典面试题
- 还在路上,坚持吧