Axapta “如何实现SQL”;关于;Dynamics AX中的功能
我有以下疑问Axapta “如何实现SQL”;关于;Dynamics AX中的功能,axapta,dynamics-ax-2012,dynamics-ax-2012-r2,Axapta,Dynamics Ax 2012,Dynamics Ax 2012 R2,我有以下疑问 select x from ProjTable join GeneralAccEntry on (Projtable.ProjId= substr(GeneralAccEntry.fieldy), 25,7) 我用ProjTable作为主要数据源创建了一个表单。现在我想添加一个计算显示字段,它显示相关generalacentry表中fieldY的总和。检索每个projId的总和时遇到困难,因为该方法没有将projId作为参数 创建此显示方法的正确方法是什么?只需尝试使用“WHE
select x from ProjTable
join GeneralAccEntry
on (Projtable.ProjId= substr(GeneralAccEntry.fieldy), 25,7)
我用ProjTable
作为主要数据源创建了一个表单。现在我想添加一个计算显示字段,它显示相关generalacentry
表中fieldY
的总和。检索每个projId
的总和时遇到困难,因为该方法没有将projId
作为参数
创建此显示方法的正确方法是什么?只需尝试使用“WHERE”而不是“ON”
使用函数进行比较时要小心,它可能会给您带来错误。如果它确实尝试将substr的结果分配给具有定义长度的str变量(如str 20 varName)。不确定我是否正确理解您的问题。但以下方法能否解决您的问题:
Add method to your table ProjTable:
public display real sumOfGeneralAccEntry()
{
GeneralAccEntry generalAccEntry;
str filter = '*' + this.ProjId + '*';
select sum(fieldY)
from generalAccEntry
where generalAccEntry.fieldY like filter;
return generalAccEntry.fieldY;
}
Add the display to a field group
Add the fieldgroup into your form
Add method to your table ProjTable:
public display real sumOfGeneralAccEntry()
{
GeneralAccEntry generalAccEntry;
str filter = '*' + this.ProjId + '*';
select sum(fieldY)
from generalAccEntry
where generalAccEntry.fieldY like filter;
return generalAccEntry.fieldY;
}
Add the display to a field group
Add the fieldgroup into your form