2010年12月30日 星期四

尋找WSDL

NetWeaver Administrator下
SOA Management / Application and Scenario Communication / Single Service Administration

NWDS7.2 基礎設定

開發前設定
1. Show line number
        Window/Preferences/General/Editors/Show line numbers
2.Java 編碼呼叫快捷鍵
        Window/Preferences/General/Editors/Key/Content 設定Alt + /
3.Destination
        Window/Preferences/Destination Configurations/R3 Configuration
4.Web Service Configuration
        Window/Preferences/Destination Configurations/Web Service Configuration
5.NWDI
        Window/Preferences/Development Infrastructure/System Landscape Directory
6.SAP AS Java
        Window/Preferences/SAP AS Java
7.Web Service
        Window/Preferences/Web Services/Enterprise Service Browser
8.Services Registry
        Window/Preferences/Web Services/Services Registry
9.WSDL
        Window/Preferences/Web Services/WSDL Files

始用UWL的五個角色

使用UWL需加入五個角色

BPEM End User
Local NetWeaver Administrator
Every User Core Role
Administrator
Everyone role

2010年12月22日 星期三

字串比對

1. ==

String s1 = new String("ABC");
String s2 = new String("ABC");
//測式一
System.out.println(s1==s2);

結果為false,因為這二個object不表示同一個instance

2. equals

String s1 = new String("ABC");
String s2 = new String("ABC");
//測試二
System.out.println(s1.equals(s2));

結果為true,正確的檢查方式(註數字還是要用==來檢查!)

3. compareTo

//判斷Low < High  if ( wdContext.nodeMatnr().getMatnrElementAt(i).getLow().compareTo(wdContext.nodeMatnr().getMatnrElementAt(i).getHigh()) > 0  ){
         msgMgr.reportWarning("Lower limit is greater than upper limit");
         }

結果為:A>B得到正 ,A<B得到負, A=B得到0。

2010年12月16日 星期四

CE7.2如何設定ARFC2

CE7.2的版本設定ARFC2 – Webdynpro R3溝通方式
1.      登入NetWeaver Administrator - Configuration Management - Destinations


2. 建立 WD_MODELDATA_DEST and WD_RFC_METADATA_DEST 二個 連結R3的方法

3. NWDS中建立ARFC2


4. 設定2個在EP建立的溝通方法,Webdynrpo將由此方法與R3溝通

變更EP配置主題與桌面

1.配置主題

路徑:
System Administration -> Portal Display -> Theme Editor
在這裏可以看到多個主題範本。選擇任一個範本,進入了Theme Editor,把它另存為"CustomerTheme"
主題的copy會稍稍花一點時間,等copy結束後,就可以看CustomerTheme了。然後對它做任意的修改了。
最後保存。

2.配置桌面
路徑:
System Administration -> Portal Display -> Desktop & Display Rules
-> Portal Content -> Portal Users -> Standard Portal Users -> Default Portal Desktop

WebDynpro Java - 欄位自帶說明方法


必須要更改標準DD_DTEL_GETProcessing Type變更成 Remote-enabled module

2010年12月13日 星期一

CE7.1取得IUser

1. 在NWDS下切至 Development Infrastructure
2. Component Browser - Show In -> Component Properties 出現Component Properties
3. 選擇Dependencies 頁籤後按下 - Add
4. 在彈出的視窗中,展開 ENGINEAPI(sap.com) 選擇 com.sap.security.api.sdasecurity_api

   String logonID = "";
  try
  {
   IWDClientUser wdUser = null;
   try
   {
    wdUser = WDClientUser.getCurrentUser();
   }
   catch (WDUMException e1)
   {
    e1.printStackTrace();
   }
   IUser user = wdUser.getSAPUser();
   logonID = user.getName();
//   logonID = user.getUniqueID();
   wdContext.nodeZmdf1009_Input().getCurrentElement().setAttributeValue("Im_User", logonID);
   wdContext.nodeZmdf1009_Input().getCurrentElement().setAttributeValue("Im_Program", "ZMM9031");
   wdComponentAPI.getMessageManager().reportSuccess(logonID);
   wdThis.wdGetDemo05CompController().call_DEMO05();
  }
  catch (Exception e)
  {
   wdComponentAPI.getMessageManager().reportException("Error: " + e.getMessage());
   e.printStackTrace();
  }

