D365BCでレポート出力時にレイアウトを指定できるようになりました。2022 Release Wave 2 で拡張された機能です。
参考: 要求ページでレポート レイアウトを選択する | Microsoft Docs
実際の画面を見てみましょう。例えば発注伝票画面で印刷ボタンをクリックします。
するとレポート実行の要求画面が表示されます。ここに”Report Layout”という項目があります。これはv20にはなかった項目で、v21(Preview)から追加されています。いまは変更せずにこのまま”Send to”をクリックして印刷してみましょう。
pdfを選択してOKをクリック。
pdfで発注書が生成され、ダウンロードされました。ファイルを開きます。
このようなレイアウトで注文書が印刷されたことがわかります。
このレポートのレイアウトは”Report Layout”で定義されています。
“StandardPurchase”でキーワード検索すると発注伝票画面に紐づいているレイアウトを確認できます。Report ID:1322(Purchase – Order)にはRDLC形式のレポートレイアウトとWord形式のレポートレイアウトが割り当てられていることが確認できます。
印刷時にレイアウトの選択を実験するため、カスタムレイアウトを追加してみましょう。最初から作ると大変なので、既定のレイアウトをベースに少しだけ修正します。Wordのレイアウトを選択した状態で”Export Layout”を選択します。
Wordのレイアウト定義がダウンロードされます。ファイルを開きます。
修正したレイアウトだとわかるように少し手を加えます。例えば仕入先住所の上に”Buy from Address”という文字列を追加して、ついでに色も塗ってみましょう。変更したファイルは別名で保存します。
新しいレイアウト定義をインポートします。まずは”New Layout”でレイアウトを新規作成します。
レイアウトの名前などを指定してOKをクリック。
レイアウトファイルのアップロードを要求されるので先ほど修正したレイアウトファイルを指定します。
レイアウトのインポートが完了しました。
では実際にレイアウトを切り替えてみましょう。発注伝票画面に戻り印刷ボタンをクリックしてレポートの実行要求画面を表示します。Report Layoutには既定のレイアウトが表示されています。の右側の”…”をクリックします。
するとレポートレイアウトの一覧画面が開きます。ここで先ほど修正したレイアウトを指定します。
するとReport Layoutの値が切り替わりました。Send toをクリックしてレポートを出力してみます。
変更したレイアウトで出力されます。By from Addressという見出しが追加され、色もついています。
v20までだと、印刷時にレイアウトは指定できず、別のレイアウトで出力するにはReport Layout Selection画面でレイアウトを指定して規定値にセットする必要がありました。そうすると他のユーザーのレイアウトも切り替わってしまうため、自由に変更しづらい状況でした。(なので、カスタマイズで異なるレポートを呼び出したりしてました。)今回の変更でレポート出力の実行者が都度レイアウトを変更できるのでかなり自由度が高くなったと思います。特定の得意先だけ少し異なるレイアウトで出力したいという場合に使えると思います。(出力項目やレイアウトが大幅に異なる場合はレポート自体を開発したほうがよいでしょう。)
皆さんも試してみて下さい。