09-19-2008 5:28 PM
Hi,
I am new to ABAP and i am facing the following problem,
When i enter value into p_vbeln (from f4 i am selecting vbak-vbeln into p_vbeln) and based on p_vbeln i want to generate f4 help for p_posnr, the following code not able to capture p_vbeln value, it's showing blank value (i used all the codes' available in sdn for dynp_values_read but not able to successed) Any wrong in my below code. Appreciate any help.
Parameters: p_vbeln type vbak-vbeln,
p_posnr type vbap-posnr.
write: p_vbeln.
At Selection-screen on value-request for p_posnr.
Data: Begin of help_item occurs 0,
posnr type vbap-posnr,
matnr type vbap-matnr,
arktx type vbap-arktx,
end of help_item.
Data: dynfields type table of dynpread with header line.
dynfields-fieldname = 'p_vbeln'.
append dynfields.
call function 'DYNP_VALUES_READ'
exporting
dyname = sy-cprog
dynumb = sy-dynnr
translate_to_upper = 'X'
Tables
dynpfields = dynfields
Exceptions
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronumber = 4
invalid_request = 5
no_fielddescription = 6
invalid_parameter = 7
undefined_error = 8
double_conversion = 9
stepl_not_found = 10
others = 11.
read table dynfields with key fieldname = 'p_vbeln'.
p_vbeln = dynfields-fieldvalue.
09-19-2008 5:33 PM
Whenever you pass the hardcoded value to any field, it should be in UPPER CASE.
Change this two statements:
dynfields-fieldname = 'P_VBELN'.
read table dynfields with key fieldname = 'P_VBELN'.
Regards,
Naimesh Patel
09-19-2008 5:51 PM
Modify the code like below.
Parameters: p_vbeln type vbak-vbeln,
p_posnr type vbap-posnr.
write: p_vbeln.
Data: Begin of help_item occurs 0,
posnr type vbap-posnr,
matnr type vbap-matnr,
arktx type vbap-arktx,
end of help_item.
Data: dynfields type table of dynpread with header line.
At Selection-screen on value-request for p_posnr.
dynfields-fieldname = 'P_VBELN'. <<<Change to Upper case
append dynfields.
call function 'DYNP_VALUES_READ'
exporting
dyname = sy-cprog
dynumb = sy-dynnr
translate_to_upper = 'X'
Tables
dynpfields = dynfields
Exceptions
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronumber = 4
invalid_request = 5
no_fielddescription = 6
invalid_parameter = 7
undefined_error = 8
double_conversion = 9
stepl_not_found = 10
others = 11.
read table dynfields with key fieldname = 'P_VBELN'. <<<Change to Upper case
p_vbeln = dynfields-fieldvalue.