‎2008 Aug 20 10:51 AM
Hi All,
We are trying to create Service entry sheet using BAPI_ENTRYSHEET_CREATE using the follwonig code:
DATA: wa_header TYPE bapiessrc,
i_return TYPE bapiret2 OCCURS 0 WITH HEADER LINE,
ws_entrysheet_no TYPE bapiessr-sheet_no,
i_service TYPE bapiesllc OCCURS 0 WITH HEADER LINE,
i_service_acc TYPE bapiesklc OCCURS 0 WITH HEADER LINE,
i_service_text TYPE bapieslltx OCCURS 0 WITH HEADER LINE,
i_account TYPE bapiesknc OCCURS 0 WITH HEADER LINE,
i_accass TYPE bapiesknc OCCURS 0 WITH HEADER LINE,
ws_pack_no TYPE packno.
DATA: ws_po TYPE bapiekko-po_number,
po_items TYPE bapiekpo OCCURS 0 WITH HEADER LINE,
po_services TYPE bapiesll OCCURS 0 WITH HEADER LINE,
po_accass TYPE bapiekkn OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF wa_po_header OCCURS 1.
INCLUDE STRUCTURE bapiekkol.
DATA: END OF wa_po_header.
DATA: BEGIN OF bapi_return_po OCCURS 1.
INCLUDE STRUCTURE bapireturn.
DATA: END OF bapi_return_po.
DATA: serial_no LIKE bapiesknc-serial_no,
line_no LIKE bapiesllc-line_no.
DATA: bapi_esll LIKE bapiesllc OCCURS 1 WITH HEADER LINE.
ws_po = '4500146696'.
CALL FUNCTION 'BAPI_PO_GETDETAIL'
EXPORTING
purchaseorder = ws_po
items = 'X'
services = 'X'
IMPORTING
po_header = wa_po_header
TABLES
po_items = po_items
po_item_services = po_services
return = bapi_return_po.
wa_header-po_number = po_items-po_number.
wa_header-po_item = po_items-po_item.
wa_header-short_text = 'Sample'.
wa_header-pckg_no = 1.
wa_header-acceptance = 'X'.
wa_header-doc_date = '20080819'.
wa_header-post_date = '20080819'.
serial_no = 0.
line_no = 1.
bapi_esll-pckg_no = 1.
bapi_esll-line_no = line_no.
bapi_esll-outl_level = '0'.
bapi_esll-outl_ind = 'X'.
bapi_esll-subpckg_no = 2.
APPEND bapi_esll.
LOOP AT po_services WHERE NOT short_text IS INITIAL.
line_no = line_no + 1.
CLEAR bapi_esll.
bapi_esll-pckg_no = 2.
bapi_esll-line_no = line_no.
bapi_esll-service = po_services-service.
* bapi_esll-quantity = po_services-quantity.
bapi_esll-quantity = 1.
bapi_esll-gr_price = po_services-gr_price.
bapi_esll-price_unit = po_services-price_unit.
APPEND bapi_esll.
ENDLOOP.
LOOP AT po_accass .
i_accass-gl_account = po_accass-g_l_acct.
i_accass-bus_area = po_accass-bus_area.
i_accass-costcenter = po_accass-cost_ctr.
i_accass-co_area = po_accass-co_area.
APPEND i_accass.
ENDLOOP.
CALL FUNCTION 'BAPI_ENTRYSHEET_CREATE'
EXPORTING
entrysheetheader = wa_header
IMPORTING
entrysheet = ws_entrysheet_no
TABLES
entrysheetservices = bapi_esll
entrysheetaccountassignment = i_accass
return = i_return.In debugging we get a proper value in the parameter ws_entrysheet_no , but when we check in ml81n usig this ws_entrysheet_no
we get the error 'ws_entrysheet_no does not exists'.
What is the reason?
Thanks,
Anubhav.
‎2008 Aug 22 6:32 AM
Anubhav,
CALL FUNCTION 'BAPI_ENTRYSHEET_CREATE'
EXPORTING
ENTRYSHEETHEADER = BAPI_ESSR
TESTRUN = ' '"this parameter should be there
TABLES
ENTRYSHEETACCOUNTASSIGNMENT = BAPI_ESKN
ENTRYSHEETSERVICES = BAPI_ESLL
ENTRYSHEETSRVACCASSVALUES = BAPI_ESKL
RETURN = BAPI_RETURN.Amit.
‎2008 Aug 20 12:26 PM
hi,
after calling FM:BAPI_ENTRYSHEET_CREATE
Call below FM:
BAPI_TRANSACTION_COMMIT
Regards
jana
‎2008 Aug 22 5:46 AM
Hi Janardhan,
Even after using BAPI_TRANSACTION_COMMIT , i am facing the same issue.
But if remove the following code lines from the code in my previous post , i can see the SES in ml81n:
wa_header-acceptance = 'X'.
Please help,
Anubhav.
Edited by: Anubhav Jain on Aug 22, 2008 7:34 AM
‎2008 Aug 22 6:32 AM
Anubhav,
CALL FUNCTION 'BAPI_ENTRYSHEET_CREATE'
EXPORTING
ENTRYSHEETHEADER = BAPI_ESSR
TESTRUN = ' '"this parameter should be there
TABLES
ENTRYSHEETACCOUNTASSIGNMENT = BAPI_ESKN
ENTRYSHEETSERVICES = BAPI_ESLL
ENTRYSHEETSRVACCASSVALUES = BAPI_ESKL
RETURN = BAPI_RETURN.Amit.
‎2008 Aug 22 6:46 AM
Hi Amit,
TESTRUN is an optional parameter with default value as SPACE .
Though we try using it , still it makes no difference.
Thanks,
Anubhav.
‎2008 Aug 22 6:54 AM
Although it is optional but it should pass by value.
however pls take ahelp from OSS 505157,772974,574630,756917
‎2008 Aug 22 7:46 AM
Hi ,
Now we are getting the error '"Delivery note already used by the vendor"
Any clue?
Thanks,
Anubhav.