‎2008 Feb 06 11:14 AM
Hello Experts,
I am having a requirement , I am designing a screen ( Dialog Programming ) in which having two input fields , One Delivery number and Delivery line item. For Delivery number I am using the standard search help for selection . After I select the value for the Delivery number , for the Delivery line Item , when I press F4 , only that line Item in which present for the Delivery number should display.
Please guide me since it is an urgent requirement.
Points will be rewarded for the fruitful answer .
Thanks & Warm Regards
Nagaraj S.
‎2008 Feb 06 11:28 AM
hi,
u need to write this in screen flow logic after PAI.
PROCESS ON VALUE-REQUEST.
FIELD itab_det-vend_cust_code MODULE comp_help.
MODULE comp_help INPUT.
CHECK NOT zform_track_mast-comp_code IS INITIAL .
CLEAR: dyfields, dyfields.
REFRESH: dyfields, dyfields.
dyfields-fieldname = 'ZFORM_TRACK_MAST-COMP_CODE'.
APPEND dyfields.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-cprog
dynumb = sy-dynnr
TABLES
dynpfields = dyfields.
READ TABLE dyfields INDEX 1.
SELECT kna1kunnr kna1name1
INTO TABLE i_kna1
FROM kna1 INNER JOIN vbrk
ON kna1kunnr = vbrkkunag
WHERE vbrk~bukrs = dyfields-fieldvalue.
SORT i_kna1 BY kunnr.
DELETE ADJACENT DUPLICATES FROM i_kna1.
CLEAR value_tab.
CLEAR field_tab.
CLEAR return_tab.
REFRESH value_tab.
REFRESH field_tab.
REFRESH return_tab.
field_tab-fieldname = 'KUNNR'.
field_tab-tabname = 'KNA1'.
APPEND field_tab.
field_tab-fieldname = 'NAME1'.
field_tab-tabname = 'KNA1'.
APPEND field_tab.
CLEAR field_tab.
LOOP AT field_tab.
EXIT.
ENDLOOP.
LOOP AT i_kna1 .
value_tab-kunnr = i_kna1-kunnr.
APPEND value_tab.
CLEAR value_tab.
value_tab-name1 = i_kna1-name1.
APPEND value_tab.
ENDLOOP.
LOOP AT value_tab.
ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = field_tab-fieldname
TABLES
value_tab = value_tab
field_tab = field_tab
return_tab = return_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc = 0.
itab_det-vend_cust_code = return_tab-fieldval.
ENDIF.
ENDMODULE. " comp_help INPUT
here i am finding customer ( itab_det-vend_cust_code ) of entered company code ( ZFORM_TRACK_MAST-COMP_CODE ).....
here is my data declaration...
TYPES : BEGIN OF ty_kna1,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
END OF ty_kna1.
DATA : dyfields LIKE dynpread OCCURS 1 WITH HEADER LINE ,
i_kna1 TYPE TABLE OF ty_kna1 WITH HEADER LINE.
DATA : BEGIN OF wa_value_tab, " OCCURS 0,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
END OF wa_value_tab.
DATA : value_tab LIKE wa_value_tab OCCURS 0 WITH HEADER LINE.
DATA :field_tab LIKE dfies OCCURS 0 WITH HEADER LINE.
DATA : return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.
reward if usefull....
‎2008 Feb 06 11:28 AM
hi,
u need to write this in screen flow logic after PAI.
PROCESS ON VALUE-REQUEST.
FIELD itab_det-vend_cust_code MODULE comp_help.
MODULE comp_help INPUT.
CHECK NOT zform_track_mast-comp_code IS INITIAL .
CLEAR: dyfields, dyfields.
REFRESH: dyfields, dyfields.
dyfields-fieldname = 'ZFORM_TRACK_MAST-COMP_CODE'.
APPEND dyfields.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-cprog
dynumb = sy-dynnr
TABLES
dynpfields = dyfields.
READ TABLE dyfields INDEX 1.
SELECT kna1kunnr kna1name1
INTO TABLE i_kna1
FROM kna1 INNER JOIN vbrk
ON kna1kunnr = vbrkkunag
WHERE vbrk~bukrs = dyfields-fieldvalue.
SORT i_kna1 BY kunnr.
DELETE ADJACENT DUPLICATES FROM i_kna1.
CLEAR value_tab.
CLEAR field_tab.
CLEAR return_tab.
REFRESH value_tab.
REFRESH field_tab.
REFRESH return_tab.
field_tab-fieldname = 'KUNNR'.
field_tab-tabname = 'KNA1'.
APPEND field_tab.
field_tab-fieldname = 'NAME1'.
field_tab-tabname = 'KNA1'.
APPEND field_tab.
CLEAR field_tab.
LOOP AT field_tab.
EXIT.
ENDLOOP.
LOOP AT i_kna1 .
value_tab-kunnr = i_kna1-kunnr.
APPEND value_tab.
CLEAR value_tab.
value_tab-name1 = i_kna1-name1.
APPEND value_tab.
ENDLOOP.
LOOP AT value_tab.
ENDLOOP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = field_tab-fieldname
TABLES
value_tab = value_tab
field_tab = field_tab
return_tab = return_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc = 0.
itab_det-vend_cust_code = return_tab-fieldval.
ENDIF.
ENDMODULE. " comp_help INPUT
here i am finding customer ( itab_det-vend_cust_code ) of entered company code ( ZFORM_TRACK_MAST-COMP_CODE ).....
here is my data declaration...
TYPES : BEGIN OF ty_kna1,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
END OF ty_kna1.
DATA : dyfields LIKE dynpread OCCURS 1 WITH HEADER LINE ,
i_kna1 TYPE TABLE OF ty_kna1 WITH HEADER LINE.
DATA : BEGIN OF wa_value_tab, " OCCURS 0,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
END OF wa_value_tab.
DATA : value_tab LIKE wa_value_tab OCCURS 0 WITH HEADER LINE.
DATA :field_tab LIKE dfies OCCURS 0 WITH HEADER LINE.
DATA : return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.
reward if usefull....
‎2008 Feb 06 11:33 AM
Hi Nagaraj,
It is not advisable to write POV ,instead you create one search help,then write an exit for that search help.if you need help on search help exit plz let us know.
Regards
shibu