‎2008 Mar 07 9:59 AM
Dear all
In selection screen when i select LFB1-AKONT field next i will click f4 for lfa1-lifnr its comes only for LFB1-AKONT related
how will change the following coding
SELECTION-SCREEN: BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
SELECT-OPTIONS : s_AKONT for LFB1-AKONT.
SELECT-OPTIONS : s_lifnr FOR lfa1-lifnr OBLIGATORY. "Vendor
SELECTION-SCREEN: END OF BLOCK b3.
Thanks and regards
Suresh
‎2008 Mar 07 10:01 AM
See the Sample selection screen . Create a new program and analyse .
......................................................................................................
&----
*& Report ZTEST_SCRIPT01
*&
&----
*&
*&
&----
REPORT ZTEST_SCRIPT01.
SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-100.
skip.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R4 RADIOBUTTON GROUP G2 DEFAULT 'X' MODIF ID S4 USER-COMMAND UK4.
SELECTION-SCREEN COMMENT 5(20) TEXT-041 FOR FIELD R4 .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R5 RADIOBUTTON GROUP G2 .
SELECTION-SCREEN COMMENT 5(20) TEXT-042 FOR FIELD R5 .
SELECTION-SCREEN END OF LINE.
skip.
SELECTION-SCREEN END OF BLOCK B4.
*selectio-screen for file names.
SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-005.
PARAMETERS : P_SESSN LIKE APQI-groupid modif id s5. "for session name
SELECTION-SCREEN END OF BLOCK B3.
*selectio-screen for file names.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
PARAMETERS : P_H_FILE TYPE IBIPPARMS-PATH MODIF ID S2. "Presentation server file(header)
PARAMETERS : P_I_FILE TYPE IBIPPARMS-PATH MODIF ID S2. "Presentation server file(item)
skip.
PARAMETERS : P_H_FIL1 TYPE IBIPPARMS-PATH MODIF ID S3. "Application server file(header)
PARAMETERS : P_I_FIL1 TYPE IBIPPARMS-PATH MODIF ID S3. "Application server file(item)
SELECTION-SCREEN END OF BLOCK B2.
selection-screen for radio buttons
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R1 RADIOBUTTON GROUP G1 DEFAULT 'X' MODIF ID S1 USER-COMMAND UK1.
SELECTION-SCREEN COMMENT 5(20) TEXT-003 FOR FIELD R1 .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS : R2 RADIOBUTTON GROUP G1 .
SELECTION-SCREEN COMMENT 5(20) TEXT-004 FOR FIELD R2 .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK B1.
to change the attributes of the screen
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF R5 = 'X' AND SCREEN-GROUP1 = 'S5'.
SCREEN-active = 0.
MODIFY SCREEN.
ENDIF.
IF R4 = 'X' AND SCREEN-GROUP1 = 'S5'.
SCREEN-active = 1.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
LOOP AT SCREEN.
IF R1 = 'X' AND SCREEN-GROUP1 = 'S3'.
SCREEN-INPUT = 0 .
MODIFY SCREEN.
ENDIF.
IF R2 = 'X' AND SCREEN-GROUP1 = 'S2'.
SCREEN-INPUT = 0 .
MODIFY SCREEN.
ENDIF.
ENDLOOP.
-
Thanks
Jagadeesh.G
‎2008 Mar 07 10:08 AM
Hi,
Modify the statement as given below and try out.
SELECT-OPTIONS : s_AKONT for LFB1-AKONT value-request.
Reward if helpful.
Regards.
‎2008 Mar 07 10:26 AM
Hello,
This is what you wanted.
REPORT ZV_F4 .
TABLES: LFB1.
SELECTION-SCREEN: BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.
SELECT-OPTIONS : S_AKONT FOR LFB1-AKONT.
SELECT-OPTIONS : S_LIFNR FOR LFB1-LIFNR . "Vendor
SELECTION-SCREEN: END OF BLOCK B3.
DATA BEGIN OF IT_RETN OCCURS 0.
INCLUDE STRUCTURE DDSHRETVAL.
DATA END OF IT_RETN.
*AT SELECTION-SCREEN ON S_AKONT.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_LIFNR-LOW.
DATA: BEGIN OF LT_LFB1 OCCURS 0,
LIFNR LIKE LFB1-LIFNR,
END OF LT_LFB1.
IF NOT S_AKONT[] IS INITIAL.
SELECT LIFNR FROM LFB1 INTO TABLE LT_LFB1 WHERE AKONT IN S_AKONT.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'LIFNR'
DYNPPROG = 'ZV_F4'
DYNPNR = '1000'
DYNPROFIELD = 'S_LIFNR-LOW'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = LT_LFB1
RETURN_TAB = IT_RETN
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.
LOOP AT IT_RETN WHERE RETFIELD = 'LIFNR'.
S_LIFNR-LOW = IT_RETN-FIELDVAL.
EXIT.
ENDLOOP.
ENDIF.
Cheers,
Vasanth
‎2008 Mar 07 11:18 AM
hi vasnth
thanks for reply
REPORT ZV_F4 .
TABLES: LFB1.
SELECTION-SCREEN: BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.
SELECT-OPTIONS : S_AKONT FOR LFB1-AKONT.
SELECT-OPTIONS : S_LIFNR FOR LFB1-LIFNR . "Vendor
SELECTION-SCREEN: END OF BLOCK B3.
DATA BEGIN OF IT_RETN OCCURS 0.
INCLUDE STRUCTURE DDSHRETVAL.
DATA END OF IT_RETN.
*AT SELECTION-SCREEN ON S_AKONT.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_LIFNR-LOW.
DATA: BEGIN OF LT_LFB1 OCCURS 0,
LIFNR LIKE LFB1-LIFNR,
END OF LT_LFB1.
IF NOT S_AKONT[] IS INITIAL.
SELECT LIFNR FROM LFB1 INTO TABLE LT_LFB1 WHERE AKONT IN S_AKONT.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'LIFNR'
DYNPPROG = 'ZV_F4'
DYNPNR = '1000'
DYNPROFIELD = 'S_LIFNR-LOW'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = LT_LFB1
RETURN_TAB = IT_RETN
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.
LOOP AT IT_RETN WHERE RETFIELD = 'LIFNR'.
S_LIFNR-LOW = IT_RETN-FIELDVAL.
EXIT.
ENDLOOP.
ENDIF.
but the coding not working how will rectify
Thanks and regards'
suresh
‎2008 Mar 07 11:21 AM
see this sample code
make ur code in this way
Hi
see this sample code you can understand very easily
tables : HRp1001.
TYPES : BEGIN OF ST_OBJID_SH,
OTYPE TYPE HRP1000-OTYPE,
OBJID TYPE HRP1000-OBJID,
END OF ST_OBJID_SH.
DATA : IT_OBJID_SH TYPE STANDARD TABLE OF ST_OBJID_SH.
DATA : WA_OBJID_SH TYPE ST_OBJID_SH.
***********SELECTION SCREEN DESIGN***********************
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
*SELECT-OPTIONS : S_OTYPE FOR HRP1001-OTYPE NO INTERVALS .
SELECT-OPTIONS : S_OBJID FOR HRP1001-OBJID NO INTERVALS .
SELECT-OPTIONS : DATE FOR SY-DATUM NO-EXTENSION OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.
**********END OF SELECTION SCREEN DESIGN*****************
*********VALIDATION FOR SCREEN FIELDS********************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_OBJID-LOW.
IF S_OBJID IS NOT INITIAL.
SELECT OTYPE OBJID FROM HRP1000
INTO TABLE IT_OBJID_SH
WHERE OTYPE = 'D'.
IF SY-SUBRC EQ 0.
SEARCH HELP FOR QUALIFICATION.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'OBJID'
PVALKEY = ' '
DYNPPROG = SY-REPID
DYNPNR = SY-DYNNR
DYNPROFIELD = 'S_OBJID'
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
VALUE_TAB = IT_OBJID_SH
FIELD_TAB =
RETURN_TAB = RETURN_TAB
DYNPFLD_MAPPING =
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.
ENDIF.
.
‎2008 Mar 07 11:23 AM
Hi,
try like this.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_LIFNR-LOW.
DATA: BEGIN OF LT_LFB1 OCCURS 0,
LIFNR LIKE LFB1-LIFNR,
END OF LT_LFB1.
IF NOT S_AKONT[] IS INITIAL.
SELECT LIFNR FROM LFB1 INTO TABLE LT_LFB1 WHERE AKONT IN S_AKONT.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'LIFNR'
DYNPPROG = sy-repid
DYNPNR = sy-dynnr
DYNPROFIELD = 'S_LIFNR-LOW'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = LT_LFB1[]
RETURN_TAB = IT_RETN[]
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.
LOOP AT IT_RETN WHERE RETFIELD = 'LIFNR'.
S_LIFNR-LOW = IT_RETN-FIELDVAL.
EXIT.
ENDLOOP.
ENDIF.
rgds,
bharat.
‎2008 Mar 07 11:17 AM
i Suresh,
as u said the selection screen contains two fields
1. LFB1-AKONT
2. LFA1-LIFNR.
each field will provide their own F4 help values, there is no direct link for both...but u r query is "In selection screen when i select LFB1-AKONT field next i will click f4 for lfa1-lifnr its comes only for LFB1-AKONT related" ,,could you pls explain a little bit brief..what actually u want to get....
Regards,
abhi
‎2008 Mar 07 11:23 AM
hi
if select yarn supplier means i will select 144001 this only comes yarn supplier only
how its possible?
Thanks and regard
Suresh