InventTransType表引用

时间:2015-06-29 09:00:14

标签: axapta microsoft-dynamics dynamics-ax-2009

在AX2009中,如何在代码中找到与InventTransType相关的表?

例如,InvnetTransType :: Sales与SalesTable相关,但如何从代码中的SalesTable获取表ID或表名?

1 个答案:

答案 0 :(得分:2)

我不认为这是可能的,因为InventTransType枚举和表格的元素之间没有1:1的关系。最多只有1:n关系(例如,您可以认为InventTransType::Sales与表SalesLine相关,或者与表SalesTable更好。另请注意,enum上的文档说它指定了“the module that generated the transaction”。

这实际上取决于您提出的问题以及您要检索的数据。也就是说,这里有一些你可以研究的要点,也许其中一个符合你的问题/要求。如果所有其他方法都失败了,您总是可以编写一个带有枚举元素的映射方法,并为您提供您认为适合此元素的表的ID(标准AX在几种情况下执行此操作以将其他实体映射到枚举元素,例如,参见表InventDimSetup,方法transType2FieldId)。

  • 交叉引用:检查枚举或枚举元素的交叉引用,这样可以让您知道哪些表与哪个元素相关联
  • InventTrans的关系:对于某些枚举元素,您可以在表InventTrans中找到表关系(但遗憾的是并非所有这些关系); ponus点是通过使用反射,您可以分析关系并获取引用的表(这可能与您在标准AX中可以获得的要求一样接近)