SAPには標準テーブルとアドオンテーブルが存在しており、標準テーブルを始めとする標準機能は基本的に触ってはいけないと以前学んだ。
今回はどういった方法で更新するのかについて概要を学び、SE16Nに焦点を当てて纏めたいと思う。
標準テーブルとアドオンテーブル
標準テーブル
標準テーブルとは、SAPに元々備わっているテーブルのことを指す。
標準機能に生じた問題は、S AP標準機能自体に問題があることを証明し、SAP社に担保してもらう必要がある。そのためベンダー側で変更を加えてしまうと、問題が発生した場合に原因があると見なされ、SAP社から不具合対応を断られてしまう。
アドオンテーブル
アドオンテーブルとは、SAPのインストール後に標準テーブルでは足りない部分や顧客側からの要望などに応じて適宜追加を行ったテーブルのことを指す。
標準テーブルと異なり、問題が生じた際の責任はベンダー側が負うことになる。
書き込みと読み込み
書き込み
標準テーブルとアドオンテーブルによって方法が異なる。前述の通り、自由に更新が出来ない標準テーブルとできるアドオンテーブルという大きな違いが生じるためである。
標準テーブルは主に
・標準プログラム…SAPインストール時点で存在しているもの
・標準API…標準データを作成する際に使用されるプログラムの1種
・更新ビュー(標準)…テーブルデータを更新できる簡易的な画面
これらで更新が可能である。標準機能のものは標準機能に沿った専用の更新方法が存在し、そのやり方でしか更新してはいけない。
対してアドオンテーブルは
どのようなメンテナンスの手段を取っても良い。
主な更新手段は
・アドオンプログラムのSQL命令
…追加開発のプログラムやデータベースを操作するための言語を含んだプログラム
・更新ビュー(アドオン)…テーブルデータを更新できる簡易的な画面
・SE16N…データ照会だけでなく、テーブルの更新も可能なトランザクションコード
などが挙げられる。
読み込み
書き込みは直接データの内容に関わってくるため、標準なのかアドオンなのかを注意深く考える必要があるが、読み込みはそうではない。
主な読み込み方法としては、1件1件見るトランザクションコードや一覧で見るトランザクションコードがある。または、標準機能が使いづらいため、アドオンプログラムで読み込みの機能を追加した、というケースもある。
SE16とSE16N
まずこの2つはテーブルのデータを見る、という意味では大差ないように見えるが、機能の構造が大きく異なる。
SE16
SE16は3画面で構成されている。
①第一画面にて見たいテーブルの項目を入力する
②「テーブルごとのデータを照会するプログラム」を作るプログラムが作動する
③テーブルごとのデータを照会するプログラムが作動する
④指定したテーブルにアクセスする
SE16N
対してSE16Nの構成は、「何で構成されているかというデータ」を格納しているテーブルと第一画面で入力したデータとのやり取りを行い、そこから指定のテーブルにアクセスできるような形となっている。
SE16の構成では、「『テーブルごとにそのデータを見るプログラム』を作るプログラム」を作る必要があり、処理の効率化の観点から後にSE16Nが開発された。
またその他に、SE16との違いとしてテーブルデータを書き換えることができるという点が挙げられる。これは、標準テーブルであっても不正に書き換えることができてしまう。ただし、履歴が残るため、誰がいつ、どのような内容で変更を行ったかなどはすぐに分かるようになっている。
まとめ
勉強会では実際にSAPを触りながらSE16Nにて書き換えのやり方を学んだが、思っていた以上に簡単に書き換えができてしまうものだと感じた。知識がない状態だと、手軽に変更できると思ってしまいそうなほどであり、改めて注意力が重要だと痛感した。
若手のうちは中々標準機能を更新することはなさそうではあるが、どういった変更方法を用いるのか、変更してしまった場合どういった問題が生じるのかという点についてはしっかり頭の中に置いておくべきだと感じた。
また一見SE16とSE16Nの違いが分からず、なぜ同じようなトランザクションコードを作ったのか疑問を抱いていたが、見た目だけでなく、テーブルへのアクセスの手法など構造自体が大きく異なっているというシステム的な面を学ぶことができてスッキリした。
以前、クエリの作成ではSE16を使用していたが、SE16Nの特徴や利便性を学んだところで、状況に応じて活用できるようにしていきたいと思う。
コメント