2010年12月10日 星期五

NACE 輸出控制條件



如果要尋找一支標準程式呼叫的Smart Forms來修改
例如VA03:銷售文件 - 核發輸出至
可以利用:輸出控制條件 尋找Form,將標準Form存成新的ZForm來修改
1.T-CODENACE

2010年5月7日 星期五

SHD0 交易與畫面隱藏欄位變式

在某些欄位在標準T-CODE必需隱藏時
因為不想去作增強的部份
透過T-CODE:SHD0來達成
假設想讓VA03的選擇畫面隱藏某欄位時
先設立一個自設變數 :YVA03
 標準T-CODE:VA03
此時會POP UP 一個視窗 可將在 隱藏的 欄位 勾選起來
這時便完成了隱藏功能

註:VA03的下一個呈現畫面也是可以隱藏的
    值得注意的是必輸入欄位是不準隱藏的

2010年4月26日 星期一

Batch Input 概念

當想將非SAP系統格式的資料大量上傳至SAP的系統
於是我會選擇使用Batch Input的方式
T-Code:SM35

因為Batch Input的好處:
1.1.可以處理大量的Data與保證資料完整性
1.2.可以由其它系統將Data傳至SAP
1.3.可以定期將資料傳至SAP中User不用重覆鍵入資料

註:將資料傳至SAP中可透過1.Open Session 2. Call Transaction 3 Call Dialog

準備流程為:
資料分析 => 產生資料結構 => 開發程式 => 建立連續性傳檔 => 建立與處理Batch Input => 分析結果

原則上是要Create a Session
Open the Batch Input => Fill the BDCDATA => Transaction to the Session => Close the Batch Inpu

2010年3月27日 星期六

RFC實現FTP

在T-CODE:SM59可看到TCP/IP Connections的設定
這部份可請由Basis設定一組專用的FTP 防止影響其它標準情況

註:可請Basis在UNIX設定上傳路徑來達成上傳的路徑
自動化流程要將指令寫在ABAP Code中
例如'lcd'切換本端SAP資料夾路徑、'cd'切換FTP伺服器工作目錄

在案子中我透過三個Function達成我想要目的
首先FTP_CONNECT去連接了FTP端
接著執行FTP_COMMAND
與中止FTP_DISCONNECT來達成整個連接-上傳-終止
相關Function的使用與內容可在T-CODE:SE37達成說明

2010年3月24日 星期三

Query

T-Code:SQ03 Define User Group
1.Create query groups
2.Assign users to query groups

T-Code:SQ02 InfoSet
1.Greate infoSet
2.Assign each infoSet to a query group

T-Code:SQ01 Greate Query

2010年3月12日 星期五

上傳圖片


T-CODESE78
1.選擇F5 匯入圖形
2開啟舊檔















3輸入名稱 按下Enter
4圖片上傳完成
 

2010年2月10日 星期三

ALV分頁法則

在寫FI的ALV程式常會碰到要以某個成本中心群組作分頁
這時我們可以在Sortinfo_init內設定要以什麼作為分頁
當某個值一變動後 立刻換頁作新的一筆呈現方式

&---------------------------------------------------------------------*
*&   Form  SORTINFO_INIT
*&---------------------------------------------------------------------*
FORM SORTINFO_INIT USING IT_SORTINFOE TYPE SLIS_T_SORTINFO_ALV.
  DATA: ST_SORTE TYPE SLIS_SORTINFO_ALV.
