作成者:株式会社 NTT データ イントラマート Page 165
Page 166 Copyright 2000-2006 株式会社NTTデータ イントラマート All rights Reserved.
4.7.2 サンプルプログラムによる使用例
作成者:株式会社 NTT データ イントラマート Page 167
<%intra-mart インストールディレクトリ%>/pages/sapapi_tutorial/tutorial5-7-2/im_sapapi.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 //EN">
<HTML>
<HEAD>
<TITLE>チュートリアル</TITLE>
</HEAD>
<BODY>
<BR>
<BR>
SAP R/3リアルタイム連携API チュートリアル(利益センタグループ API)<BR>
<BR>
<BR>
<IMART type ="form" method="POST" action="execute" page="sapapi_tutorial/tutorial5-7-2/result">
<INPUT type ="submit" value="チュートリアル実行">
</IMART>
</BODY>
</HTML>
<%intra-mart インストールディレクトリ%>/pages/sapapi_tutorial/tutorial5-7-2/im_sapapi.js
function execute(request){
var objCon;
var nodeslist;
var valueslist;
//インスタンス生成
objCon = new ProfitCenterGrpGetDetailController("1000", "1000"); ・・・ 説明1
// コンストラクタでのエラーチェック if (objCon.getErrCode() != "0"){
//エラーメッセージ出力
Debug.browse(objCon.getErrMsg());
}
//階層ノード一覧
nodeslist = objCon.getHierarchyNodesList(); ・・・ 説明2 Client.set("nodeslist", nodeslist);
//階層値一覧
valueslist = objCon.getHierarchyValuesList(); ・・・ 説明3 Client.set("valueslist", valueslist);
}
Page 168 Copyright 2000-2006 株式会社NTTデータ イントラマート All rights Reserved.
<%intra-mart インストールディレクトリ%>/pages/sapapi_tutorial/tutorial5-7-2/result.js
var nodesList;
var nodeslistCount;
var valuesList;
var valueslistCount;
function init(request) {
//階層ノード一覧を取得
nodesList = Client.get("nodeslist");
nodeslistCount = nodesList.length; ・・・ 説明4
//階層値一覧を取得
valuesList = Client.get("valueslist");
valueslistCount = valuesList.length; ・・・ 説明5
}
<%intra-mart インストールディレクトリ%>/pages/sapapi_tutorial/tutorial5-7-2/result.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 //EN">
<HTML>
<HEAD>
<TITLE>チュートリアル実行結果</TITLE>
</HEAD>
<BODY>
■利益センタグループ(結果)<BR><BR>
■階層ノード一覧(<IMART type="string" value=nodeslistCount></IMART>件)<BR>
<TABLE border=1 cellspacing=1 >
<TR bgcolor="#00ffff">
<TH>No</TH>
<TH>グループ名</TH>
<TH>階層のエントリレベル</TH>
<TH>階層ノード内の値の値数</TH>
<TH>グループテキスト(短)</TH>
</TR>
<IMART type="repeat" list=nodesList item="record" index="idx">
<TR>
<TD><IMART type="string" value = idx></IMART></TD>
<TD><IMART type="string" value = record.GROUPNAME></IMART></TD>
<TD><IMART type="string" value = record.HIERLEVEL></IMART></TD>
<TD><IMART type="string" value = record.VALCOUNT></IMART></TD>
<TD><IMART type="string" value = record.DESCRIPT></IMART></TD>
</TR>
</IMART type="repeat">
</TABLE><BR>
・・・ (次ページへ) ・・・
作成者:株式会社 NTT データ イントラマート Page 169 ・・・ (前ページより) ・・・
■階層値一覧(<IMART type="string" value=valueslistCount></IMART>件)<BR>
<TABLE border=1 cellspacing=1 >
<TR bgcolor="#00ffff">
<TH>No</TH>
<TH>利益センタFROM</TH>
<TH>利益センタTO</TH>
</TR>
<IMART type="repeat" list=valuesList item="record" index="idx">
<TR>
<TD><IMART type="string" value = idx></IMART></TD>
<TD><IMART type="string" value = record.VALFROM></IMART></TD>
<TD><IMART type="string" value = record.VALTO></IMART></TD>
</TR>
</IMART type="repeat">
</TABLE>
</BODY>
</HTML>
【説明1】利益センタグループAPIのインスタンス生成
ProfitCenterGrpGetDetailControllerクラスのインスタンスを生成します。第1引数に照会する管理領域、第2引数
にグループ名を設定します。インスタンスを生成すると、BAPI を呼び出して利益センタグループを取得する処理
が実行されます。
【説明2】階層ノード一覧を取得
ProfitCenterGrpGetDetailControllerクラスの getHierarchyNodesList メソッドを使用すると、取得した利益センタの 階層ノード一覧を取得することが可能です。
項目の値を取得するには、KEY に SAP R/3 の各属性の項目名称を設定してください。
【説明 3】階層値一覧を取得
ProfitCenterGrpGetDetailControllerクラスの getHierarchyValuessList メソッドを使用すると、取得した利益センタの 階層値一覧を取得することが可能です。
項目の値を取得するには、KEY に SAP R/3 の各属性の項目名称を設定してください。
【説明4】階層ノード一覧の件数を取得
ProfitCenterGrpGetDetailController クラスの getHierarchyNodesList メソッドで取得した利益センタの一覧は、
length で件数を取得することが可能です。
【説明5】階層値一覧の件数を取得
ProfitCenterGrpGetDetailController クラスの getHierarchyValuessList メソッドで取得した利益センタの一覧は、
length で件数を取得することが可能です。
Page 170 Copyright 2000-2006 株式会社NTTデータ イントラマート All rights Reserved.