1

非常に簡単です-選択した特定のパラメーター日付の前に発生する最後の詳細レコードを表示したいと思います。私はこのようなものを書こうとしていました:

recordnumber = count(({assign.date} > {?Date}) - 1)

また

recordnumber = onlastrecord - count({assign.date} > {?Date}) - 1

「チェック」をクリックすると、assign.date が強調表示され、「ここにフィールドが必要です」と表示されます

これをグーグルで検索するときはいつでも、本当にシンプルであるべきだと思う何かに対する本当に複雑な答えが表示されます。私は Crystal について、複雑な答えの 1 つを展開するのに十分な知識がありません。

4

1 に答える 1

0

以下の手順に従ってください

  • 新しい数式フィールドを作成し、LastDate_Details という名前を付けて、数式エディター内に次のコードを追加します。

    WhilePrintingRecords;
    
    Shared DateVar LastDate;
    
    if CDate({assign.date}) < CDate({?Date}) then
        LastDate:= CDate({assign.date})
    
  • 数式フィールドを詳細セクションのどこかにドラッグ アンド ドロップし、フィールドを右クリックして非表示にします -> [オブジェクトの書式設定] -> [共通タブ] -> [抑制] チェック ボックスをオンにします。

  • LastDate_Footer という別の数式を作成し、次のコードを追加します。

    Shared DateVar LastDate;
    
  • 新しい数式フィールドをフッター セクションにドラッグ アンド ドロップします。

編集

Crystal Reports の変数スコープの詳細については、こちらを確認してください。

于 2013-07-29T23:10:58.307 に答える