*ALV分頁 by KSGRU(成本中心群組)
  ST_SORTE-SPOS   = '1'.
  ST_SORTE-FIELDNAME = 'KSGRU'.
  ST_SORTE-TABNAME   = 'GT_RPT'.
  ST_SORTE-UP     = 'X'.
  ST_SORTE-GROUP = '*'.  "跳頁
  APPEND ST_SORTE TO IT_SORTINFOE.
  CLEAR  ST_SORTE.

ENDFORM.     "SORTINFO_INIT

2010年2月2日 星期二

ALV欄位顏色控制

在ALV程式中如有需求是值為負值時顏色可能要求為紅色
這時我們可以在ALV的程式內加入以下顏色控制的欄位宣告
並在該資料項判斷後Modify這個值
最後在Layout控制加上該色彩控制..(如無設定程式會有Error)

*增加色彩欄位宣告
DATA: BEGIN OF GW_ITAB,
 C1 TYPE C,
 P1 TYPE P.
DATA: COLINFO TYPE SLIS_T_SPECIALCOL_ALV,  "必要的宣告
  END OF GW_ITAB.
DATA GT_ITAB LIKE GW_ITAB OCCURS 0 WITH HEADER LINE.
DATA:   GT_COLOR  TYPE SLIS_T_SPECIALCOL_ALV WITH HEADER LINE.
LOOP AT GT_ITAB
    IF  GT_ITAB < 0.
 GT_COLOR-FIELDNAME = P1.
 GT_COLOR-COLOR-COL = 6.
 GT_COLOR-COLOR-INT = 0.
  GT_COLOR-COLOR-INV = 1.
  APPEND GT_COLOR.
  CLEAR GT_COLOR.
 GT_ITAB-COLINFO = GT_COLOR[].
 MODIFY GT_ITAB.
    ENDIF.
ENDLOOP.
*&----------------------------------------------------------------*
*&   Form  LAYOUT_INIT
*&----------------------------------------------------------------*
FORM LAYOUT_INIT USING P_L_LAYOUT TYPE SLIS_LAYOUT_ALV.
  P_L_LAYOUT-COLTAB_FIELDNAME = 'COLINFO'.
ENDFORM.     " LAYOUT_INIT

2010年1月7日 星期四

建立Smartforms

1.T-CODESMARTFORMS
2.選擇表單輸入 表單名稱 按下建立

















3.通用設定-表單屬性 可選擇頁面格式 (本例為DINA4)
4.通用設定-表單介面 維護 匯入與表格
  4.1 匯入為程式呼叫的EXPORTING參數名稱
  CALL FUNCTION FM_NAME
   
EXPORTING
   
YTESTV = 'SAP Information System Co.'
   
CONTROL_PARAMETERS = G_CONTROL_PARAM
   
OUTPUT_OPTIONS = G_COMPOSER_PARAM
   
USER_SETTINGS = ' '
















  4.2 表格為程式呼叫的TABLES參數名稱
TABLES
   GT_ITEM     = GT_RPT
   SUB_ITEM    = SUB_TMP















5.通用設定-通用定義
  5.1通用資料:設定全域變數的宣告
  5.2類型:宣告結構或Type
  5.3初始化:進入程式流程前優先進行之流程

6.開始畫FORM  (按表單繪製器觀看圖型預覽)
  6.1在輸出選項:維護位置和大小、方塊與濃淡(邊線)
  6.2條件:設定條件附合的情況下呈現這個區塊

7.可建立的物件如圖
  7.1 MAIN主視窗:ITEM資料存放區
  7.2建立視窗TOPHEADER資料存放區
  7.3建立視窗ENDEND小計總計或總頁數
  7.4迴圈(LOOP)或程式行(程式碼控制)進行控制資料















  7.5範本:作為細節表格的繪製與內文存放的位址
  7.6內文:作為資料寫出的文本與欄位變式 ( &為變數欄位 )
    7.6.1輸出選項: TAB輸出結構 維護行與欄 ( 設定輸出定位點 )