0

不明な理由で数式が機能しないこの問題に遭遇した人はいますか? この数式を保存し、貼り付けて元に戻すと、再び機能しますか? 式は基本的に以下です。数を合計することを意味します。IF ステートメントを正しく評価せず、常に 0 を使用しているようです。しかし、その数式を切り取って貼り付け直すと、{@LYMAT_combined} の値が何であれ追加されます。

whileprintingrecords;
shared numberVar LYMAT_Comp;
LYMAT_Comp := LYMAT_Comp + if {@Combo_Sales} < 24 then 0 else {@LYMAT_combined};

また、これはグループフッターにある私のCalc_All式であり、基本的に、合計を表示する別のグループフッターで呼び出す複数の合計に対して上記の同様の式を実行します。Calc_All はかなり大きい 数式フィールドに追加できる数式の行数の設定はありますか? その中で約50の共有変数と式を宣言しました。

ありがとう

4

2 に答える 2

0

1 つには、スコープを使用する必要はありません。これSharedは、メイン レポートとそのサブレポートの間で値を共有するためだけのものです。Global代わりに使用してください。

あなたの状況では、数式フィールドを使用することをお勧めします。

// {@LYMAT_Comp}
if {@Combo_Sales} < 24 then 0 
else {@LYMAT_combined}

次に、数式フィールドを要約します (挿入 | 要約...)

于 2013-06-10T15:59:33.813 に答える