Application Development and Automation 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: 
Read only

Create Down payment Request (F-47)

Former Member
0 Likes
1,105

Hi Gurus,

Please find the code below, I am stuck and am not able to proceed.


TYPES : BEGIN OF ty_extension,

                field TYPE char250,

              END OF ty_extension,

              tty_extension TYPE STANDARD TABLE OF ty_extension.

Data:

     s_documentheader  TYPE bapiache09,

     s_documentheader  TYPE bapiache09,

     s_accountgl            TYPE bapiacgl09,

     s_acctpay              TYPE bapiacap09,

     s_currencyamount  TYPE bapiaccr09,

     s_return                 TYPE bapiret2,

     ls_extension1 TYPE bapiacextc,

     lt_extension1 TYPE /sappce/tt_dpc_bapiacextc,

     lv_string     TYPE string,

     v_obj_key           TYPE awkey,

     t_accountgl            TYPE bapiacgl09_tab,

     t_currencyamount   TYPE bapiaccr09_tab,

     t_acctpay               TYPE bapiacap09_tab,

     t_return                  TYPE bapiret2_t.

DEFINE mac_assign_extension.

     clear lv_string.

     concatenate &1 &2        into lv_string.

     concatenate &3 lv_string into &3 separated by ';'.

   END-OF-DEFINITION.

*-> prepare extension

   CONCATENATE '0001' '0000000010' "ls_accountpayable-itemno_acc

          INTO ls_extension1-field1.   " 0001 => running number for different purpose to triggering BTE "RWBAPI01"

   CONCATENATE 'BSTAT' 'S'  INTO ls_extension1-field2.

   mac_assign_extension 'BSCHL' '39' ls_extension1-field2.

   mac_assign_extension 'UMSKZ' 'F' ls_extension1-field2.

   mac_assign_extension 'ZUMSK' 'Z' ls_extension1-field2.

   mac_assign_extension 'SHKZG' 'H' ls_extension1-field2.

   APPEND ls_extension1 TO lt_extension1.

  s_documentheader-bus_act         = 'RFBU'.

   s_documentheader-username     = 'TESTER1'.

   s_documentheader-header_txt    = 'Down Payment Request'.

   s_documentheader-comp_code   = '1000'.

   s_documentheader-doc_date      = '20150603'.

   s_documentheader-pstng_date   = '20150603'.

   s_documentheader-doc_type      = 'KA'.

   s_documentheader-ref_doc_no   = 'PARK-TESTING_1'.

  s_accountgl-itemno_acc = '0000000001'.

  s_accountgl-gl_account = '0000000191'.

  s_accountgl-item_text = 'Testomg'.

  s_accountgl-comp_code = '1000'.

  s_accountgl-profit_ctr = 'PRFT_CTR'.

  APPEND s_accountgl TO  t_accountgl.

  s_currencyamount-itemno_acc = '0000000001'.

   s_currencyamount-currency   = 'USD'.

   s_currencyamount-amt_doccur = '190.25'.

   APPEND s_currencyamount TO t_currencyamount.

   s_acctpay-itemno_acc = '0000000002'.

   s_acctpay-vendor_no  = '0000219603'.

   s_acctpay-comp_code = '1000'.

   s_acctpay-profit_ctr = 'PRFT_CTR'.

   s_acctpay-sp_gl_ind = 'A'.

   APPEND s_acctpay TO t_acctpay.

   s_currencyamount-itemno_acc   = '0000000002'."l_itemno.

   s_currencyamount-currency = 'USD'."gs_vbkpf-waers.

   s_currencyamount-amt_doccur   = '-190.25'."gt_vbsegk-wrbtr.

   APPEND s_currencyamount TO t_currencyamount.


CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'

     EXPORTING

       documentheader = s_documentheader

     IMPORTING

       obj_key        = v_obj_key

     TABLES

       accountgl      = t_accountgl

       accountpayable = t_acctpay

       currencyamount = t_currencyamount

       extension1     = lt_extension1

*     return         = t_post_return.

return         = t_return.

I get the below errors and I am not able to proceed. I had browsed through the SDN Forums and google but couldnt find an solution.

ERW609Error in document: BKPFF $
ERW022FI/CO interface: Balance in transaction currency

Hi Gurus,

Please find the code below, I am stuck and am not able to proceed.


