Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Is there any BAPI for G/L ACCOUNT POSTING

Former Member
0 Kudos

HI

Is there any BAPI for G/L ACCOUNT POSTING (trasaction f-02). If it is there plz let me know. and how to proceed for that.

Regards

Sri

3 REPLIES 3

Former Member
0 Kudos

Hi,

The commonly used BAPI for G/L posting is :

BAPI_ACC_DOCUMENT_POST


* call BAPI-function in this system
  CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
    EXPORTING
      documentheader = documentheader
    IMPORTING
      obj_type       = l_type
      obj_key        = l_key
      obj_sys        = l_sys
    TABLES
      accountgl      = accountgl
      accountpayable = accountpayable
      currencyamount = currencyamount
      accounttax     = accounttax
      extension1     = extension1
      return         = return.

Hope this helps,

Erwan

Former Member
0 Kudos

Use BAPI_ACC_DOCUMENT_POST

CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'

EXPORTING

documentheader = <docheader>

IMPORTING

obj_type = <obj type>

obj_key = <obj key>

obj_sys = <obj sys>

TABLES

accountgl = <accgl>

accountpayable = <accpay>

currencyamount = <curramt>

accounttax = <acctax>

extension1 = <extn>

return = return.

ferry_lianto
Active Contributor
0 Kudos

Hi Sri,

You can use BAPI 'BAPI_ACC_GL_POSTING_POST.

Please check below sample code from other thread.


data: obj_type like bapiache02-obj_type,
      obj_key like bapiache02-obj_key,
      obj_sys like bapiache02-obj_sys,
      documentheader like bapiache08,
      accountgl like bapiacgl08 occurs 0 with header line,
      currencyamount like bapiaccr08 occurs 0 with header line,
      return like bapiret2 occurs 0 with header line,
      extension1 like bapiextc occurs 0 with header line,
      t_edidd like edidd occurs 0 with header line,
      bapi_retn_info like bapiret2 occurs 0 with header line.

data: error_flag.

*documentheader-obj_type = 'BKPFF'.
*documentheader-obj_key = '18000000002002004'.
*documentheader-obj_type = 'BKPFF'.
*documentheader-obj_key = '180000000010002004'.
*documentheader-obj_sys = 'RD1CLNT200'.

documentheader-username = sy-uname.
documentheader-header_txt = 'Test using BAPI'.
documentheader-comp_code = '1000'.

*documentheader-ac_doc_no
*documentheader-fisc_year = '2005'.

documentheader-doc_date = sy-datum.
documentheader-pstng_date = sy-datum.

*documentheader-trans_date
*documentheader-fis_period

documentheader-doc_type = 'SA'.

*documentheader-ref_doc_no
*documentheader-compo_acc
*documentheader-reason_rev

accountgl-itemno_acc = '1'.
accountgl-gl_account = '0000160100'.
accountgl-comp_code = '1000'.
accountgl-pstng_date = sy-datum.
accountgl-doc_type = 'SA'.
accountgl-profit_ctr = '0000010000'.
append accountgl.

accountgl-itemno_acc = '2'.
accountgl-gl_account = '0000160100'.
accountgl-comp_code = '1000'.
accountgl-pstng_date = sy-datum.
accountgl-doc_type = 'SA'.
accountgl-profit_ctr = '0000010000'.
append accountgl.

currencyamount-itemno_acc = '1'.
currencyamount-currency = 'GBP'.
currencyamount-amt_doccur = '100.00'.
append currencyamount.

currencyamount-itemno_acc = '2'.
currencyamount-currency = 'GBP'.
currencyamount-amt_doccur = '-100.00'.
append currencyamount.

call function 'BAPI_ACC_GL_POSTING_POST'
  exporting
    documentheader = documentheader
* importing
* obj_type = obj_type
* obj_key = obj_key
* obj_sys = obj_sys
  tables
    accountgl = accountgl
    currencyamount = currencyamount
    return = return
    extension1 = extension1
  exceptions
    others = 1.

if sy-subrc <> 0.
  message e999(re) with 'Problem occured'.
else.
  loop at return.
    if not return is initial.
      clear bapi_retn_info.
      move-corresponding return to bapi_retn_info.
      if return-type = 'A' or return-type = 'E'.
        error_flag = 'X'.
      endif.

      append bapi_retn_info.
    endif.
  endloop.

  if error_flag = 'X'.
    message e999(re) with 'Problem occured'.
    rollback work.
  else.
    commit work.
  endif.
endif.

Hope this will help.

Regards,

Ferry Lianto