我需要创建一个带有 for 循环的作业(我认为),该循环遍历所有可用的公司并检查特定值。我只是不熟悉如何选择每个公司。
有谁知道它的语法?
我在工作中使用以下技术:
static void CountIt(Args _args)
{
DataArea DataArea;
void doIt()
{;
info(int2str((select Count(RecId) from CustTable).RecId));
}
setPrefix("Counting");
while select DataArea where !DataArea.isVirtual
{
print(DataArea.Id);
setPrefix(DataArea.Id);
changecompany (DataArea.Id)
{
doIt();
}
}
}
请记住在 changecompany 范围内重置您的表变量,否则您会得到奇怪的结果或根本没有结果。一位同事要像你一样完成一项任务,但他在 changecompany 范围内的代码完全没有得到任何结果。我用谷歌搜索并找到了这篇博文:http: //dynamics-ax-live.blogspot.se/2011/10/what-not-to-forget-when-using.html
您正在寻找的功能称为“跨公司”数据访问。MSDN 这里有很多代码示例:
X++ 代码:http: //msdn.microsoft.com/en-us/library/cc518738.aspx