Axapta 通过两种方法检查字段值

Axapta 通过两种方法检查字段值,axapta,dynamics-ax-2012,x++,Axapta,Dynamics Ax 2012,X++,我有一个报告,我想检查SalesLine表中的某个字段是否已填充,如果已填充,请显示该字段的值 我有两个报表正在使用的自定义表 表A和表B 表A有一个具有以下查询的方法: select firstonly Id from TableB where TableB.Id == this.Id; return TableB.Id; 表B中有一个包含以下代码的方法: public SalesLine salesLine() { return SalesLine::findInv

我有一个报告,我想检查SalesLine表中的某个字段是否已填充,如果已填充,请显示该字段的值

我有两个报表正在使用的自定义表

表A
表B

表A
有一个具有以下查询的方法:

select firstonly Id from TableB
        where TableB.Id == this.Id;
return TableB.Id;
表B
中有一个包含以下代码的方法:

public SalesLine salesLine()
{
    return SalesLine::findInventTransId(this.InventTransId);
}

现在我需要检查报告,在这两种方法中,如果Sales Line表上的
字段X
已填充。我如何才能做到这一点?

我对你的问题的答案似乎很明显……因此,也许你问的问题不对:

if(TableB.salesLine().FieldX)
    info("FieldX is filled");

按如下所示修改表A方法

select firstonly Id,InventTransId from TableB where TableB.Id == this.Id; 
return TableB.salesLine().Fieldx ? TableB.Id : 0 ; 

从TableB中选择firstonly Id,InventTransId,其中TableB.Id==this.Id;返回TableB.salesLine().Fieldx?表B.Id:0;这就是我需要的,谢谢!可能我没有提供足够的信息:表A是标题,表B包含多行标题。因此,我进行了第一次查询,以查找表B中的第一行或一行,并基于表B中的该行,基于InventTransId查找SalesLine。