使用Axapta报告工具从同一行的不同表打印列的最佳方法是什么?

Jam*_*ore 5 x++ axapta

似乎axapta报告中的每个主体部分只能打印单个表中的列(相继).例如:我有一个包含以下表格的报表:SalesLine,InventTable和CustTable.然后我想在同一行上打印每个表中的列.看起来我可以在将字段放在可编程部分中时执行此操作,但在将其放置在正文部分时则不行.

我找到了一些难以理解或不具备性能的解决方法.必须有一个很好的干净方法来做到这一点?

Jay*_*ker 4

应该可以做到这一点,基础系统中有几个报告以这种方式工作。以 4.0 中的 SalesContractShipment 报表为例。

在报表上,为 SalesLine 创建一个数据源,并在该数据源下分别为 InventTable 和 CustTable 创建数据源。在 InventTable 和 CustTable 上,确保 FetchMode 设置为 1:1。如果您创建自定义获取方法,请确保以正确的顺序调用 send()。您应该首先发送 CustTable,然后发送 InventTable,最后发送 SalesLine。在报表设计中,为 SalesLine 创建单个正文。然后,您应该能够使用该正文中三个表中任意一个的字段。

如果您仍然遇到问题,我可以想到两种解决方法。一种是基于这三个表创建一个视图,并基于该视图创建一个报告。另一种是基于 SalesLine 创建报表,并使用 displayMethods 从 InventTable 或 CustTable 中查找所需的任何字段。