해당 펑션 CN_SUCHE_FREIE_NUMMER 에서 팝업창 안뜨고 제안번호를 받을려면 어찌해야 하나요?
(프로젝트 코드 생성시 화면에 제안번호찾기 창 안뜨고 처리하려고 함)
CALL FUNCTION 'CN_SUCHE_FREIE_NUMMER'
EXPORTING
SEARCH_IMP = '1'
PROJ_S_IMP = 'R2007001'
IMPORTING
PROJ_EXP = P_OUTPUT.
아시는분 있으면 도움주시기 바랍니다..
댓글 4
-
백혜정
2007.09.14 00:00
-
GG
2007.09.14 07:15
NO_DIALOG 는 SEARCH_IMP값이 5일때만 안뜨는데 5일때는 FREE NUMBER를 찾지 못하네요... 그래서 난감합니다..
-
백혜정
2007.09.14 18:48
PS쪽인 듯 한데... 그쪽은 잘 몰라서...
반드시 'CN_SUCHE_FREIE_NUMMER' 사용하고 SEARCH_IMP이 만드시 '1'이어야한다면.. 별 도움이 안되겠군요.
그러나, 제안번호를 가져오는 로직이 필요한 거라면
기존의 function을 참고해서 별도록 function을 만드시거나, 프로그램 내에서 subroutine을 만드시면 어떨까요?
-
담데기
2007.09.14 23:19
팝업창을 원치 않으신다면.. search_imp 값을 입력하지 않으셔야 합니다만,
그런데 그 값을 받지 못하면 얻고자 하는 값을 얻기가 힘들게 되죠.
GG님이 말씀하신데로, FREE NUMBER를 찾지 못하죠!!
그래서 이건 어디까지나 제 의견이지만, 펑션문장을 불러오지 않고, 바로 스탠드 문장을 가져다가 코딩하시는 방법이 좋을 것 같아요.
그렇다면, 펑션문을 깊숙히 파고 들어가야되시겠죠.
만약, SEARCH_IMP = '1'인 값을 원하신다면,
해당 스크린에 -> MODULE USER_COMMAND 이 문장을 잘 들여다 보시기 바랍니다.
CLEAR CN00-PROPOSE.
CASE SEARCH.
WHEN 1.
if sy-tcode(3) = 'IMA'. "n.0204470
* Codierung fur Manfen prufen und ggf. umschlusseln "n.0204470
perform convert_coding_mask_for_im "n.0204470
using ' ' "n.0204470
changing proj-pspid "n.0204470
*proj-pspid "n.0204470
cn00-propose. "n.0204470
endif. "n.0204470
PERFORM GET_NEXT_NUMBER USING PROJ-PSPID
*PROJ-PSPID.
if sy-tcode(3) = 'IMA'. "n.0204470
* Umschlusselung fur Manfen ggf. zurucksetzen "n.0204470
perform convert_coding_mask_for_im "n.0204470
using 'X' "n.0204470
changing proj-pspid "n.0204470
*proj-pspid "n.0204470
cn00-propose. "n.0204470
endif. "n.0204470
H_START = PROJ-PSPID.
====================================================================
WHEN OK_WESU.
IF CN00-END <> 'X'.
CASE SEARCH.
WHEN 1.
IF H_START <> PROJ-PSPID.
CN00-PROPOSE = PROJ-PSPID.
H_START = CN00-PROPOSE.
ENDIF.
PERFORM GET_NEXT_NUMBER USING CN00-PROPOSE
*PROJ-PSPID.
아마도 이와같은 문장을 직접 스탠드로부터 가져와 코딩 하셔야 할거에요.
그리고 난 다음 DATA 선언과 Perform(이것도 당근 스탠드문장에서 가져와 코딩하셔야겠죠!!) 문 선언을 직접 해주셔야 합니다.
그럼 좋은 결과 있으시길..
함수의 기능이 궁금하시면, 'SE37'에서 해당 함수의 파라메터를 살펴보세요.
대부분의 문제는 해결되실 겁니다.
이번 경우에는 , 'NO_DIALOG' 파라메터를 사용해보십시오.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(SEARCH_IMP) LIKE RC27X-FLG_SEL DEFAULT '1'
*" VALUE(SEARCH_END_IMP) LIKE RC27X-FLG_SEL OPTIONAL
*" VALUE(PROJ_S_IMP) LIKE PROJ-PSPID OPTIONAL
*" VALUE(PRPS_S_IMP) LIKE PRPS-POSID OPTIONAL
*" VALUE(PROJS_S_IMP) LIKE PROJS-PSPID OPTIONAL
*" VALUE(PRPSS_S_IMP) LIKE PRPSS-POSID OPTIONAL
*" VALUE(VSKOPF_S_IMP) LIKE VSKOPF-VSNMR OPTIONAL
*" VALUE(PROJ_E_IMP) LIKE PROJ-PSPID OPTIONAL
*" VALUE(PRPS_E_IMP) LIKE PRPS-POSID OPTIONAL
*" VALUE(PROJS_E_IMP) LIKE PROJS-PSPID OPTIONAL
*" VALUE(PRPSS_E_IMP) LIKE PRPSS-POSID OPTIONAL
*" VALUE(VSKOPF_E_IMP) LIKE VSKOPF-VSNMR OPTIONAL
*" VALUE(WITHOUT_MASK_AT_END) LIKE RC27X-FLG_SEL
*" OPTIONAL
*" VALUE(REFRESH) OPTIONAL
*" VALUE(NO_DIALOG) LIKE RC27X-FLG_SEL OPTIONAL
*" EXPORTING
*" VALUE(PROJ_EXP) LIKE PROJ-PSPID
*" VALUE(PRPS_EXP) LIKE PRPS-POSID
*" VALUE(PROJS_EXP) LIKE PROJS-PSPID
*" VALUE(PRPSS_EXP) LIKE PRPSS-POSID
*" VALUE(VSKOPF_EXP) LIKE VSKOPF-VSNMR
*" TABLES
*" KEYTAB_IMP OPTIONAL
*" EXCEPTIONS
*" WRONG_SEARCH
*" SEARCH_CANCELED
*"----------------------------------------------------------------------