메뉴 건너뛰기

SAP 한국 커뮤니티

안녕하세요.  요것때문에 삽질좀 하고있어서 도움좀 부탁드릴까 합니다.

저희회사는 SAP에서 입고시에 RFID 태그인쇄를 하게되어있는데요.
RFID 태그인쇄는 C# Winfrom 프로그램으로 만들어서 SAP에서 호출해서 사용하게 되어있습니다.


 


이번에 프린트 장비가 바뀌어서 C# 프로그램을 새로운 DLL 컴포넌트를 참조해서 개발 하였습니다.


SAP프로그램에서 호출형태는 바뀐 부분이 없습니다.


 


그런데 문제는 SAP에서 호출해서 실행할때는 프린트가 안되는데 C#으로 만들어진 실행파일을 실행할때는 된다는 것입니다.


(Thread..Process..등의 여러문제를 생각하고 별짓(?) 다해봤습니다)


 


아래는 SAP에서 프린트 프로그램 호출 형태입니다. 간단합니다.


c#으로 만들어진 exe파일 실행하면서 argument 넘겨주는게 전부입니다.  물론 데이타는 정상적으로 넘어갑니다.


==========================================================


*  --> RFID PROGRAM 구동
* gl_argument 는 계약번호/차수/플랜트 형태로 들어갑니다.
  CALL FUNCTION 'WS_EXECUTE'
   EXPORTING
     commandline              = gl_argument
     program                  = 'C:TagPrint.exe'
   EXCEPTIONS
     frontend_error           = 1
     no_batch                 = 2
     prog_not_found           = 3
     illegal_option           = 4
     gui_refuse_execute       = 5
     OTHERS                   = 6.


===========================================================


 


C#에서 만들어진 소스도 너무 간단해서 보여드립니다.


USB로 연결되어진 프린터에 출력할 데이타 양식에 넣고 쓰레드 돌리면서 넘깁니다.


===========================================================


            TagPrint_DLL.setPrintPort("USB");


            Thread thPrint = new Thread(new ThreadStart(PrintThread_EMPTY));
            thPrint.Start();


            TagPrint_DLL.setFileName(@"tagPrint_data태그발행.txt");


            sTagData = "";
            sTagData = matno + "!!";  //자재번호
            sTagData += zserial + "!!";  //일련번호
            sTagData += mname + "!!";  //품명
            sTagData += unit + "!!";  //단위
            sTagData += qg + "!!";  //품질등급
            sTagData += sg + "!!";  //저장등급
            sTagData += findate + "!!";  //입고일
            sTagData += pono + "!!";  //PO번호
            sTagData += spyname + "!!";  //공급자
            sTagData += mblnr + "!!";  //입고문서
            sTagData += reqman + "!!";  //관리자
            sTagData += epc_code + "!!";  //태그번호(Writing)
            sTagData += "rn";


            TagPrint_DLL.setTagDts(sTagData);
            StringBuilder sb = new StringBuilder(512);
            int iResult = TagPrint_DLL.TagPrint(sb);


===========================================================


요놈이 직접 exe파일을 실행할때는 인쇄도 잘되는데 SAP에서 호출할때는 그냥 먹통입니다.


그래서 결론을 봤습니다. "WS_EXECUTE" 호출 펑션을 바꿔보자..
그래서 바꿧습니다. 아래와 같이..

CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
application = lc_prog
parameter = lc_param
synchronous = 'X'
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
bad_parameter = 3
file_not_found = 4
path_not_found = 5
file_extension_unknown = 6
error_execute_failed = 7
OTHERS = 8


 


위와같은 메소드로 바꿧지요. 그래도 현상은 똑같습니다.


sap에서 혹시 Legacy 시스템을 호출해서 프린트를 한다던지 유사한 사례가 있으신분의


칼날같은 댓글을 기다려 봅니다.


 


 

번호 제목 글쓴이 날짜 조회 수
5687 <img src=3.gif>ME21N -구매오더 생성 혹은 구매오더 변경 관련 EXITF & BADI 질문입니다. [3] lucky7. 2010.12.30 2442
» <img src=3.gif>"WS_EXECUTE"를 이용한 C# 인쇄프로그램호출시 프린트 에러 [2] 양키 2010.12.29 2674
5685 <img src=3.gif>[MM] 구매 송장 검증 처리 시 이동평균가 마이너스 오류 질문 [3] file 아바뻐 2010.12.29 3093
5684 <img src=2.gif>유지보수뷰관해 안녕하세요 아밥 초보입니다. 질문이 있는데요 꼭 읽어 주시기를 .. [4] file 푸른물고기 2010.12.29 1877
5683 <img src=3.gif>본 화면에 아이템 하나를 체크하고 메뉴버튼(만든거)을 누르면 다른 화면을 하나 띄우는데 값 전달이 제대로 안됩니다... [2] beginer 2010.12.29 1359
5682 <img src=2.gif>매크로 관련 질문드립니다.도와주세요... [2] file EMDTLS 2010.12.29 1624
5681 <img src=3.gif><img src=1.gif>지급조서 파일 생성 할때 TYPE ABAP_ENDIA 관련 질문입니다. 열공합시다 2010.12.29 1652
5680 <img src=3.gif>perform문에 쓰이는 using과 changing 그리고 테이블에 대해서... [3] 열공합시다 2010.12.29 2420
5679 <img src=2.gif>테이블 유지보수 뷰 관련 질문입니다. ^^ [6] file 크리스마스 2010.12.29 2498
5678 <img src=3.gif>메모리 ID 의 현재 값을 알 수 있을까요? 다른 유저꺼 포함해서요. [4] 기쁨 2010.12.29 1642
5677 <img src=2.gif>ALV에서 필터관련.. [1] 행보관 2010.12.28 2047
5676 <img src=2.gif>키 필드 중복 append 가능하도록 하려면?? [1] imgood 2010.12.28 2050
5675 <img src=2.gif>EXCEL 자료를 TABLE 로 옮기는 방법에 관해 궁금합니다. [4] worbs0909 2010.12.28 1457
5674 <img src=3.gif>REPORT PROGRAM에서 중복 sql 질문 드립니다. [7] 깐돌 2010.12.27 1297
5673 <img src=2.gif>alv화면에서 스탠다드 기능(drill down)이 안됩니다..ㅠ [1] 초밥 2010.12.27 1604
5672 <img src=3.gif>아밥딕셔너리 테이블과 인터널테이블 질문이요.. [3] 행보관 2010.12.25 1528
5671 <img src=2.gif>ALV 에서 체크박스에 체크할때 체크필드값이 한라인씩 늦게 나옵니다.. [2] 푸른물고기 2010.12.25 1795
5670 <img src=1.gif>[함수] Call Browser 를 이용해서 URL을 주고 익스플로러 창을 띄울 때 문제점에 대해 문의드립니다. file 래피드 2010.12.25 2194
5669 <img src=3.gif>Debuging 시 Internal table 데이터 다운 [3] 여리 2010.12.24 1343
5668 <img src=3.gif>AT SELECTION-SCREEN ON VALUE-REQUEST 에 대해 질문이요~ [2] 행보관 2010.12.24 2067