皆様、こんにちは!
今回もBusiness Centralのレポートについてお話したいと思います。
昔のブログではレポートを実行する時に用途によって選択できるようにカスタマイズしてみました。
詳しい内容は下記をご参考ください。
Dynamics 365 Business Centralでアクション (リボン)からレポートを実行する時にレポートを選択できる方法 – How to select print report
前回のイメージ:
![](https://yzhums.com/wp-content/uploads/2020/08/image-14-1024x358.png)
![](https://yzhums.com/wp-content/uploads/2020/08/image-15-1024x403.png)
今回は違うやり方をしてみましょう。
たとえば、Sales Headerには、あるフィールドを追加して、このフィールドの内容に応じて、印刷するレポートを決めます。
それでは、始めましょう。
まず利用可能なイベントを探します。
table 77 “Report Selections”
OnBeforePrintWithGUIYesNo
![](https://yzhums.com/wp-content/uploads/2020/09/image-427.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-428.png)
Sales Headerにフィールドを追加します。
ReportType (Option):” “,”Sales – Quote (204)”,”Order Confirmation (205)”,”Standard Sales-Quote (1304)”,”Standard Sales-Order Conf. (1305)”
![](https://yzhums.com/wp-content/uploads/2020/09/image-429.png)
Sales Orderページに追加されたフィールドを表示させます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-430.png)
念のため、画面上で確認してみます。
フィールドが追加完了。
![](https://yzhums.com/wp-content/uploads/2020/09/image-431.png)
次に、ロジックの方です。
上記のイベントを使うためにCodeunitを新規作成します。
そしてレポートを実行する前に、まずそれがSales Orderで実行されるかどうかを判断します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-432.png)
追加されたフィールドによって実行するレポートを指定します。
![](https://yzhums.com/wp-content/uploads/2020/09/image-433.png)
カスタマイズが完了しました。
Publishして確認してみます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-434-1024x302.png)
1. Blank
![](https://yzhums.com/wp-content/uploads/2020/09/image-435.png)
REPORT SELECTION – SALESで設定されたレポートが実行されます。
![](https://yzhums.com/wp-content/uploads/2020/09/image-436.png)
2. Sales – Quote (204)
![](https://yzhums.com/wp-content/uploads/2020/09/image-437.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-438.png)
3.Order Confirmation (205)
![](https://yzhums.com/wp-content/uploads/2020/09/image-439.png)
4.Standard Sales-Quote (1304)
![](https://yzhums.com/wp-content/uploads/2020/09/image-440.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-441-1024x457.png)
5.Standard Sales-Order Conf. (1305)
![](https://yzhums.com/wp-content/uploads/2020/09/image-442.png)
![](https://yzhums.com/wp-content/uploads/2020/09/image-443-1024x462.png)
OK、無事終了しました。
今回のやり方は、前回のやり方で実現できた機能と似ていますが、今回はもう少し柔軟性があると思います。 ご参考までに。
追記:
ソースコードについてGithubをご参照ください。
https://github.com/yzhums/Select-Print-Report
以上
お読みいただきありがとうございました。
コメント