Forms 如何按代码删除axapta表单的零金额行
当我们处理EOS时(服务结束)然后系统以某种方式自动生成零行0.00作为rendom employee的兑现数量。我的客户不希望此表单中出现此零行,因为当他们试图将EOS过账到总账时,它会将错误显示为金额,不能过账而没有值。因此,如何在x++中编写代码以从我的帐户中删除零金额行如果存在任何0.00兑现金额,则填写EOS表格Forms 如何按代码删除axapta表单的零金额行,forms,filter,axapta,x++,Forms,Filter,Axapta,X++,当我们处理EOS时(服务结束)然后系统以某种方式自动生成零行0.00作为rendom employee的兑现数量。我的客户不希望此表单中出现此零行,因为当他们试图将EOS过账到总账时,它会将错误显示为金额,不能过账而没有值。因此,如何在x++中编写代码以从我的帐户中删除零金额行如果存在任何0.00兑现金额,则填写EOS表格 在上面的截图中,当我们处理EOS时,系统已将兑现数量计算为零。请给出一些建议,以通过X++代码处理此情况。如果您使用数据源获取值,则数据源上有一个名为“如果为空则插入”的属
在上面的截图中,当我们处理EOS时,系统已将兑现数量计算为零。请给出一些建议,以通过X++代码处理此情况。如果您使用数据源获取值,则数据源上有一个名为“如果为空则插入”的属性(在本例中,数据源带有EncashmentQuantity字段),该属性自动设置为“是”,但您可以将其更改为“否”如果值为0,则不应显示该值。我不确定这就是你所说的,但可能是。我希望能理解这个问题 “我的客户不希望此表单中出现此零行,因为…” 我认为您可以这样做,如果您想按代码筛选不带0值的记录,您可以在DataSource中使用filter右键单击override executequery方法并插入代码,如下所示:
public void executeQuery()
{
this.query().dataSourceTable(tableNum(**YourTablename**)).addRange(fieldNum(**YourTableName**,**YoutFilterField**)).value(strFmt("%1", '>0'));
super();
}
例如:
this.query().dataSourceTable(tableNum(LedgerJournalTrans)).addRange(fieldNum(LedgerJournalTrans,AmountCurCredit)).value(strFmt("%1", '>0')); // DISCARD all record lower than 0
或
我分享以下有用的链接:
干得好 你有什么代码可以开始吗?没有,事实上我是axapta的新手。我不知道该从哪里开始编写代码。如何在应用程序中触发员工服务终了的处理?你能在你的问题中包括一个菜单路径和一个简短的过程描述吗?还是定制?还使用了什么版本的动力学?
this.query().dataSourceTable(tableNum(LedgerJournalTrans)).addRange(fieldNum(LedgerJournalTrans,AmountCurCredit)).value(SysQuery::valueNot(0));