【A1】Delphiテクニカルセッション「Delphiによる基幹系システム連携の具体例～SAPシステムとの枯れた連携手法」
株式会社エンハンサー
代表取締役 藤田 和宏

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

はじめに2本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

はじめに
本セッションは…
• テクニカルセッションです• 資料作成時点の当社事例に基づいています• 課題解決の最適解とは限りません

3

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

はじめに
本セッションは…
• 基幹系システムと連携する「お客様メリット」は何か？
• 基幹系システムと連携するための「説得のTopic」• 当社事例 なぜ連携したのか、どのように連携したのか• 実装方法 SAP社製ERPと連携するコード解説※十分に「枯れた」、容易に連携を実現する方法の解説です。

• Q&Aから構成されています。

4

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

自己紹介会社
••
•

名前
URL
主な事業

株式会社エンハンサー
http://www.enhancer.co.jp
DWHパッケージ導入支援
アミューズメント業界向けパッケージ開発

••
•
•

名前
役職
EmailFacebook

藤田 和宏
代表取締役
kazuhiro.fujita@enhancer.co.jp
https://www.facebook.com/kazuhiro.fujita.92

•

略歴

1994年

私

1996年
1997年
2002年
2006年
2010年

5

パソコン通信にはまる
Turbo Pascalに出会い初の業務アプリ開発
Delphiに出会い、開発の容易さに驚愕
C++Builderに出会い、さらに驚愕
DWH導入支援
自社パッケージリリース
法人成り

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

基幹系システムと連携する「お客様メリット」は何か？

6

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

お客様課題システムの乱立• 社内データセンタ• ホスティング
• マネージドサービス• クラウドサービス• B2Bコラボレーション

7

プロセスの分断• 既存システムとの限定的な統合• 不安定なネットワー
ク

低速なバッチ同期• データに一貫性のない状態が長時間続く• 入力したデータの反映が翌日になるなど、長時間を要する

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

機能の陳腐化• クラウド非対応• モバイル非対応

システム/プロセスを統合する
業務的観点• 電子商取引• マーケティング• セールス• カスタマー・サービス
• 財務
• 人事
• サプライチェーン
• 調達
8

設備的観点
• クラウドとクラウドの連携• クラウドとグラウンドの連携

将来の統合範囲はさらに増える

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

スピードを実現する

イベント駆動データHUB
9• 基幹系システムでのデータ発生と連動• 基幹業務システムからの要求に合わせたタイミングでのデータの生成• 各種データへのアクセスのI/F統一• 共通機能化によるデータの均質化

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

新技術への対応
DataSnap• REST• JSON
どんどん拡大10FireMonkey• Windows• MAC• Android• iPhone• iPad

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

差別化と統合• 「違いを作って、繋げる」
出典 楠木健「ストーリーとしての競争戦略」東洋経済新報社、2010年• アプリケーション開発の迅速さが競争を左右する• 他社に先駆け、他社を追い越し

11

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

ペース・レイヤリング
ベスト・オブSAP戦略におけるペース・レイヤの例•••

記録システム：中核的なトランザクション処理をサポートし、企業の重要なマスタ・データを管理する、成熟度の高いパッケージ型アプリケーションや自社製のレガシー・システム。プロセスが既に確立され、ほとんどの企業で共通しているため、変更のペースが遅く、また法規制上の要件が適用される場合が多い。
差別化システム：企業固有のプロセスや業界固有の機能を実現するアプリケーション。ライフサイクルは中程度 (1～3年) であるが、頻繁に再構成して、ビジネス・プラクティスや顧客要件の変化に対応する必要がある。
革新システム：新たなビジネス要件や機会に対処するために特別に構築される新規アプリケーション。一般的にプロジェクトのライフサイクルは短く (最大12カ月)、部門単位または社外のリソースと消費者向けテクノロジが使用される。

出典：ガートナー 「SAPで成功するためのペース・レイヤリング・アプローチ」C. Hardcastle, D. Prior、2013年12月13日

12

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

ペース・レイヤリング
FireMonkeyで開発

DataSnapで繋ぐパッケージの活用

13

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

基幹系システムと連携するための「説得のTopic」

14

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

記録的システムには枯れた技術を普段から使用している接続方法（例えばRFC接続やCORBA等）
管理者がイメージしやすい技術

既存の管理資料にそのまま載せられる
15

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

差別化/革新システムは新たな標準をREST/JSON
新技術の取り入れ（マルチデバイス対応等）

16

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

システム全体への影響
HUBの出現プロセス見直しのきっかけ

17

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

既存システムへの影響
既存基幹システムへのAddOn開発削減
通常のユーザへの権限付与のみで管理可能

18

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

当社事例

19

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

なぜ連携したのか• 基幹系システムの刷新（会計・購買）• 基幹業務のシステム化要望• 属人化した業務• EXCEL職人芸からの脱却• ワークフローの導入• 他システムでの業務プロセスとの接続

20

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

プロセス抜粋

21

稼働状況
分析

購入機器
選定

購買発注

入庫

