0

C++ Builder 6 で QuickReport を使用してレポートを作成しようとしていますが、必要な結果が得られません。

私はこのレポートを 2 つの方法で作成しようとしましたが、わずかな成功しかありませんでした。最も有望であると思われるため、以下に 1 つの試みについて詳しく説明します。私は QuickReport を初めて使用し、他にどこでヘルプを探すべきかわかりません。http://www.quickreport.co.uk/でオンラインで見つけたドキュメントは最小限であり、非常に単純なレポートを超えて製品の使用方法を適切に説明していません。

レポートは次のようにフォーマットする必要があります。

  • メーカー1
    • 製品
    • 別の製品
    • さらに別の製品
  • メーカー 2
    • 私の製品
    • この製品

試行 1: メーカー データと製品データを分離する 2 つのクエリ

  • ID によって製造業者のコレクションを取得する TQuery を作成します。
  • 詳細バンドを作成します。
  • レポートの DataSet を Manufacturer TQuery に設定します。
  • Manufacturer TQuery および Manufacturer Name フィールドに関連付けられた Detail バンドに、Manufacturer Name QRDBText フィールドを作成します。
  • TQuery へのパラメーターであるメーカーの ID によって製品のコレクションを取得する TQuery を作成します。
  • サブディテール バンドを作成します。
  • Sub Detail バンドの DataSet を Product TQuery に設定します。
  • Product TQuery および Product Name フィールドに関連付けられた Sub Detail バンドに Product Name QRDBText フィールドを作成します。
  • Sub Detail バンドのイベントを作成します。
    • 印刷前:
      1. 現在の製造元 ID を受け取り、それをパラメーターとして Product TQuery に挿入します。
      2. 製品 TQuery をアクティブにします
    • アフタープリント:
      1. 製品 TQuery を非アクティブ化します

結果: これでほぼ必要なものが得られます。すべての製造元が適切に表示されますが、各製造元の最初の製品のみが表示されます。Sub Detail バンドが Detail バンドのように結果を繰り返し処理することを誤って期待しているのか、それともそれを機能させるために必要な他のステップが欠落しているのかはわかりません。ループまたは子バンドの使用も検討しましたが、どちらも期待する機能を提供していないようです。繰り返しますが、QuickReport を説明する適切なドキュメントがまったく見つからないようです。

結局、QuickReport が提供しない機能を期待しているのか、それともすべて間違っていると考えているのか、私には判断できません。

4

1 に答える 1