Axapta 将LedgerTrans.DocumentNum字段添加到BankAccountStation报告
我想将LedgerTrans.DocumentNum字段添加到BankAccountStation报告中 BankAccountStation报表具有数据源“BankAccountTable” 我该怎么做Axapta 将LedgerTrans.DocumentNum字段添加到BankAccountStation报告,axapta,microsoft-dynamics,ax,Axapta,Microsoft Dynamics,Ax,我想将LedgerTrans.DocumentNum字段添加到BankAccountStation报告中 BankAccountStation报表具有数据源“BankAccountTable” 我该怎么做 注意:可以通过BankAccountTrans.AccountId=BankAccountTable.AccountId然后通过LedgertTrans.voucher=BankAccountTrans.voucher来访问LedgertTrans.DocumentNum您可以尝试声明Ledg
注意:可以通过BankAccountTrans.AccountId=BankAccountTable.AccountId然后通过LedgertTrans.voucher=BankAccountTrans.voucher来访问LedgertTrans.DocumentNum您可以尝试声明
LedgertTrans LedgertTrans在classDeclaration
中添加code>,并在调用元素之前在报表的fetch
方法中添加以下代码。send(bankAccountTrans)
:
之后,只需在ReportDesign\AutoDesignSpecs\Body:_2
部分中添加一个新的显示字段,并使用以下代码:
//BP Deviation Documented
display DocumentNum documentNum()
{
return ledgerTrans.DocumentNum;
}
我没有试过,但它应该能起作用。或者,您可以在fetch
方法中声明ledgerTrans,在选择ledgerTrans后添加元素.send(ledgerTrans)
,并在上述部分中添加一个标准的String
字段,Table
=ledgerTrans,DataField
=DocumentNum。那么就不需要显示方法了
另外,我假设您使用的是AX 2009,但对于其他版本的AX,逻辑保持不变。这很简单:
display DocumentNum documentNum()
{
return (select firstonly DocumentNum from ledgerTrans
where ledgerTrans.TransDate == bankAccountTrans.TransDate
&& ledgerTrans.Voucher == bankAccountTrans.Voucher
&& ledgerTrans.DocumentNum != "").DocumentNum;
}
将方法拖动到所需的打印位置
display DocumentNum documentNum()
{
return (select firstonly DocumentNum from ledgerTrans
where ledgerTrans.TransDate == bankAccountTrans.TransDate
&& ledgerTrans.Voucher == bankAccountTrans.Voucher
&& ledgerTrans.DocumentNum != "").DocumentNum;
}