Axapta 在所有公司AX2012中标记复选框

Axapta 在所有公司AX2012中标记复选框,axapta,x++,dynamics-ax-2012-r3,Axapta,X++,Dynamics Ax 2012 R3,我在PurchParameters表中添加了一个复选框,名称为setExchRateVal,我想在我的所有公司中标记为true,不带sql操作 我怎样才能在有工作的情况下做到这一点 我试过了,但没成功 PurchParameters purchParameters ; while select forUpdate crossCompany purchParameters { purchParameters.setExchRateVal = NoYes::Yes; purchPa

我在PurchParameters表中添加了一个复选框,名称为setExchRateVal,我想在我的所有公司中标记为true,不带sql操作

我怎样才能在有工作的情况下做到这一点

我试过了,但没成功

PurchParameters purchParameters ;

while select forUpdate crossCompany purchParameters
{
    purchParameters.setExchRateVal = NoYes::Yes;
    purchParameters.update();
    //info(strFmt("%1 - %2", purchParameters.SetExchRateVal, purchParameters.dataAreaId));
}
AX错误:
不允许跨公司执行更新操作

错误很明显。您不能在同一个select查询中执行
跨公司
更新
<下面的代码>方法2更接近您正在做的事情。当更新参数表时,由于表上的
,可以通过几种方式进行更新

见下文:

PurchParameters purchParametersUpdate;
purchParametersSeek;
数据区数据区;
//方法1
ttsBegin;
同时选择数据区
{
changeCompany(dataArea.id)
{
purchParametersUpdate=PurchParameters::find(true);
purchParametersUpdate.setExchRateVal=NoYes::Yes;
purchParametersUpdate.update();
}
}
TTS委员会;
//方法2
ttsBegin;
选择crossCompany purchParametersSeek时
{
purchParametersUpdate=null;
为更新purchParametersUpdate选择firstOnly
其中purchParametersUpdate.RecId==purchParametersSeek.RecId;
如果(purchParametersUpdate)
{
//purchParametersUpdate.setExchRateVal=NoYes::Yes;
purchParametersUpdate.update();
}
}
TTS委员会;
信息(“完成”);

错误很明显。您不能在同一个select查询中执行
跨公司
更新
<下面的代码>方法2更接近您正在做的事情。当更新参数表时,由于表上的
,可以通过几种方式进行更新

见下文:

PurchParameters purchParametersUpdate;
purchParametersSeek;
数据区数据区;
//方法1
ttsBegin;
同时选择数据区
{
changeCompany(dataArea.id)
{
purchParametersUpdate=PurchParameters::find(true);
purchParametersUpdate.setExchRateVal=NoYes::Yes;
purchParametersUpdate.update();
}
}
TTS委员会;
//方法2
ttsBegin;
选择crossCompany purchParametersSeek时
{
purchParametersUpdate=null;
为更新purchParametersUpdate选择firstOnly
其中purchParametersUpdate.RecId==purchParametersSeek.RecId;
如果(purchParametersUpdate)
{
//purchParametersUpdate.setExchRateVal=NoYes::Yes;
purchParametersUpdate.update();
}
}
TTS委员会;
信息(“完成”);

您尝试过哪些代码?有样品吗?检查一下表格。谢谢@FH,我在while语句中使用了changeCompany,现在完成了。你试过什么代码?有样品吗?请查看表格。谢谢@FH,我在while语句中使用了changeCompany,所以请看下面的答案:非常感谢所有答案。我学到了不止一种方法,也看到了这个方法的答案:非常感谢所有的答案。我学会了不止一种方法