SAP ERPはビジネス用のシステムなので、請求書や納品書、製造指図書など帳票を出力したいというニーズは必ず出てきます。
その時に取り得る選択肢としていくつかあるので、メモ程度に挙げておこうかなと思います。
WRITEレポートで出力
一番原始的で簡易な方法がABAPのレポートプログラム内でWRITE命令を使って帳票を作成し、スプール出力されたものを出力するという方法です。
印刷する場合はスプールから印刷依頼を投げれば良いですし、PDFにしたい場合はPDFに変換する用の標準プログラムもあったはずなので、それを組み合わせたら可能です。
実装としてはABAPを書くだけなので、シンプルで簡単なのですが、要件に合わせて複雑なことをしようとすると出来なかったり、PDFに変換する処理が重く数が多い場合には使いにくかったりするのが難点です。
SAP Scriptを使って出力
SAPが標準で提供している帳票作成ツールがSAP Scriptです。
『SE71』というトランザクションコードで呼び出される機能を使ってフォームを作って、それを通して帳票を出力するという形です。
昔はSAP標準で帳票を出力しようと思ったら、SAP Scriptを使う形だったのですが、実装がけっこう面倒で変更等もやりにくいというのがありました。SAP Scriptの後継として出てきたのが、次のスマートフォームというツールです。
スマートフォームを使って出力
『SMARTFORMS』というトランザクションからフォーム作成機能を呼び出して実装するのですが、SAP Script同様に帳票のフォーマットを作成して、ABAPからその帳票を呼び出すという形で印刷物やPDFを出力します。
SAP Scriptに比べると分かりやすくなっているので、作成・修正しやすいですし、SAP Scriptよりスマートフォームの方を知っている人が多いので、新規で作成する場合はスマートフォームを選択するのが良いと思います。
SVF等の外部ツールと連携して出力
最後4つ目はSAP内で帳票を作るのではなく、外部ツールにデータを連携して帳票は外部で作成するという方法です。
これに関しては帳票自体を外部ツールで作成するので、それに合わせてSAP側からデータを受け渡す形です。
今後、S/4 HANAが前提となっていき、Fioriの利用が当たり前になってきたらまた新たな手法も出てくるのだと思いますが、GUIベースのSAP ERPの場合は、主に今回の4種類のいずれかで対応する形になるかと思います。
コメント