TYPES : BEGIN OF ty_extension,

                field TYPE char250,

              END OF ty_extension,

              tty_extension TYPE STANDARD TABLE OF ty_extension.

Data:

     s_documentheader  TYPE bapiache09,

     s_documentheader  TYPE bapiache09,

     s_accountgl            TYPE bapiacgl09,

     s_acctpay              TYPE bapiacap09,

     s_currencyamount  TYPE bapiaccr09,

     s_return                 TYPE bapiret2,

     ls_extension1 TYPE bapiacextc,

     lt_extension1 TYPE /sappce/tt_dpc_bapiacextc,

     lv_string     TYPE string,

     v_obj_key           TYPE awkey,

     t_accountgl            TYPE bapiacgl09_tab,

     t_currencyamount   TYPE bapiaccr09_tab,

     t_acctpay               TYPE bapiacap09_tab,

     t_return                  TYPE bapiret2_t.

DEFINE mac_assign_extension.

     clear lv_string.

     concatenate &1 &2        into lv_string.

     concatenate &3 lv_string into &3 separated by ';'.

   END-OF-DEFINITION.

*-> prepare extension

   CONCATENATE '0001' '0000000010' "ls_accountpayable-itemno_acc

          INTO ls_extension1-field1.   " 0001 => running number for different purpose to triggering BTE "RWBAPI01"

   CONCATENATE 'BSTAT' 'S'  INTO ls_extension1-field2.

   mac_assign_extension 'BSCHL' '39' ls_extension1-field2.

   mac_assign_extension 'UMSKZ' 'F' ls_extension1-field2.

   mac_assign_extension 'ZUMSK' 'Z' ls_extension1-field2.

   mac_assign_extension 'SHKZG' 'H' ls_extension1-field2.

   APPEND ls_extension1 TO lt_extension1.

  s_documentheader-bus_act         = 'RFBU'.

   s_documentheader-username     = 'TESTER1'.

   s_documentheader-header_txt    = 'Down Payment Request'.

   s_documentheader-comp_code   = '1000'.

   s_documentheader-doc_date      = '20150603'.

   s_documentheader-pstng_date   = '20150603'.

   s_documentheader-doc_type      = 'KA'.

   s_documentheader-ref_doc_no   = 'PARK-TESTING_1'.

  s_accountgl-itemno_acc = '0000000001'.

  s_accountgl-gl_account = '0000000191'.

  s_accountgl-item_text = 'Testomg'.

  s_accountgl-comp_code = '1000'.

  s_accountgl-profit_ctr = 'PRFT_CTR'.

  APPEND s_accountgl TO  t_accountgl.

  s_currencyamount-itemno_acc = '0000000001'.

   s_currencyamount-currency   = 'USD'.

   s_currencyamount-amt_doccur = '190.25'.

   APPEND s_currencyamount TO t_currencyamount.

   s_acctpay-itemno_acc = '0000000002'.

   s_acctpay-vendor_no  = '0000219603'.

   s_acctpay-comp_code = '1000'.

   s_acctpay-profit_ctr = 'PRFT_CTR'.

   s_acctpay-sp_gl_ind = 'A'.

   APPEND s_acctpay TO t_acctpay.

   s_currencyamount-itemno_acc   = '0000000002'."l_itemno.

   s_currencyamount-currency = 'USD'."gs_vbkpf-waers.

   s_currencyamount-amt_doccur   = '-190.25'."gt_vbsegk-wrbtr.

   APPEND s_currencyamount TO t_currencyamount.


CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'

     EXPORTING

       documentheader = s_documentheader

     IMPORTING

       obj_key        = v_obj_key

     TABLES

       accountgl      = t_accountgl

       accountpayable = t_acctpay

       currencyamount = t_currencyamount

       extension1     = lt_extension1

*     return         = t_post_return.

return         = t_return.

I get the below errors and I am not able to proceed. I had browsed through the SDN Forums and google but couldnt find an solution.

ERW609Error in document: BKPFF $
ERW022FI/CO interface: Balance in transaction currency
2 REPLIES 2
Read only

Former Member
0 Likes
767

Hi,

When passing data in Currency table for all the items , the sum of the items should be 0.

So instead of passing the SHKZG in the extension table pass the amount as -ve in the currency table.

Hope this helps.

Read only

0 Likes
767

Hi Gaurav,

If I comment the  SHKZG in the extension table, I get Balance in transaction currency error 😞