메뉴 건너뛰기

SAP 한국 커뮤니티

>제가 지금 function 그룹 class 로 만드는 작업 하고 있습니다.


>function 에서는 perform  사용 할수 있는데 method에서는 perform 사용 할수 없는 걸로 알고 있습니다.


>하나의 Function에서 여러개의 Perform을 사용 했습니다. 


>:


>      PERFORM P2000_DYNPRO  USING :
           
'X' 'SAPLSPO2'    '0100',
           
' ' 'BDC_OKCODE'  '=OPT2'.            

    
PERFORM P2000_DYNPRO  USING :
           
'X' 'SAPMF05R'    '0300',
           
' ' 'RF05R-STGRD' REASONREVERSAL,     
           
' ' 'BDC_OKCODE'  '=ENTR'.   


>이렇게 여러개 perform을 사용 햇는데 class에서 공동으로 선언 하면 method 내에서 사용하여 쓸수 있는지요.


> 


>저는 


>      PERFORM P2000_DYNPRO IN PROGRAM ('ZRIMBDCCOM'USING :
           
'X' 'SAPLSPO2'    '0100',
           
' ' 'BDC_OKCODE'  '=OPT2'.               

    
PERFORM P2000_DYNPRO IN PROGRAM ('ZRIMBDCCOM'USING :
           
'X' 'SAPMF05R'    '0300',
           
' ' 'RF05R-STGRD' REASONREVERSAL,     
           
' ' 'BDC_OKCODE'  '=ENTR'.            


> method 내에서 이렇게 수정 했는데 이 방식이 제가 원하는 방식이 아니 라고 생각 합니다.


> 


>class  내에서 선언 하여 공동으로 사용 할수 없는지 부탁 드립니다.


>그리고 여러분들이 function 그룹을 class 로 만들때 주의 할 점과 tip들을 적어 주면 감사 하겠습니다.          


>그럼 즐거운 시간 보내세요.

>

 


Sample 코드 만들어 봤어요.


제 임의로 작성하였으니 편하게 고쳐 쓰세요.


 


[Attributes]


BDCDATA_TAB Static Attribute Public Type BDCDATA_TAB


 


[메쏘드]


INIT_BDC     Static Method Public => Bdc data 초기화
MAKE_BDCDATA Static Method Public => Bdc data 생성
RUN_BDC      Static Method Public => Bcd 실행


 


[메소드 매개변수]


MAKE_BDCDATA => BDCDATA Importing Type BDCDATA


RUN_BDC      => T_CODE Importing Type TCODE
                OPTS Importing Type CTU_PARAMS
                MESSTAB Exporting Type TAB_BDCMSGCOLL


 


[메쏘드 소스]


METHOD init_bdc.


  CLEAR : bdcdata_tab.


ENDMETHOD.


 


METHOD make_bdcdata.


  APPEND bdcdata TO bdcdata_tab.


ENDMETHOD.


 


METHOD run_bdc.


  CALL TRANSACTION t_code
                   USING         bdcdata_tab
                   OPTIONS  FROM opts
                   MESSAGES INTO messtab.
ENDMETHOD.


 


[프로그램 사용 예]


DATA ls_bdcdata TYPE bdcdata.
DATA opts       TYPE ctu_params VALUE 'EX     '.
DATA messtab    TYPE tab_bdcmsgcoll.


DEFINE mac_make_bdcdata.
  clear ls_bdcdata.
  ls_bdcdata-program  = &1.
  ls_bdcdata-dynpro   = &2.
  ls_bdcdata-dynbegin = &3.
  ls_bdcdata-fnam     = &4.
  ls_bdcdata-fval     = &5.


  call method ycl_psa03_test=>make_bdcdata
    exporting
      bdcdata = ls_bdcdata.
END-OF-DEFINITION.


 


CALL METHOD ycl_psa03_test=>init_bdc .



mac_make_bdcdata : 'SAPMF05L' '0100' 'X' '' '',
                   ''         ''     ' ' 'BDC_CURSOR'  'RF05L-AWTYP',
                   ''         ''     ' ' 'BDC_OKCODE'  '/00',
                   ''         ''     ' ' 'RF05L-BELNR' '2200001293',
                   ''         ''     ' ' 'RF05L-BUKRS' '1000',
                   ''         ''     ' ' 'RF05L-GJAHR' '2009'.


 


CALL METHOD ycl_psa03_test=>run_bdc
  EXPORTING
    t_code  = 'FB03'
    opts    = opts
  IMPORTING
    messtab = messtab.


Static 으로 만들어서 어디서든 사용 가능합니다.


좋은 결과 있으시길 바랍니다.

번호 제목 글쓴이 날짜 조회 수
4105 <img src=3.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] SAMBATIME 2009.10.14 1852
4104 [re] <img src=2.gif>이거 챙피해서 누구한테 물어보지도 못하고 [6] file 방배 2009.10.14 1252
4103 <img src=3.gif>list ALV 프로그램 종료(버튼 클릭 후 카운트 값 0 만들기) [9] 츄리닝 2009.10.14 1624
4102 <img src=2.gif>BDC로 발생한 트랜젝션여부 체크에 관해 [3] 댕댕 2009.10.13 1293
4101 <img src=3.gif>[급] INCLUDE 오류입니다. 찾을 수가 없다고 뜨네요. [5] 얄리뽕다 2009.10.13 1338
4100 <img src=2.gif>Class 에 관한 질문 드리려고 합니다. [2] cskang 2009.10.12 1338
» [re] <img src=2.gif>Class 에 관한 질문 드리려고 합니다. 요요 2009.10.13 1151
4098 <img src=2.gif>시 분 초 계산 할 때 유용한 펑션이나 기타 사항 부탁드립니다. [4] 찬호사랑 2009.10.12 2824
4097 <img src=2.gif>sapmzxxxx 프로그램의 include 저장 테이블 [5] zzzz 2009.10.12 1624
4096 <img src=2.gif>HR 관련 평션이 존재하는지 궁금합니다. ? [7] 예스맨 2009.10.12 1420
4095 <img src=3.gif>se30에서 Groos, Net Time 질문입니다. [3] 비와바람 2009.10.12 1552
4094 <img src=2.gif>TABLES: *EKPO 이렇게 선안 하면 무슨 뜻이죠. [13] cskang 2009.10.12 1416
4093 <img src=3.gif>select 해올때 해당 필드가 가장 큰 값을 가지는것을 가지고 오게 하는법 [2] 아밥고지를 찾아서 2009.10.12 1869
4092 <img src=3.gif>1000번 스크린 질문좀 드리겠습니다. [5] file 들아쿠라 2009.10.12 1623
4091 <img src=3.gif>type-m 에서 버튼속성 컨트롤요~~ [5] abap고수되기! 2009.10.12 1442
4090 <img src=2.gif>eCCAT를 사용하여 결과를 exporting하려면 어떻게 해야되나요? [2] Bizzard.Chul 2009.10.11 1024
4089 <img src=3.gif>ECC6.0 Native Sql 로 데이터 Insert 시 한글깨짐 현상 [2] woong 2009.10.08 1702
4088 <img src=1.gif> 'BAPI_MATERIAL_SAVEDATA' 사용하여 자재를 생성했는데 Prod./insp. memo 필드에 값도 안들어가요.. [2] file 금은돌 2009.10.07 1853
4087 <img src=3.gif>CATT 라는건 무엇이고 어떨때 사용하는건가요? [7] 카루이안 2009.10.08 2052
4086 <img src=3.gif>BDC 프로그램 CALL Transaction 옵션 중에서 RACOMMIT 옵션이 하는 역할이 무엇인가요? [8] 카루이안 2009.10.07 5294