‎2008 Jun 16 7:32 AM
Dear all,
Can't we modify standard selection screen.
for a particular company code can we control the F4 of bankid in the standard selection screen.
if so plz help me.
if found satisfactory will be rewarded.
regards
samarendra.
‎2008 Jun 16 7:35 AM
Hi,
If the program is SAP standard program, you cannot do it.
Copy the standard program to Z and add search help to it.
Or try for any OSS notes available for that TCode.
Thanks,
Sriram Ponna.
‎2008 Jun 16 7:37 AM
Dear sriram,
its not a standard program.
its a Z program.
but how can i change the F4 values particular to a company code.
regards
samarendra
‎2008 Jun 16 7:40 AM
Hi,
Are you want to modify your's program selection screen.
If yes ,then i am giving you a sample code where for F4 help is brought by programming on screen.
sample code:
-
DATA:W_NAME1 TYPE DFIES-FIELDNAME,
W_NAME2 TYPE HELP_INFO-DYNPROFLD .
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-023.
SELECT-OPTIONS:S_PIDNUM FOR ZMST_PERMIT-ZPIDNUM ,
S_ENGDSC FOR ZMST_PERMIT-ZENGDSC NO INTERVALS LOWER CASE,
S_ARBDSC FOR ZMST_PERMIT-ZARBDSC NO INTERVALS LOWER CASE,
S_TARIFF FOR ZMST_PERMIT-ZTARIFF NO INTERVALS,
S_PERNUM FOR ZMST_PERMIT-ZPERNUM NO INTERVALS,
S_ARRPRT FOR ZMST_PERMIT-ZARRPRT NO INTERVALS MATCHCODE OBJECT ZMST_PORTS.
PARAMETER:P_PERTYP(2) TYPE C AS LISTBOX VISIBLE LENGTH 20.
SELECTION-SCREEN END OF BLOCK B1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-LOW.
W_NAME2 = 'S_PIDNUM-LOW'.
W_NAME1 = 'ZPIDNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-HIGH.
W_NAME2 = 'S_PIDNUM-HIGH'.
W_NAME1 = 'ZPIDNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ENGDSC-LOW.
W_NAME2 = 'S_ENGDSC'.
W_NAME1 = 'ZENGDSC'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ARBDSC-LOW.
W_NAME2 = 'S_ARBDSC'.
W_NAME1 = 'ZARBDSC'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_TARIFF-LOW.
W_NAME2 = 'S_TARIFF'.
W_NAME1 = 'ZTARIFF'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PERNUM-LOW.
W_NAME2 = 'S_PERNUM'.
W_NAME1 = 'ZPERNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
&----
*& Form F4_HELP
&----
text
----
--> p1 text
<-- p2 text
----
FORM F4_HELP USING: W_VAR TYPE DFIES-FIELDNAME
W_VAR1 TYPE HELP_INFO-DYNPROFLD .
Fetching data from zmst_permit for F4 help on PERMIT ID No.--
IF IT_PERMIT[] IS INITIAL.
SELECT ZPIDNUM
ZENGDSC
ZARBDSC
ZTARIFF
ZPERNUM
ZARRPRT
ZEFFDT
ZEXPDT
FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_PERMIT.
ENDIF.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = W_NAME1 " 'ZPIDNUM'
DYNPPROG = 'ZMSTR0022'
DYNPNR = SY-DYNNR
DYNPROFIELD = W_NAME2 "'S_PIDNUM'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = IT_PERMIT
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " F4_HELP
I hope this will help you out.
‎2008 Jun 16 9:41 AM
Dear sandip,
i have tried the logicwhich has been provided by you but it did not work.
it is not taking the values of s_bukrs after input and accordingly it is not fetching the values of the bankid.
selection-screen begin of block b1 with frame title text-001.
parameters: s_bukrs like bseg-bukrs obligatory.
select-options: s_belnr for bseg-belnr obligatory.
parameters: BANKID(4) obligatory." like BSEG-HBKID obligatory. "Bank ID
parameters: p_gjahr like bseg-gjahr obligatory.
selection-screen end of block b1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR bankid.
W_NAME2 = 'BANKID'.
W_NAME1 = 'BANKID'.
v_bukrs = s_bukrs.
PERFORM F4_HELP USING W_NAME1 W_NAME2 .
FORM F4_HELP USING: W_VAR TYPE DFIES-FIELDNAME
W_VAR1 TYPE HELP_INFO-DYNPROFLD .
*--Fetching data from zmst_permit for F4 help on PERMIT ID No.--------
select * from t012 into table it_bankid where bukrs = v_bukrs.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = W_var " 'ZPIDNUM'
DYNPPROG = sy-repid
DYNPNR = SY-DYNNR
DYNPROFIELD = W_var1 "'S_PIDNUM'
VALUE_ORG = 'C'
TABLES
VALUE_TAB = IT_bankid
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.
IF SY-SUBRC = 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " F4_HELPregards
samarendra
‎2008 Jun 16 9:45 AM
‎2008 Jun 16 11:26 AM
Hi all,
I could get the values of bankid when i hardcode the bukrs as 5000 in the earlier code.
but if i give s_bukrs it could not take the value of the company code.
how to get the value of the company code into s_bukrs.
regards
samarendra
Edited by: samarendra penugonda on Jun 16, 2008 12:26 PM
‎2008 Jun 16 11:49 AM
Hi all,
Got it guys.
i have to read the value of the selection screen into an internal table using a FM and then use that value to fetch the records accordingly.
thankyou all
regards
samarendra
‎2008 Jun 16 11:50 AM