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
| User | Count |
|---|---|
| 6 | |
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |