ReportBuilderに、2つのオブジェクトについてレポートすることになっているレポートがあります。私はこのレポートを作成しませんでした、そしてそれがどのように機能するかについて作成した人に尋ねることはできません。レポートを実行する前に、オブジェクトのすべてのプロパティを検索し、次のようなメモリデータセットにロードするコードがあります。
OBJECT_ID: TStringField
PROP_NAME: TStringField
PROP_VALUE: TStringField
次に、レポートエンジンは、このデータセットの各プロパティのレポートに行を作成します。これはサブレポートに実装され、その親には人間が読める名前であるOBJECT_IDのみが含まれます。
レポートに任意のサイズの「コメント」を表示する必要があるまで、すべてが順調に進んでいました。TMemoFieldを使用して2番目のサブレポートを作成し、テキストを保持できるようにして、レポートデザイナーでレポートを設定しました。
レポートを実行するときに期待するのは、次のようなものです。
HEADER
Object 1 properties
Object 1 comment
Object 2 properties
Object 2 comment
私はそれ以外のほとんどすべてを手に入れることができました。サブレポートのパイプラインのMasterDataPipelineプロパティとMasterFieldLinksプロパティを使用して、サブレポートのOBJECT_IDをヘッダーのOBJECT_IDにリンクしようとしました。これは、私が何とかやってきた最も近いものですが、今では次のようになっています。
HEADER
Object 1 properties
Object 1 comment
Object 2 comment
データがデータセットに正しく組み込まれていることを手動で確認しましたが、「オブジェクト2のプロパティ」セクションはどこにも表示されません。
これは私を狂わせています。そこにいるReportBuilderの達人は、何が起こっているのか、そして今それを修正するのかを知っていますか?