‎2007 Jan 26 7:29 PM
i am using ME21n to upload data . but unable to scroll the table control ,
the table control currently holds three line .. data in three lines are filled but unable to insert in 4th line (unable to scroll table control in BDC)
using a BAPI would be difficut for me
‎2007 Jan 26 7:56 PM
Thanks Rich ,
Can u please guide me why to use me21 insted of me21n and what will be the process in me21
‎2007 Jan 26 7:43 PM
If you don't want to use a BAPI, you should use ME21 instead of ME21N. Here is an example of using the BAPI.
report zrich_0001.
constants : c_x value 'X'.
data: del_date type sy-datum.
data: pohead type bapimepoheader.
data: poheadx type bapimepoheaderx.
data: exp_head type bapimepoheader.
data: return type table of bapiret2 with header line.
data: poitem type table of bapimepoitem with header line.
data: poitemx type table of bapimepoitemx with header line.
data: posched type table of bapimeposchedule with header line.
data: poschedx type table of bapimeposchedulx with header line.
data: ex_po_number type bapimepoheader-po_number.
parameters: p_matnr type ekpo-matnr.
parameters: p_werks type ekpo-werks.
parameters: p_lgort type ekpo-lgort.
parameters: p_menge type ekpo-menge.
parameters: p_lifnr type ekko-lifnr.
parameters: p_ekorg type ekko-ekorg.
parameters: p_ekgrp type ekko-ekgrp.
parameters: p_bukrs type ekko-bukrs.
* Header Level Data
pohead-comp_code = p_bukrs.
pohead-doc_type = 'NB' .
pohead-creat_date = sy-datum .
pohead-vendor = p_lifnr.
pohead-purch_org = p_ekorg.
pohead-pur_group = p_ekgrp.
pohead-langu = sy-langu .
pohead-doc_date = sy-datum.
poheadx-comp_code = c_x.
poheadx-doc_type = c_x.
poheadx-creat_date = c_x.
poheadx-vendor = c_x.
poheadx-langu = c_x.
poheadx-purch_org = c_x.
poheadx-pur_group = c_x.
poheadx-doc_date = c_x.
* Item Level Data
poitem-po_item = 1.
poitem-material = p_matnr.
poitem-plant = p_werks.
poitem-stge_loc = p_lgort.
poitem-quantity = p_menge.
append poitem.
poitemx-po_item = 1.
poitemx-po_itemx = c_x.
poitemx-material = c_x.
poitemx-plant = c_x .
poitemx-stge_loc = c_x .
poitemx-quantity = c_x .
poitemx-tax_code = c_x .
poitemx-item_cat = c_x .
poitemx-acctasscat = c_x .
append poitemx.
* Schedule Line Level Data
posched-po_item = 1.
posched-sched_line = 1.
posched-del_datcat_ext = 'D'.
del_date = sy-datum + 1.
write del_date to posched-delivery_date.
posched-deliv_time = '000001'.
posched-quantity = p_menge.
append posched.
poschedx-po_item = 1.
poschedx-sched_line = 1.
poschedx-po_itemx = c_x.
poschedx-sched_linex = c_x.
poschedx-del_datcat_ext = c_x.
poschedx-delivery_date = c_x.
poschedx-quantity = c_x.
append poschedx.
call function 'BAPI_PO_CREATE1'
exporting
poheader = pohead
poheaderx = poheadx
testrun = ' '
importing
exppurchaseorder = ex_po_number
expheader = exp_head
tables
return = return
poitem = poitem
poitemx = poitemx
poschedule = posched
poschedulex = poschedx.
call function 'BAPI_TRANSACTION_COMMIT'
exporting
wait = 'X'.
if not ex_po_number is initial.
call function 'DEQUEUE_ALL'.
else.
call function 'DEQUEUE_ALL'.
* message i036.
endif.
Regards,
Rich Heilman
‎2007 Jan 26 7:56 PM
Thanks Rich ,
Can u please guide me why to use me21 insted of me21n and what will be the process in me21
‎2007 Jan 26 8:05 PM
Yes, ME21N is an enjoy transaction which was introduced in the Enjoy release 46c. It contains frontend controls which the BDC does not get along with very nicely. ME21 is the older version of the purchase order create and does not contain these controls, but anything that can be done(for the most part) in ME21N can be done in ME21.
So use ME21 instead. but again the BAPI is the best option. In the above code, I have done most of the work for you. You might want to try to implement it. There a lot of developers here that would be willing to help you thru the process if you get stuck, but you must first make the decision to go for it.
Regards,
Rich Heilman
‎2007 Jan 30 4:48 PM
Hi Rich
Thanks for your help , now i am using ME21 , please help me in scrollig table control of ME21
‎2007 Jan 30 9:14 PM
Thanks Rich your suggestions helped me a lot