3

私はしばらくの間この問題をいじっていて、解決策を見つけることができないようです。私は別の人が最初に書いたコードに取り組んでいます。彼がそれを完成させる可能性がなかったので、私の仕事はそれを機能させることです。

1月から12月までのすべての月を含む配列要素を使用して、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;
}
4

1 に答える 1

2

呼び出し

[MpasMthSalesIndex] = MpasItemSales.MthSales(Year(today())-2);

次のように、戻り値としてコンテナが必要です。

int a, b, c;
[a, b, c] = [1, 2, 3]

コンテナーを返すようにメソッドを編集してみてください。

return [ret];
于 2012-10-24T15:50:26.177 に答える