在Navision 2018中,我有两个表合同和固定资产(FA),其中每个合同可以具有多个FA,并且一个FA可以与多个合同关联。因此,我有一个映射表,用于存储合同和FA之间的映射。在我的FA资产卡中,我需要显示与FA相关的“合同数量”。但是现在的问题是,我需要在“合同数量”字段的明细中显示合同清单,我不知道该怎么办? 预先谢谢
答案 0 :(得分:1)
您需要将代码添加到“合同数量”字段的OnDrillDown触发器中(可以在每个特定页面或表格上完成)。
代码首先应基于当前的固定资产编号对合同记录进行正确的过滤,然后以过滤后的合同记录作为表格视图运行“合同列表”页面。
类似这样的例子虽然不完整,但应该指出正确的方向:
// "No." will be taken from Rec which will be your current Fixed Asset.
Contract.SETRANGE("Fixed Asset No.","No.");
ContractListPage.SETTABLEVIEW(Contract);
ContractListPage.RUN;
有关更多信息,请检查SETTABLEVIEW Function。
为了解决多对多房地产的挑战,您需要首先找到所有需要在联系人列表中显示的合同,然后构建所需的过滤器值:
ContractFixedAssets.SETRANGE("Fixed Asset No.","No.");
IF ContractFixedAssets.FIND('+') THEN BEGIN
IF FilterValue <> '' THEN
FilterValue += '|';
FilterValue += ContractFixedAssets."Contract No.";
END;
Contract.SETFILTER("No.",'%1',FilterValue);