玉ちゃんの文科系IT入門 > ERP(SAP R/3) > スペクトルマン VS Dr.Sum(6)

スペクトルマン VS Dr.Sum(6)

SAPクエリの開発は粛々と進んだ。

要するに、

受注、出荷、請求、購買、入庫

この5つを作ればいい。

だが、この5つが、他のクエリに較べて、かなり難易度が高いのに気づいたのは、引き受けた後だった。

なぜ、難易度が高いか?

・複数のテーブルから作成する。

・日々差分更新が発生する。

この2点に早く気づいていれば、わたしも、他のメンバーと同じように、外注さんを使っていただろうに。


複数のテーブルからSAPクエリを作成するのは、わかっていたはず。

しかし、差分が本当に取得できるか?という点で苦労したのだ。

例えば、受注のクエリだと、

VBAK(受注伝票ヘッダ)とVBAP(受注伝票明細)の2つが主要なテーブルだ。

この中に無い項目がDWHで必要なのである。

例えば、支払条件。

これは、VBAKでもVBAPでもなく、VBKD(ビジネスデータ)というテーブルに入っている。

ビジネスデータVBKDは、差分更新の取り方が単純ではなく、CDPOSという変更文書のテーブルから取得しなければいけない。

また、受注伝票は、操作上、削除することが出来る。


請求伝票は、起票で売上があがり、取消しは別番号で新たに作られて、反対仕訳が起きるだけなのだが、受注伝票の場合、物理削除ができてしまう。


そうすると、過去に取得したデータが後日、削除されたという情報をDWHにも反映させなければならない。

昔、BW導入当時、SAPさんから来たコンサルが

「受注伝票の削除はやめさせられませんかね?」

・・・と、わたしにしつこく聞いていたのを思い出す。

変なことを言うコンサルだなあと思っていた。

機能として、受注伝票が削除できる以上、どんなにこちらから、

「受注伝票を削除してはダメ。拒否理由に取引中止を選んで下さい。」

と言ったって、制御できるものではない。

思えば、BWでもこの差分管理がやっかいな課題だったのだろうと、推測する。