参加
最後オンライン
最近の投稿
NetWeaverに投稿されました 続きを読む

NetWeaverとは

NetWeaverとは、SAP社のソリューションであり、従来のABAP技術を活かしながら、J2EE技術を土台として全面的に取り込み、人・情報・ビジネスを統合する「次世代統合プラットホーム」として、SAP社からERPを含めた全てのビジネススイートのアプリケーション基盤という位置づけをしております。

NetWeave ABAPは、SAP ERP Central Component(SAP ECC、従来のR/3部分)の稼働基盤であり、R/3までの時代ではBasis(ベーシス)と呼ばれてきました。

NetWeaverの利用タイプ

NetWeaver Platformは、完全にコンポーネントベースのアーキテクチャ構成を実現できています。NetWeaver Platformを構成する機能は、利用タイプとして分けており、インストール時に必要に応じてインストール単位として選ぶことができます。

以下の表でバージョン毎の製品名およびその利用タイプを説明します。あくまでも筆者の認識で整理した内容ですので、間違いがあれば、有識者達にご指摘していただきたいです。

バージョン製品名利用タイプ
AsABAPAsJAVABWCEDIEPCEPMIPI
7.0NetWeaver Platform-
7.1Netweaver CE--
NetWeaver PI-------
NetWeaver Mobile-------
7.2Netweaver CE---
7.3NetWeaver Platform
7.4NetWeaver Platform

NetWeaverの開発環境

NetWeaverの開発環境は、ABAPとJAVAによって分かれております。

  • ABAP
    ABAPワークベンチ(SapGUI利用)
  • JAVA
    NWDS(Eclipseベース) 

NWDSに投稿されました 続きを読む

このトピックでは、開発設定の導入手順を取り上げて説明します。

NWDSに投稿されました 続きを読む

接続先のABAPサーバの設定です。

NWDSに投稿されました 続きを読む

NWDSからAs Javaへアプリケーションをデプロイしたりデバッグすることがあれば、AsJavaの情報を事前に設定する必要があります。

 

NWDSに投稿されました 続きを読む


Eclipse基盤が提供した機能はとくに説明しません。

NWDSの機能はパースペクティブによって取りまとめられています。

Window→Open Perspective→Othersでどんなパースペクティブがあるかを確認できます。

Composite Application

Composite Designer

NWDSに投稿されました 続きを読む

このトピックでは、Eclipseの概要を取り上げて説明します。

画面イメージ

ワークベンチ

Eclipseを起動すると、1つの作業台が起動します。この作業台のことを「ワークベンチ」と呼びます。
ワークベンチは、次に説明するパースペクティブやエディター、ビューの土台となっている部分のことで、ワークベンチそのものが画面上に表示されることはありません。

パースペクティブ

パースペクティブは視角、視野といういみをもっています。
ワークベンチには、たくさんの機能があります。しかし、ある1つの作業をする際には、その一部の機能しか使いません。そのため、Eclipseでは必要な機能だけを選んで画面上に表示するようにしています。
どの機能を表示するかを選んだもの、さらに選んだ機能をどのように配置するかを決めたものを、「パースペクティブ」と呼びます。

Eclipseを起動すると、1つのパースペクティブが選択されて画面に表示されます。

エディタ

パースペクティブは、エディターとビューで構成されています。
エディターは、プログラムなどのデータの作成、編集、保存を行う機能です。

ビュー

ビューは、さまざまな情報を表示し、かつそれらに対して操作を行うことのできるウィンドウです。

WDJに投稿されました 続きを読む

このトピックでは、エラーハンドリング処理のプログラミング方法を取り上げて説明します。

エラーハンドリング (英:error handling)とは、、プログラムの処理中に処理が妨げられる事象が発生した際、その処理をエラーとして対処する処理のことです、例外処理とも呼ばれます。

