Hi Experts,
Am able to create PR number using BAPI_PR_CREATE, but when am trying to create Service line item am getting acc assignment error please check my code and solve my issue. ..its very adj please help me .
DATA : t_bapimereqitemimp TYPE TABLE OF bapimereqitemimp ,
t_bapimereqaccount TYPE TABLE OF bapimereqaccount,
t_bapimereqaccountx TYPE TABLE OF bapimereqaccountx,
t_pritemx TYPE TABLE OF bapimereqitemx,
wa_bapimereqitemimp TYPE bapimereqitemimp,
pr_number TYPE bapimereqheader-preq_no,
wa_prheader TYPE bapimereqheader,
wa_prheaderx TYPE bapimereqheaderx,
wa_pritemx TYPE bapimereqitemx,
wa_bapimereqaccountx TYPE bapimereqaccountx,
wa_bapimereqaccount TYPE bapimereqaccount,
t_return TYPE TABLE OF bapiret2,
wa_return TYPE bapiret2.
DATA : t_bapi_srv_limit_data TYPE TABLE OF bapi_srv_limit_data,
wa_bapi_srv_limit_data TYPE bapi_srv_limit_data.
DATA servicelimitx TYPE TABLE OF bapi_srv_limit_datax.
DATA w_servicelimitx TYPE bapi_srv_limit_datax.
DATA : t_servicelines TYPE TABLE OF bapi_srv_service_line,
w_servicelines TYPE bapi_srv_service_line,
t_servicelinesx TYPE TABLE OF bapi_srv_service_linex,
w_servicelinesx TYPE bapi_srv_service_linex,
t_bapi_srv_acc_data TYPE TABLE OF bapi_srv_acc_data,
w_bapi_srv_acc_data TYPE bapi_srv_acc_data,
t_bapi_srv_acc_datax TYPE TABLE OF bapi_srv_acc_datax,
w_bapi_srv_acc_datax TYPE bapi_srv_acc_datax.
DATA : t_bapimereqitem TYPE TABLE OF bapimereqitem,
w_bapimereqitem TYPE bapimereqitem.
DATA : t_bapimereqitemx TYPE TABLE OF bapimereqitemx,
w_bapimereqitemx TYPE bapimereqitemx.
wa_prheader-pr_type = 'RV'."lv_doc_type.
wa_prheaderx-pr_type = 'X'.
wa_bapimereqitemimp-preq_item = '1'."wa_eban-item.
wa_bapimereqitemimp-pur_group = '100'."wa_eban-ekgrp.
wa_bapimereqitemimp-preq_name = 'E.R. TITTO'."wa_eban-afnam.
wa_bapimereqitemimp-short_text = 'AC Fitting'."wa_eban-txz01.
wa_bapimereqitemimp-material = ' '."wa_eban-matnr.
wa_bapimereqitemimp-plant = '1000'."wa_eban-werks.
wa_bapimereqitemimp-store_loc = 'ST00'."wa_eban-lgort.
wa_bapimereqitemimp-matl_group = 'Z13'."wa_eban-matkl.
wa_bapimereqitemimp-quantity = '1'."wa_eban-menge.
wa_bapimereqitemimp-unit = 'AU'."wa_eban-meins.
wa_bapimereqitemimp-deliv_date = '20140604'."wa_eban-lfdat.
wa_bapimereqitemimp-preq_price = '100'."wa_eban-preis.
wa_bapimereqitemimp-item_cat = 'D'."wa_eban-pstyp.
wa_bapimereqitemimp-acctasscat = 'K'."wa_eban-knttp.
wa_bapimereqitemimp-fixed_vend = ' '."wa_eban-flief.
wa_bapimereqitemimp-purch_org = '1000'."wa_eban-ekorg.
wa_bapimereqitemimp-currency = 'INR'."wa_eban-waers.
wa_bapimereqitemimp-pckg_no = '00000001'.
wa_bapimereqaccount-preq_item = '1'."wa_eban-item.
*wa_bapimereqaccount-serial_no = '01'.
wa_bapimereqaccount-gl_account = '0000002244'."wa_eban-sakto.
wa_bapimereqaccount-costcenter = 'OPSD'."wa_eban-kostl.
APPEND wa_bapimereqitemimp TO t_bapimereqitemimp.
APPEND wa_bapimereqaccount TO t_bapimereqaccount.
wa_pritemx-preq_item = '1'."wa_eban-item.
wa_pritemx-pur_group = 'X'.
wa_pritemx-preq_name = 'X'.
wa_pritemx-short_text = 'X'.
wa_pritemx-material = 'X'.
wa_pritemx-plant = 'X'.
wa_pritemx-store_loc = 'X'.
wa_pritemx-matl_group = 'X'.
wa_pritemx-quantity = 'X'.
wa_pritemx-unit = 'X'.
wa_pritemx-deliv_date = 'X'.
wa_pritemx-preq_price = 'X'.
wa_pritemx-item_cat = 'X'.
wa_pritemx-acctasscat = 'X'.
wa_pritemx-fixed_vend = 'X'.
wa_pritemx-purch_org = 'X'.
wa_pritemx-currency = 'X'.
wa_pritemx-pckg_no = 'X'.
wa_bapimereqaccountx-preq_item = '1'."wa_eban-item.
*wa_bapimereqaccountx-serial_no = '01'.
wa_bapimereqaccountx-preq_itemx = 'X'.
wa_bapimereqaccountx-serial_nox = 'X'.
wa_bapimereqaccountx-gl_account = 'X'.
wa_bapimereqaccountx-costcenter = 'X'.
APPEND wa_pritemx TO t_pritemx.
APPEND wa_bapimereqaccountx TO t_bapimereqaccountx.
**Service item limit
*wa_bapi_srv_limit_data-doc_item = '10'.
wa_bapi_srv_limit_data-overall_limit = '1000'.
wa_bapi_srv_limit_data-exp_value = '800'.
APPEND wa_bapi_srv_limit_data TO t_bapi_srv_limit_data.
*w_servicelimitx-doc_item = '10'.
w_servicelimitx-overall_limit = 'X'.
w_servicelimitx-exp_value = 'X'.
APPEND w_servicelimitx TO servicelimitx.
*
w_bapimereqitem-preq_item = '10'.
***w_bapimereqitem-preq_name = 'E.R. TITTO'.
***w_bapimereqitem-plant = '1000'.
***w_bapimereqitem-store_loc = 'ST00'.
***w_bapimereqitem-matl_group = 'Z03'.
***w_bapimereqitem-quantity = '1'.
***w_bapimereqitem-unit = 'AU'.
w_bapimereqitem-item_cat = 'D'.
w_bapimereqitem-deliv_time = '20140604'.
w_bapimereqitem-acctasscat = 'K'.
**w_bapimereqitem-consumpt = 'U'.
****
APPEND w_bapimereqitem TO t_bapimereqitem.
**w_bapi_srv_acc_data-doc_item = '1'.
**w_bapi_srv_acc_data-outline = '0000000001'.
*w_bapi_srv_acc_data-srv_line = '20'.
w_bapi_srv_acc_data-serial_no = '10'.
w_bapi_srv_acc_data-serial_no_item = 'D'.
*w_bapi_srv_acc_data-quantity = '1'.
*APPEND w_bapi_srv_acc_data TO t_bapi_srv_acc_data.
*
**w_bapi_srv_acc_datax-doc_item = '1'.
**w_bapi_srv_acc_datax-outline = '0000000001'.
*w_bapi_srv_acc_datax-srv_line = '20'.
**w_bapi_srv_acc_datax-serial_no = '01'.
**w_bapi_srv_acc_datax-serial_no_item = '01'.
*w_bapi_srv_acc_datax-quantity = '1'.
*APPEND w_bapi_srv_acc_datax TO t_bapi_srv_acc_datax.
w_servicelines-service = '00000001'.
APPEND w_servicelines TO t_servicelines.
*
w_servicelinesx-service = 'X'.
APPEND w_servicelinesx TO t_servicelinesx.
CALL FUNCTION 'BAPI_PR_CREATE'
EXPORTING
prheader = wa_prheader
prheaderx = wa_prheaderx
IMPORTING
number = pr_number
TABLES
return = t_return
pritem = t_bapimereqitemimp
pritemx = t_pritemx
pritemexp = t_bapimereqitem
praccount = t_bapimereqaccount
praccountx = t_bapimereqaccountx
servicelimit = t_bapi_srv_limit_data
servicelimitx = servicelimitx
servicelines = t_servicelines
servicelinesx = t_servicelinesx
serviceaccount = t_bapi_srv_acc_data
serviceaccountx = t_bapi_srv_acc_datax.