如何解决Axapta:Group By 子句后出现“从未选择记录”错误
我是 Axe 2009 的新手。 我想在加入另一个表 B 后更新表 A 中记录的字段,我想在其 ID 上应用 Group by。
我尝试运行以下代码,但它向我抛出错误“无法编辑 tableA 中的记录。从未选择该记录”:
where select forupdate tableA group by tabAid,Dimension[5]
join tableB group by tabBid,Dimension[5]
where tableA.tabAid == tableB.tabBid && tableB.Dimension[5] != "" && tableA.Dimension[5]
{
if(tableA.Dimension[5] != lines.Dimension[5])
{
ttsbegin;
tableA.Dimension[5] = tableB.Dimension[5];
tableA.update()
ttscommit;
}
}
我认为这应该是由 tableA 上的 Group By 子句的使用引起的,但是如果我删除它,在 if 检查中,tableA.Dimension[5] 是空的。
请有人帮助我。 谢谢。
解决方法
是的,问题在于 Group by
子句。尝试这样的事情。
ttsbegin;
while select forupdate tableA where tableA.Dimension[5] != ""
join tableB where tableB.tabBid == tableA.tabAid && tableB.Dimension[5] != ""
{
if(tableA.Dimension[5] != tableB.Dimension[5])
{
tableA.Dimension[5] = tableB.Dimension[5];
tableA.update()
}
}
ttscommit;
*我写的代码没有编译器,可能需要一些调整。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。