BDC SESSION
本程式以BDC SESSION的方式建立了一個SESSION(SM35可以檢視SESSION一覽),執行SESSION可以建立一條新的銀行條目,該銀行條目的關鍵欄位如下:
『銀行國コード』 :JP
『銀行コード』 :9999001
『銀行名』 :建設銀行001(東京)
『地域 (都道府県)』:13
[@more@]*&---------------------------------------------------------------------*
*& Report Z_BDC_SESSION *
*& *
*&---------------------------------------------------------------------*
* TCODE SM35を利用して、新規のセッションをチェックする。
*
*----------------------------------------------------------------------*
REPORT Z_BDC_SESSION.
*----------------------------------------------------------------------*
* INTERNAL TABLE
*----------------------------------------------------------------------*
DATA:
TD_BDCDATA LIKE TABLE OF BDCDATA.
*----------------------------------------------------------------------*
* PARAMETERS
*----------------------------------------------------------------------*
PARAMETERS:
P_GROUP TYPE APQI-GROUPID DEFAULT SY-REPID. "セッション名
*----------------------------------------------------------------------*
* INITIALIZATION
*----------------------------------------------------------------------*
INITIALIZATION.
%_P_GROUP_%_APP_%-TEXT = 'セッション名'.
*----------------------------------------------------------------------*
* START-OF-SELECTION
*----------------------------------------------------------------------*
START-OF-SELECTION.
*『銀行マスタ』テーブルに以下の條件に満足したデータを削除する
DELETE FROM BNKA WHERE BANKS = 'JP' "銀行國コード
AND BANKL = '9999001'. "銀行コード
* バッチインプットテーブルの編集
PERFORM FRM_EDIT_BDCDATA.
* セッションの開始
PERFORM FRM_BDC_OPEN_GROUP.
* セッションの設定
PERFORM FRM_BDC_INSERT.
* セッションの終了
PERFORM FRM_BDC_CLOSE_GROUP.
*&---------------------------------------------------------------------*
*& Form FRM_SET_BDC_DYNPRO
*&---------------------------------------------------------------------*
* バッチインプットテーブルの編集
*----------------------------------------------------------------------*
* なし
*----------------------------------------------------------------------*
FORM FRM_EDIT_BDCDATA.
* 新畫面開始
PERFORM FRM_SET_BDC_DYNPRO USING 'SAPMF02B'
'0100'.
PERFORM FRM_SET_BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM FRM_SET_BDC_FIELD USING 'BNKA-BANKS' "銀行國コード
'JP'.
PERFORM FRM_SET_BDC_FIELD USING 'BNKA-BANKL' "銀行コード
'9999001'.
* 新畫面開始
PERFORM FRM_SET_BDC_DYNPRO USING 'SAPMF02B'
'0110'.
PERFORM FRM_SET_BDC_FIELD USING 'BDC_OKCODE'
'=UPDA'.
PERFORM FRM_SET_BDC_FIELD USING 'BNKA-BANKA' "銀行名
'建設銀行001(東京)'.
PERFORM FRM_SET_BDC_FIELD USING 'BNKA-PROVZ' "地域 (都道府県)
'13'.
ENDFORM. " FRM_EDIT_BDCDATA
*&---------------------------------------------------------------------*
*& Form FRM_SET_BDC_DYNPRO
*&---------------------------------------------------------------------*
* BDC モジュールプール & Dynpro番號の設定
*----------------------------------------------------------------------*
* -->I_PROGRAM BDC モジュールプール(USINGパラメータ)
* -->I_DYNPRO BDC Dynpro 番號 (USINGパラメータ)
*----------------------------------------------------------------------*
FORM FRM_SET_BDC_DYNPRO USING I_PROGRAM
I_DYNPRO.
DATA LTH_BDC LIKE BDCDATA.
LTH_BDC-PROGRAM = I_PROGRAM.
LTH_BDC-DYNPRO = I_DYNPRO.
LTH_BDC-DYNBEGIN = 'X'.
APPEND LTH_BDC TO TD_BDCDATA.
ENDFORM. " FRM_SET_BDC_DYNPRO
*&---------------------------------------------------------------------*
*& Form FRM_SET_BDC_FIELD
*&---------------------------------------------------------------------*
* BDC 專案の設定
*----------------------------------------------------------------------*
* -->I_FNAM 專案名 (USINGパラメータ)
* -->I_FVAL BDC 專案値(USINGパラメータ)
*----------------------------------------------------------------------*
FORM FRM_SET_BDC_FIELD USING I_FNAM
I_FVAL.
DATA LTH_BDC LIKE BDCDATA.
LTH_BDC-FNAM = I_FNAM.
LTH_BDC-FVAL = I_FVAL.
APPEND LTH_BDC TO TD_BDCDATA.
ENDFORM. " FRM_SET_BDC_FIELD
*&---------------------------------------------------------------------*
*& Form FRM_BDC_OPEN_GROUP
*&---------------------------------------------------------------------*
* セッションの開始
*----------------------------------------------------------------------*
* なし
*----------------------------------------------------------------------*
FORM FRM_BDC_OPEN_GROUP.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = P_GROUP
USER = SY-UNAME
EXCEPTIONS
CLIENT_INVALID = 1
DESTINATION_INVALID = 2
GROUP_INVALID = 3
GROUP_IS_LOCKED = 4
HOLDDATE_INVALID = 5
INTERNAL_ERROR = 6
QUEUE_ERROR = 7
RUNNING = 8
SYSTEM_LOCK_ERROR = 9
USER_INVALID = 10
OTHERS = 11.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " FRM_BDC_OPEN_GROUP
*&---------------------------------------------------------------------*
*& Form FRM_BDC_INSERT
*&---------------------------------------------------------------------*
* セッションの設定
*----------------------------------------------------------------------*
* なし
*----------------------------------------------------------------------*
FORM FRM_BDC_INSERT.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'FI01'
TABLES
DYNPROTAB = TD_BDCDATA
EXCEPTIONS
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
TCODE_INVALID = 4
PRINTING_INVALID = 5
POSTING_INVALID = 6
OTHERS = 7.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " FRM_BDC_INSERT
*&---------------------------------------------------------------------*
*& Form FRM_BDC_CLOSE_GROUP
*&---------------------------------------------------------------------*
* セッションの終了
*----------------------------------------------------------------------*
* なし
*----------------------------------------------------------------------*
FORM FRM_BDC_CLOSE_GROUP.
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " FRM_BDC_CLOSE_GROUP
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8214011/viewspace-976204/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- BDC技術
- BDC程式示例C程式
- (轉)BDC技術
- BDC OK CODE 的含義,錄屏操作中BDC_OKCODE
- 常用的BDC OkCode
- 函式模組:TB_POPUP_FOR_BDC_CONTROL函式
- 匯入物料主檔基本資料的BDC程式C程式
- SAP ABAP/4學習---BDC批次輸入寫成內表程式
- laravel session 與 php session配置LaravelSessionPHP
- session和v$session說明Session
- memcached-session-manager session共享Session
- SessionSession
- Session分散式共享 = Session + Redis + NginxSession分散式RedisNginx
- session bean中的session如何理解?SessionBean
- 玩轉跟蹤(to owner session、other session)Session
- session switchSession
- session 共享Session
- Session案例Session
- cookie & sessionCookieSession
- cookie sessionCookieSession
- Cookies & SessionCookieSession
- Session 使用Session
- V$SESSIONSession
- Java SessionJavaSession
- session容器Session
- kill sessionSession
- Cloud Foundry Session Affinity(Sticky Session)的實現CloudSession
- 【kill session】Oracle 徹底 kill session(轉載)SessionOracle
- 【Oracle】-【v$session】v$session的SNIPED狀態OracleSession
- 要 kill session 例子,session多,報錯如下Session
- v$session的blocking_session含義SessionBloC
- disconnect session和kill session的區別Session
- BDC錄屏該程式後 最後按儲存按鈕卻無法執行
- 從koa-session原始碼解讀session原理Session原始碼
- disconnect session和kill session的區別 轉Session
- 【轉】Session ID/session token 及和cookie區別SessionCookie
- Oracle session traceOracleSession
- Session 簡介Session