【发布时间】:2012-10-25 21:41:58
【问题描述】:
我已经解决了这个问题一段时间,似乎无法找到解决方案。我正在编写另一个人最初编写的代码,我的工作是让它工作,因为他没有机会完成它。
我创建了一个名为 MpasMthSalesIndex 的 EDT,其中包含所有月份的数组元素,一月 - 十二月。
我从表单调用下面的方法(在 MpasItemSales 数据源中)以获取返回的数组,如下所示:
[MpasMthSalesIndex] = MpasItemSales.MthSales(Year(today())-2);
给我错误:“操作数类型与运算符不兼容”
它不起作用。这就是原始代码,我已经尝试了我能想到的一切来返回这个数组。有人知道我该怎么做吗?
这是我调用的方法:
我所做的是初始化 MpasMthSalesIndex Ret,并用值填充它并尝试返回它,这里没有错误,但是当我尝试从我需要它的表单将它分配给 MpasMthSalesIndex 时出现错误...
MpasMthSalesIndex MthSales(Yr _yr)
{
int i;
int m;
date d = SystemDateGet();
date e;
Qty YrSales[366];
MpasMthSalesIndex ret;
;
switch(_yr)
{
case(Year(d)) : [YrSales] = this.MpasSalesCurYr;
d = dateStartYr(d);
break;
case(Year(PrevYr(d))) : [YrSales] = this.MpasSalesPrevYr;
d = dateStartYr(PrevYr(d));
break;
case(Year(PrevYr(PrevYr(d)))) : [YrSales] = this.MpasSalesPrev2Yr;
d = dateStartYr(PrevYr(PrevYr(d)));
break;
case(Year(PrevYr(PrevYr(PrevYr(d))))) : [YrSales] = this.MpasSalesPrev3Yr;
d = dateStartYr(PrevYr(PrevYr(PrevYr(d))));
break;
}
e = dateEndYr(d);
while (d<e)
{
i = DayOfYr(d);
m = MthOfYr(d);
ret[m] += YrSales[i];
d++;
}
return ret;
}
【问题讨论】:
标签: arrays axapta x++ dynamics-ax-2012