エラーハンドリングの処理内容は、プログラム内にあらかじめ用意しておく必要がありますので、このトピックでは、WDJ開発におけるエラーハンドリング処理の方法や手順を取り上げて説明します。
エラーハンドリング処理を行う必要がある。
Webdynproでは、エラーハンドリング処理は以下の手順で行う。
エラーハンドリング処理の概要手順
① Message Poolの定義追加
② Message Poolへのアクセス
③ UIへの出力領域の定義
④ エラーハンドリング処理

メッセージはメッセージプールに定義されます。メッセージプールはWebdynproコンポーネント毎に一つのみが存在します。

メッセージはプログラムが格納されたDCのメッセージプールに定義すること以外、共通的なDCを一つ用意して、そのなかのメッセージプールでメッセージを纏めて定義することによりメッセージの共通化を図ることができます。

メッセージ文言はパラメータをつけることができます。

Webdynproでは、Message PoolへのアクセスやMessage Poolからメッセージの取得に、以下の手順で行う。
IWDTextAccessor APIを利用し、Message Poolへの接続を作成する。
Message Poolへの接続を用い、MessageKeyをもとに、メッセージを取得する。

 
  Object[] parameters = new Object[1]; 
  parameters[0] = parameter; 

IWDTextAccessor textAccessor = wdComponentAPI.getTextAccessor();
String msg = textAccessor.getText('dbupderror'), parameters);

Webdynproでは、画面上にメッセージを表示するには、MessageAreaというUIエレメントを配置する必要があります、
配置イメージを下図に示します。

   
Webdynproでは、エラーハンドリング処理により、アプリケーション例外を発生させ、予め定義されるエラーメッセージ内容をします。
具体的な手順やコード例は以下のように示します。


if (!wdThis.check()){
//MessageManagerを取得
IWDMessageManager msgmgr = wdThis.wdGetAPI().getComponent().getMessageManager();
//メッセージを出力
 msgmgr.reportContextAttributeMessage(
wdThis.wdContext.currentMyDataElement(), // エラーメッセージにリンクしているUIエレメント
wdThis.wdContext.nodeMyData().getNodeInfo().getAttribute("Name"), // チェック項目
IMessageUIComp.DBUPDERROR, // MessagePoolに登録されるメッセージキー
null,
true);
}

 

WDJに投稿されました 続きを読む

このトピックでは、WebdynproでのRFCモデル作成方法及び手順を取り上げて説明します。

Webdynproでは、RFCの呼出にはaRFC用のModelを作成する必要がある。またModel作成の際に、
モデルデータとメタデータオブジェクトをセットで定義する必要がある。
aRFC呼出Modelの作成イメージを下図に示す。

概要イメージ
Webdynproでは、RFCのモデルデータをWebdynpro内で利用するには、Webdynpro のCustom Controllerへバインドする必要があります
また、モデルデータをUIに表示するには、さらにView Controllerへバインドする必要があります
RFCモデルデータのバインドイメージを下図に示す。

 
  // 通貨単位取得 
  String waers = 	wdThis.getWaers(); // ex: USD 
  // 通貨単位の小数桁数を取得 
  BAPI_CURRENCY_GETDECIMALSModel model = new BAPI_CURRENCY_GETDECIMALSModel(); 
  Bapi_Currency_Getdecimals_Input input = new Bapi_Currency_Getdecimals_Input(model); 
  input.setCurrency(waers); 
  wdContext.nodeBapi_Currency_Getdecimals_Input().bind(input); 
  input.execute(); 

String type = wdContext.currentReturnElement().getType();
if (type.equals(MSGTYP_ERROR)) {
IWDMessageManager msgMgr = wdComponentAPI.getMessageManager();
sgMgr.reportException(wdContext.currentReturnElement().getMessage());
}
int curdecimals = wdContext.currentCurrency_DecimalsElement().getCurdecimals();

※wdContext.nodeOutput().invalidate()の呼出により、RFCの処理結果はWebdynproで取得可能になる