SAP ソリューションと
Microsoft .NET テクノロジー
マイクロソフト株式会社
SAP/Microsoft コンピテンスセンター
Agenda
マイクロソフトの.NET戦略
SAP をとりまく環境
SAP を拡張するマイクロソフトテクノロジー
COM アプリケーションとの連携
DCOM Connector
レガシーアプリケーションとの連携
BizTalk Server 2004
.NET アプリケーションとの連携
.NET Connector
Visual Studio .NET
SAP を支える製品群
まとめ
ビジネスの変化を加速する技術革新
コンピューティング パワー
1年半ごとに倍速化する CPU 能力
価格性能比の大幅な向上
ソフトウェア
デジタルデータの普及
データの蓄積と交換方式の標準化
スマートデバイス
小型情報端末の多様化
ハンドヘルド PC、PDA、携帯電話
ネットワーク
低コストで高速なネットワーク接続
情報の活用基盤としてのインターネット
次世代へのビジョン – Microsoft .NET
プラットフォーム: インターネット
ソフトウェア: .NET
サービスとしてのソフトウェア
XML への対応
スマートデバイスのサポート
利用者の新しい体験
Vision:
Empower people through great software
any time, any place, and on any device
Internet を介したアプリケーション統合
関連会社 / パートナー
在庫管理
社内システム Internet
配送会社
販売管理 物流管理
決済
コマースサイト
Internet
与信管理
取引銀行
アプリケーション
顧客管理
クレジット
CRM Internet
商品の提供
ユーザー認証
資材調達
製造 ディレクトリ
XML の重要性 .NET 戦略の中心
XML: eXtensible Markup Language
構造化文書、データ記述のための言語
タグの拡張が可能
より専門的な利用目的への対応
企業情報システムを変革するテクノロジー
XML のもたらすメリット
汎用的なデータフォーマット
容易なデータ形式の変換 / XSLT
広範なシステム統合の実現
XML が実現するアプリケーション統合
物流システム サプライヤー A
サプライヤー B
サプライヤー C
UDDI
Internet
Internet
ビジネス 在庫管理
アプリケーション
受発注処理
Universal Description
Discovery and Integration (UDDI)
Web Service Description Language (WSDL)
Simple Object Access Protocol (SOAP)
アプリケーション開発者
eXtensible Markup Language (XML)
従来のアプリケーション開発
アプリケーション / ソリューションの開発は
OS、ミドルウェア、開発言語 等に強く依存
プラットフォーム間の互換性は考慮されていない
ソリューション
VB, VC++, VJ++ Java
アプリケーション
ASP, ISAP JSP, Servlet
開発言語
コンポーネント COM / DCOM J2EE / CORBA
ミドルウェア COM+
OS/ハードウェア Windows UNIX
新しいアプリケーション開発
XML テクノロジーが「接着剤」として機能
アーキテクチャを超えたアプリケーション統合の実現
ソリューション ソリューション
アプリケーション アプリケーション
Microsoft .NET
(SOAP, WSDL, UDDI) サービス サービス サービス サービス
サービス
サービス
J2EE /
COM / DCOM
CORBA
COM+
Windows UNIX
SAP をとりまく環境
ビジネスプロセスの中で non-SAP システムが存在
するという現実
SAP で代替できないでいるレガシーシステム
システムの規模、要件の独自性
社外のシステム
システムの中身まで強制できない
いかにして社内外の non-SAP システムと効率よく
連携するかが成功の鍵
システムを繋ぐための最適なテクノロジーが必要
・サーバ
ポータル・
ケーション
Webアプリ
エクスチェンジ・
SAP とは?
インフラストラクチャ
インフラストラクチャ
mySAP CRM
mySAP SRM
mySAP SCM
mySAP PLM
mySAP ERP
Legacy
3rd Party
External
SAP 3つのベクトル
COM Legacy
mySAP CRM
mySAP SRM
mySAP SCM
mySAP PLM
mySAP
mySAP ERP
.NET
COM アプリケーションとの連携
Visual
Studio SAP の機能
アプリケーション BAPI をラップする を外部から
COM コンポーネン 利用する
トを容易に作成可能 Object ためのAPI
builder を
使ってソース
コードを生成
COM BAPI
apps
Office DCOM RFC SAP
アプリケーション DCOM R/3
Connector
SAP のBAPIを
社内(イントラネット)の
その他 COM アプリケーションに
COM
対して公開
ベース製品
連携構築フロー
DCOM Connector のセットアップ
接続する SAP を登録
必要な BAPI をラップする COM コンポーネントを
生成、COM+ パッケージとしてサーバーに登録
DCOM Connector Object Builder を利用
生成されたプログラムをそのままビルド(修正不要)
クライアントへのプロキシの配布
Windows Installer パッケージ
クライアント側でのプログラミング
配布されたプロキシをインストールし参照設定
DCOM Connector の役割
SAP との RFC コネクションのプーリング
リソースの効率活用
ABAP データ型と OLE データ型の双方向変換
RFC テーブルと OLEDB ローセットとの双方向変換
ADO Recordset を用いたテーブルハンドリング
tRFC, qRFC のサポート
信頼性のある通信
セキュリティチェック&アクセスコントロール
COM アプリと連携するメリット
コンポーネント同士の密結合
インスタンス作成、引数セット、メソッド呼出、戻り値取得
広範囲にわたる COM ベースアプリケーション
Visual Studio、Office、Backoffice、
.NET Enterprise Servers…
SAP のユーザーインターフェース、ビジネス
ロジックを容易に拡張、カスタマイズ
より使いやすい GUI
SAP でカバーできないビジネスロジックを容易に追加
開発者に ABAP 言語の知識は不要
高い開発生産性
レガシーアプリケーションとの連携
アプリケーション Adapter の
標準機能
Windows XM
L 開発不要 R/3がもつ
外部ファイル
形式
BizTalk Adapter
For SAP
Web その他
BizTalk DCO COM
iDo
c iDoc
アプリケーション COM
Server M アプリ
SMTP ベース製品
2002 MSM
RFC SAP
Unix DCOM
X.12 Windows
Q
Connector R/3
SAP の iDoc を
社内外と
アプリケーション
TXT やりとりする HUB
Mainframe
連携構築フロー
SAP での iDoc 設定
DCOM Connector のセットアップ
BizTalk 上 SAP サイド&宛先システムサイド定義
スキーマ
通信プロトコル
HTTP(S)、SMTP、ファイル、MSMQ、DCOM
ファイル形式
XML、フラット、CSV、EDI
宛先システム側でのゲートウェイシステムの作成
外部とのデータの送受信
バックエンドシステムとのやりとり
BizTalk Server の役割
BizTalk BizTalk
Orchestration Services Messaging Services
取引会社A
データ送信前, 受信後の データの変換, 送信,
ビジネスプロセスを処理 受信を処理
プロセスフローの データの変換
定義/実行 フォーマットチェック
処理の分岐,結合, EnCode, DeCode
繰り返し, 待ち合わせ 電子署名
COM コンポーネントの 暗号化
呼び出し データ送信 / 受信
MSMQ 連携 取引先管理
メール連携 外部アプリケーション
トランザクション処理 連携
フロー定義用ツール XML 関連ツール
既存
アプリケーション
BizTalk Server 取引会社B
SQL Server
Windows 2000
BizTalk Server を利用するメリット
非コンポーネント同士の疎結合
データの送信→受信→送信・・・
データの送受信以外に双方のシステム上で
Export, Import 作業が必要となるが、その代わり
連携のためのハードルは非常に低い
既存のメインフレーム、オフコン、DOS アプリケーション
もちろん COM or .NET アプリケーションとも連携
BizTalk Adapter for SAP の存在
iDoc スキーマの生成機能
SAP からの iDoc 受信機能(MQ)
SAP への iDoc 送信機能(COM)
これまで必要だった開発工数を大幅に削減
SOAP 対応アプリケーションとの連携
.NET apps
.NET
Framework BAPI をラップする
XML Web サービス
Windows を容易に作成可能
.NET apps XML Web BAPI
Service
.NET SOAP RFC SAP
Framework .NET
R/3
Linux(予定) Web Connector
SAP の BAPI を
SOAP対応 社外(インターネット)の
apps SOAP 対応アプリ
J2EE ケーションに対して公開
Unix
連携構築フロー
.NET Connector のセットアップ
必要な BAPI をラップする .NET コンポーネントを
生成、XML Web サービスを作成してインターネット
上に公開
Visual Studio .NET があれば SOAP などの知識は不要
非常に単純な作業(ノープログラミング)
(UDDI に登録)
クライアント側でのプログラミング
目的の XML Web サービスが存在する URL を入力して
参照設定
XML Web サービスを公開するメリット
Web を介してコンポーネントが(再)利用される
SOAP, XML Web サービスは業界標準テクノロジー
W3C による標準化
SAP を利用した ASP ビジネスがより現実的に
ポ 自社コンポーネント
ー
タ
ル
ソ
リ
XML
Web Web SAP
Service R/3
ュ
ー
シ
ョ 自社コンポーネント
サービス ン R/3サービス
利用者 提供者
ポータル事業者
Visual Studio .NET を利用するメリット
XML Web サービスの実行、作成が簡単
COM と同じ要領、SOAP, DOM など知らなくても十分
XML Web
サービス実行の
コードはたった1行 XML Web サービス
のありかを登録
(Web 参照)
.NET アプリケーションのメリット
開発言語 / プラットフォームに依存しない実行環境
ソース EXE / DLL
コード IL(中間言語)
コンパイラ
& メタデータ
クラスライブラリ クラスローダー
IL(中間言語)
& メタデータ
JIT コンパイラ
実行 ネイティブコード
Common Language Runtime
.NET アプリケーションのメリット
Write anyway (多数の開発言語)
VB .NET, VC# .NET, VC++ .NET, Jscript .NET
APL, Eiffel, COBOL, PASCAL, Oberon, Perl, Python,
SmallTalk, Haskell, Scheme, ML, Objective ,Mercury
Visual J# .NET
Run smoothly (実行環境の改善)
脱レジストリ、JITコンパイラ、ガーベージコレクタ
Run anywhere (マルチプラットフォーム)
現状:Win32(9x含む), Pocket PC, FreeBSD
今後:Win64, Unix, Linux, MACなど
SAP を支える Microsoft 製品群
Windows/SQL Server は堅牢なプラットフォーム
Office はクライアントのインターフェイス
MSDE は CRM のクライアントストレージ
Windows-CE はモバイルデバイス
Biztalk Server Adapter for SAP は EAI アダプタ
.NET myService は、SAP ユーザのセキュリティ統合
Visual Studio .NET は開発ツール
Terminal サービスはクライアントを集中管理
他の SAP 製品として
Exchange Connector、DCOM Connector、.NET Connector
.NET Passport による統合セキュリティ
より広範な連携の実現 - Federation(連盟)
非 Windows 環境との統合を含めた実装
Kerberos v5 / Cross Domain ベース
シングルサインオンの実現
Purchaser Customer
認証 .NET 認証 Company A Company B
ネットワーク A Passport ネットワーク B
Internet
リソース
社員 ゲスト
企業 A 企業 B 企業 C 企業 D
利用者
まとめ
マイクロソフトの次世代製品戦略: Microsoft .NET
XML ベースのシステム連携
インターネット&マルチプラットフォーム
業界標準の迅速なサポート、積極的な仕様の提案
XML, SOAP, XML Web Service, UDDI …
SAP ソリューションとシームレスに連携する
様々はデバイスから SAP ソリューションへ接続
SAP to SAP、SAP to non-SAP のシステムを柔軟に連携
XML Web サービスとして SAP ソリューションを利用
マイクロソフトの全ての製品は SAP 製品と連携
Windows Server 2003
Windows Server System
.NET My Services …
DCOM Connector の利用にあたって
R/3 4.5a 以降 CD-ROM 同梱の RFC SDK よりセットアップ
tRFC, qRFC は 4.6d からサポート
参考URL
Integrating Microsoft Visual Studio with R/3 system
http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/dndcom/html/sapintegration.asp
SAP DCOM Connector
http://www.intelligenterp.com/feature/archive/homann.shtml
推奨書籍
Professional Visual Basic SAP R/3 Programming
http://www.amazon.com/exec/obidos/ASIN/B000062Y0V/qid=10227
57342/sr=1-2/ref=sr_1_2/104-8611191-4716700
(WroxPress e-Book)
BizTalk Server の利用にあたって
参考URL
BizTalk Home
http://www.microsoft.com/japan/biztalkserver/default.asp
BizTalk用アダプタ(BizTalk Adapter for SAP含む)
http://www.microsoft.com/japan/biztalkserver/evaluation/adapters/adapterslis
t.asp
実践EAI(入門)
http://www.microsoft.com/japan/biztalkserver/using/eai/default.asp
BizTalk120日間評価版の取り寄せ
http://www.microsoft.com/japan/servers/eval/biztalk.asp
導入事例
http://www.microsoft.com/japan/showcase/products/biztalk.asp
推奨書籍
プロフェッショナル BizTalk (Wroxシリーズ、インプレス)
BizTalk Server 2000 スタディセット(MS Press、アスキー出版局)
Visual Studio .NET の利用にあたって
参考URL
Visual Studio .NET Home
http://www.microsoft.com/japan/msdn/vstudio/default.asp
MSDN Online
http://www.microsoft.com/japan/msdn/default.asp
Webサービスツールキット
http://www.microsoft.com/japan/office/developer/webservices/ (Office XP)
http://www.microsoft.com/japan/msdn/sqlserver/downloads/sql2kwstk.asp (SQL 2000)
http://www.microsoft.com/japan/biztalkserver/downloads/toolkit/ (BizTalk 2002)
Insider .NET
http://www.atmarkit.co.jp/fdotnet/index.html
JTB XML Webサービス早期開発プロジェクト
http://net.est.co.jp/jtb/about/
Unisys XML Webサービス実験室
http://www.unisys.co.jp/net/
Go to MS/SAP Solution Site !!
http://www.microsoft.com/japan/business/sap/default.mspx
backup
R/3 DCOM Connector Object Builder
③作成する
①BAPI COMのメソッド
一覧出力 を出力
④作成した
DLLをCOM+
②DLLの作成 へ登録
COM+ コンポーネントの登録イメージ
COM+の登録された
コンポーネント一覧
コンポーネントサービス~COM+アプリケーション~
BAPI の使用例 - Visual Basicでの呼出
Private oBapiControl As Object “オブジェクト変数の定義”
Private oConnection As Object
Private otabPersonalData As Object
Dim oEmployee As Object
Dim oReturn As Object
:
Set oBapiControl = CreateObject(“SAP.BAPI.1”) “BAPI 制御オブジェクトの登録”
:
Set oEmployee = oBapiControl.GetSAPObject(“Employee”) “R/3 ビジネスオブジェクトの登録”
:
Set oConnection = oBapiControl.Connection “R/3へのログオン
Set oHelpValues = oBapiControl.GetSAPObject("Helpvalues")
:
oEmployee.GetList Return:=oReturn, LastName:=Trim$(tbLastName.Text), _
PersonalData:=otabPersonalData, _ “BAPIの呼出し
OrgAssignment:=otabOrgAssignment
: “結果データの格納
SAPTableView1.Columns(1).TableIndex = otabPersonalData.Columns("PERNO").Index
SAPTableView1.Columns(1).Header = "Pers. No.
SAPTableView1.Columns(2).TableIndex = otabPersonalData.Columns("FIRSTNAME").Index:
XML Webサービス実行の
コードはたったこれだけ
(SOAP用コーディング不要) XML Webサービス
のありかを登録
(Web参照)
SAP .NET Connector アーキテクチャ
開 Microsoft .NET mySAP Tech
発 Visual Studio.NET Proxy
Class BOR
時 VB C# VC++ … Generator DDIC
.NET RFC Layer
Application Web サービス Connector
実 Runtime
行 SOAP Layer
時 .NET
Connector SAP .NET
Component Connector
SAP Server
Common Language Runtime 6.x 以上
or non-SAP
The SAP Add-In for Visual Studio .NET
Build .NET Applications
for mySAP using Visual
Studio.NET
.NET Web Services
ASP.NET Web Applications
WinForms Applications
SAP AddIn Visual Studio
seamlessly integrates with Visual
Studio.NET
Interactively add SAP BAPIs
into any .NET application from
within the IDE
The SAP Add-In for Visual Studio .NET