廃棄撤去

移動設置

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

システム全体像
RFC接続
SAP ERP

店舗

購買伝票
各種マスタ

SAP BW

HUB

業務システム
本部

稼動統計収集サーバ
22

FILE

DataSnap

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

システム全体像
データ抽出/
書き込み
SAP ERP•購買伝票抽出•各種マスタ抽出

SAP BW•統合マスタ抽出•トランザクションデータ
書き込み

稼働統計
•稼働データ抽出

23

データ整形

業務ロジッ
ク適用

SAP固有の内部管
理用の名称を一般的な名称に書き換え（数量単位など）

データを基に指標などを計算

数値のスケーリン
グを一般的な内容に書き換え複数のデータを意
味のある画面のパーツ単位でまとめる

システム固有のマスタを統合マスタに書き換え入力されたデータを、処理可能な形に加工

I/F定義
プレゼンテーションで使用可能な機能を定義

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

プレゼン
テーション
ロジックは持たない

画面のコントロー
ルに徹する

実装概要
• ERP,BW <-> HUB• RFC接続による連携• HUB側からのリクエストにより、最新の各種マスタ、購買伝票等を返す• BWに対し、機器の設置状況を渡す

24

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

実装概要• HUB <-> 業務システム• DataSnapによる連携• 業務システム側からのリクエストにより、最新の各種マスタ、購買伝票等を返す• HUBに対し、機器の設置状況を渡す

25

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

実装解説

26

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

SAP社製ERPシステムの概要
SAP ERPはERP市場においてトップシェアを誇るERPパッケージです
財務会計、販売管理、購買管理、在庫管理、生産管理、品質管理、人事管理等のコアアプリケーションから構成されています
BI、モバイルなど、幅広い領域のソリューションに対応しています

27

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

SAP社製ERPシステムの概要• 提供されているインターフェース• RFC (Remote Function Call)• IDoc (Intermediate Document)• BAPI (Business API)
その他、バッチインプット、SOAP等、多様なインタフェースあり
今回はRFCでERPに接続し、ERP上の機能を実行します28

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

実装方法 SAP側設定• 設定のポイント• ポート• 権限システムがUnicode / Non Unicodeのどちらか確認してください。後続の作業で必要となります

29

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

実装方法 開発環境設定• 設定のポイント

30• SAP Front End
インストール時の注意点• Unicode/Non Unicodeの選択• Rad Studioの設定

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

実装方法 使用するクラス等
TSAPLogonControl• ERPやCRM、BW等にログオンするオブジェクト
Connection• ERPやCRM、BW等との接続状況とパラメータを保持するオブジェクト• 接続後はすべてのパラメータが読み取り専用変更されます
TSAPFunctions• ERPやCRM、BW等のリモート実行可能汎用モジュールを実行します31

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 ログオン/ログオフ
usesvarbeginend;｛
ソースコードは当日公開｝
32

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 サイレントログオン
usesvarbeginend;｛
ソースコードは当日公開｝
33

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 汎用モジュール一覧取得
汎用モジュール: RFC_FUNCTION_SEARCH

34

IMPORT

TABLE• FUNCNAME• GROUPNAME• LANGUAGE• FUNCTIONS

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 汎用モジュール一覧取得
uses
varbeginend;｛
ソースコードは当日公開｝
35

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 データ抽出
汎用モジュール: RFC_READ_TABLEIMPORTTABLE• QUERY_TABLE• OPTIONS• FIELDS• DATA• DELIMITER• NO_DATA• ROWSKIPS• ROWCOUNT

36

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 データ抽出
usesvarbeginend;｛
ソースコードは当日公開｝
37

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 BWデータロード
汎用モジュール: RSPC_API_CHAIN_START
IMPORTEXPORT• I_CHAIN• I_T_VARIABLES• E_LOGID• I_SYNCHRONOUS• I_SIMULATE• I_NOPLAN

38

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 BWデータロード
uses
var
beginend;｛
ソースコードは当日公開｝
39

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 BWデータロードステータス
汎用モジュール: RSPC_API_CHAIN_GET_STATUS

40

IMPORTEXPORT• I_CHAIN• I_LOGID• E_STATUS

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

コード解説 BWデータロードステータス
usesvarbeginend;｛
ソースコードは当日公開｝
41

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

６42

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

まとめRAD Studioを使うと…
•

基幹系システムと連携––––•

SAP専門の技術者がいなくても、ある程度対応できます
今回紹介した接続以外の方法にも対応できます
管理者の慣れ親しんだ技術での接続方法です
既存の管理資料で管理することが可能です

標準的なI/Fによる他システム連携も容易です– 高価なETLツールを使用しなくても、何とかなります。

•マルチデバイス対応も容易です– デバイスごとに全て開発し直す手間がかかりません。
– しかもネイティブコードで動きます。

•

1つの言語で開発できます– 複数の言語に精通した開発要員は不要です。

43

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

Q＆A

44

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。

本セッションについてのご質問、システム連携のご相談等ございましたら、お気軽にお問い合わせください。

45

本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。