메뉴 건너뛰기

SAP 한국 커뮤니티

 


OLE2 로 엑셀 문서를 출력하는 프로그램을


DOI 로 바꾸려고 하고 있습니다.


 


 


기존의 프로그램에서 최종적으로 나온 엑셀 결과는,


어느곳에도 저장은 안되고


단지 신규 엑셀 화면이 띄워 지고 셀 안에 데이터가 들어 있는


- 즉 저장 된 파일이 아닌.. - 상태인데요.


 


 


DOI 로 문서를 띄워서 작업을 하는것 까진 성공 했는데


프로그램이 종료되면 Excel 파일도 같이 종료 되어 버리네요.


(유저가 확인 할 틈도 없이)


 


Excel 창이 닫히지 않고 남아 있게 하려면 어떻게 해야 하는 지 알고 싶습니다..


 


 


샘플 프로그램 참고해서 시험중입니다만


선언은 다음과 같습니다.


 


 

CALL METHOD C_OI_CONTAINER_CONTROL_CREATOR=>GET_CONTAINER_CONTROL
  IMPORTING
    CONTROL = CONTROL
    RETCODE = RETCODE.

CREATE OBJECT CONTAINER
  EXPORTING
    CONTAINER_NAME = 'CONTAINER'.


 


컨테이너를 만들고


 


 

CALL METHOD CONTROL->INIT_CONTROL
                    EXPORTING R3_APPLICATION_NAME =
                                          'R/3 Basis'       "#EC NOTEXT
                              INPLACE_ENABLED = ''
                              INPLACE_SCROLL_DOCUMENTS = ''
                              PARENT = CONTAINER
                              REGISTER_ON_CLOSE_EVENT = 'X'
                              REGISTER_ON_CUSTOM_EVENT = 'X'
                              NO_FLUSH = 'X'
                      IMPORTING error = errors


 


 


 


 

CALL METHOD CONTROL->GET_DOCUMENT_PROXY
                    EXPORTING DOCUMENT_TYPE = 'Excel.Sheet'
                              NO_FLUSH = 'X'
*                       REGISTER_CONTAINER = 'X'
                    IMPORTING DOCUMENT_PROXY = DOCUMENT
                                error = errors.


 


 

CALL METHOD DOCUMENT->CREATE_DOCUMENT
                    EXPORTING OPEN_INPLACE = ''
                              DOCUMENT_TITLE =
                              'R/3 table contents in Excel' "#EC NOTEXT
                              NO_FLUSH = 'X'
  IMPORTING
    ERROR            = errors
*    RETCODE          =


 


그리고 엑셀 파일을 띄웠구요


 


 

CALL METHOD DOCUMENT->GET_SPREADSHEET_INTERFACE
  EXPORTING
    NO_FLUSH        = ' '
  IMPORTING
    SHEET_INTERFACE = SPREADSHEET.


 


제어를 위해 인터페이스를 받아왔습니다


 


 


 


이후로는 DB 로부터 자료를 가져와서


 


 


 

CALL METHOD SPREADSHEET->INSERT_RANGE_DIM
  EXPORTING
    NAME     = 'SAP_Table'
    TOP      = 2
    LEFT     = 2
    ROWS     = 5
    NO_FLUSH = 'X'
    COLUMNS  = 5
  IMPORTING
    ERROR    = ERRORS.
APPEND ERRORS.


 


영역을 설정하고


 


 


* transfer R/3 table data into excel range
      CALL METHOD spreadsheet->insert_one_table
          EXPORTING data_table = excel_table
                    ddic_name = tabname
                    rangename = 'SAP_Table'
                    no_flush  = 'X'
                    wholetable = 'X'
          IMPORTING error = errors.
      APPEND errors.


 


자료를 넘기고


 


 


      CALL METHOD spreadsheet->fit_widest
          EXPORTING name = space
                    no_flush = 'X'.
* protect the R/3 data against input
      CALL METHOD spreadsheet->protect_range
          EXPORTING name      = 'SAP_Table'
                    protect   = 'X'
                    no_flush = 'X'
          IMPORTING error = errors.
      APPEND errors.
* now flush automation queue
      CALL METHOD control->set_focus
          EXPORTING no_flush = ' '
          IMPORTING error = errors.
      APPEND errors.


 


 


화면에 보이게 했습니다.


중간에 자질구레한 곳들은 뺐는데


 


필요한 곳이 있으면 보충하겠습니다...




 


 

번호 제목 글쓴이 날짜 조회 수
» <b>[완료]</b>DOI 초보적 질문 (프로그램 종료와 함께 엑셀이 안 닫히게). [9] JiruMi 2009.02.25 3686
6174 <b>[완료]</b>SAP 서브쿼리 용법 & IN 사용법좀 알려주세요. 막혔습니다... [1] 또길 2009.01.05 3686
6173 [요청]READ TABLE BINARY SEARCH 를 사용할 때 SORT기준이 어떻게되죠? [2] Gerrard 2008.11.18 3682
6172 <img src=2.gif>search help생성시 MATCHCODE OBJECT 의 설명을 부탁드립니다. [2] file marco 2010.07.06 3676
6171 Table 생성시 나오는 Warning좀 알려주세요~^^ [1] Abap 2011.04.04 3674
6170 [요청]ALV 에서 checkbox 비활성 가능한가요? [1] 파파 2008.07.17 3674
6169 [요청]Class ALV에서 checkbox 인식하는 방법 [3] file Happy~ 2008.06.25 3668
6168 <img src=3.gif>인터널 테이블과 인터널 테이블을 비교하고 삭제하고 싶습니다. [2] o탁이o 2010.09.28 3667
6167 <img src=3.gif>프로그램의 description 변경........... [4] file 모포 2010.11.23 3662
6166 BDC 프로그램에서 에러메시지 [8] 이지연 2007.09.17 3662
6165 <b>[완료]</b>LOCK OBJECT 잠금모드가 궁금합니다.... [4] 할일없는무급개발자 2008.03.25 3660
6164 <b>[완료]</b>ALV에서 MARK기능 구현하는 것에 대해 질문 드립니다. [3] Waiting 2008.01.03 3652
6163 <b>[완료]</b>at user-command와 at selection-screen의 차이 [5] 아밥고지를 찾아서 2009.04.01 3651
6162 특정 필드에 최대값만 골라서 다른 인터널테이블에 넣을려고 합니다.. [4] 푸른물고기 2011.04.04 3649
6161 URL 에서 파라메터를 받아오려고 하는데 감이 안잡힙니다.. [4] 갱즈 2011.04.01 3640
6160 <img src=2.gif> 초단위 이하의 시간단위를 구하고 싶습니다 [1] 아밥걸 2010.06.29 3629
6159 <b>[완료]</b>THE WORK AREA "ITAB" IS NOT LONG ENOUGH라고 신텍스 오류가 발생합니다 [3] 아밥어렵네요 2008.04.24 3628
6158 <img src=2.gif>cost center group 의 계층구조 관리하는 테이블 [2] CO초보 2011.03.21 3625
6157 <img src=3.gif>[bsp]textarea 줄바꿈은 어떻게 하나요? [1] 끼야호 2010.06.04 3625
6156 <img src=3.gif>타임스탬프(TIMESTAMP) 질문드립니다. [2] 아밥맨 2010.08.03 3624