Axapta 当记录不存在时插入到表中

Axapta 当记录不存在时插入到表中,axapta,dynamics-ax-2012,x++,Axapta,Dynamics Ax 2012,X++,为客户插入增值税编号时,它会检查我输入的值是否存在于TaxVATNumTable中 此检查在以下方法中处于活动状态:checkVATNum在表TaxVATNumTable中: if (!TaxVATNumTable::existOptionalCountryRegion(vatNum)) ret = checkFailed(strFmt("@SYS83770", vatNum, fieldId2pname(common.TableId, fieldId), countryRegion, tabl

为客户插入增值税编号时,它会检查我输入的值是否存在于
TaxVATNumTable

此检查在以下方法中处于活动状态:
checkVATNum
在表
TaxVATNumTable
中:

if (!TaxVATNumTable::existOptionalCountryRegion(vatNum))
ret = checkFailed(strFmt("@SYS83770", vatNum, fieldId2pname(common.TableId, fieldId), countryRegion, tableId2pname(tableNum(TaxVATNumTable))));
我想注释掉:
ret=…
行,并在
TaxVATNumTable
中插入我在客户处输入的增值税编号的代码

此表没有
insert
方法,处理此情况的最佳方法是什么?为此创建
insert
方法?

不应修改
checkVATNum()
方法,因为您总是希望确认该值存在

您应该做的是识别插入操作发生的位置,并在
checkVATNum()
逻辑之前执行检查和插入

如果表没有
insert()
方法,只需右键单击表方法,然后单击
Override method>insert
。但是,如果执行此操作,
insert\u记录集
操作将无法有效地处理特定表,因为需要调用
insert()
逻辑,并且它将分解为常规样式的操作