예를들어
A 프로그램이 있습니다.
Legacy 프로그램에서 web으로 접속하여 A프로그램을 사용하고
SAP GUI에서 A프로그램을 사용하는 2가지 경우가 있습니다.
이때 A프로그램에서 각각의 경로 CASE에 따라 제어를 하고 싶습니다.
이때 구별할 수 있는 시스템 변수 (SYST 테이블 필드값)가 있는지 궁금합니다.
감사합니다..
댓글 5
-
남산밑
2009.08.19 19:31
-
요요
2009.08.19 22:55
web 에서 들어올경우 RFC 를 펑션을 사용하신다면 아마도 rfc-user ID로 로그인을 해서 들어올텐데요.
sy-uname 에 해당 RFC user ID 가 들어올 거예요. 그것으로 web 실행인지 SAP Gui 실행인지
구분하실 수 있을 것 같네요.
-
늙은 밥퍼
2009.08.20 02:41
아래 필드를 참조하심이.. 어떨지요..
SY-CALLD, SY-CPROG
SY-CALLD contains SPACE if the program is the first and only program in a call chain. SY_CALLD contains 'X' if the program is a called program in a call chain.
· SY-CALLD is set to ‘X‘ in a program called using CALL TRANSACTION, CALL DIALOG, or SUBMIT … AND RETURN.
· SY-CALLD is set to space in a program called using LEAVE TO TRANSACTION, entering a transaction code on a screen, and processing batch input folders.
· With SUBMIT (without RETURN) SY-CALLD retains the previous value.
-
늙은 밥퍼
2009.08.20 02:42
참고로 나머지 SYST 정보는
http://help.sap.com/erp2005_ehp_04/helpdata/EN/7b/fb96c8882811d295a90000e8353423/frameset.htm
를 참조하세요
-
남산밑
2009.08.20 08:37
답변주신 분들께 감사 드립니다.
제가 설명이 부족 했네요..
web으로 접속시 short cut 방식으로 SAP ID와 비번등을 던지기 때문에 SY-CALLD는 웹으로 인식하지 않습니다.
결국 A와 B의 디버깅 결과는 같습니다.
개인별 SAP ID를 가지고 와서 어렵네요..