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

FM or BAPI for tcode F-44

Former Member
0 Likes
6,845

Please suggest bapi / fm for clearing vendor ( f-44 ).

I want to replace following bdc code by bapi / fm.

LOOP AT itab2 WHERE flagw NE 'X'.

*----- Erneutes Ausgleichen des Beleges--

-


IF z_augbl NE itab2-augbl.

IF NOT z_augbl IS INITIAL.

  • --> Funktion --> buchen

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'BDC_OKCODE' '=PA'.

PERFORM bdc_dynpro USING 'SAPDF05X' '3100'.

PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.

PERFORM bdc_transaction USING 'F-44'.

IF NOT i_flgtr IS INITIAL.

MESSAGE ID 'ZF' TYPE 'E' NUMBER '000' WITH

'Füllen der Mappe' p_mapp3 'mißglückt Beleg:' itab2-belnr.

EXIT.

ENDIF.

ENDIF.

z_augbl = itab2-augbl.

REFRESH bdcdata.

  • Einstieg : Fertigungsauftrag ändern

PERFORM bdc_dynpro USING 'SAPMF05A' '0131'.

PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-XPOS1(03)'.

PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

PERFORM bdc_field USING 'RF05A-AGKON' itab2-lifnr.

PERFORM bdc_field USING 'BKPF-BUDAT' z_budat.

PERFORM bdc_field USING 'BKPF-BUKRS' '0010'.

PERFORM bdc_field USING 'BKPF-WAERS' 'EUR'.

PERFORM bdc_field USING 'RF05A-XNOPS' 'X'.

PERFORM bdc_field USING 'RF05A-XPOS1(01)' ''.

PERFORM bdc_field USING 'RF05A-XPOS1(03)' 'X'.

ENDIF.

  • --> Funktion --> Einschränken auf Belegnummern

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'RF05A-SEL01(01)' itab2-belnr.

PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

ENDLOOP.

  • --> Funktion --> buchen

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'BDC_OKCODE' '=PA'.

PERFORM bdc_dynpro USING 'SAPDF05X' '3100'.

PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.

PERFORM bdc_transaction USING 'F-44'.

Thanks & regards,

Harshada

Please suggest bapi / fm for clearing vendor ( f-44 ).

I want to replace following bdc code by bapi / fm.

LOOP AT itab2 WHERE flagw NE 'X'.

*----- Erneutes Ausgleichen des Beleges--

-


IF z_augbl NE itab2-augbl.

IF NOT z_augbl IS INITIAL.

  • --> Funktion --> buchen

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'BDC_OKCODE' '=PA'.

PERFORM bdc_dynpro USING 'SAPDF05X' '3100'.

PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.

PERFORM bdc_transaction USING 'F-44'.

IF NOT i_flgtr IS INITIAL.

MESSAGE ID 'ZF' TYPE 'E' NUMBER '000' WITH

'Füllen der Mappe' p_mapp3 'mißglückt Beleg:' itab2-belnr.

EXIT.

ENDIF.

ENDIF.

z_augbl = itab2-augbl.

REFRESH bdcdata.

  • Einstieg : Fertigungsauftrag ändern

PERFORM bdc_dynpro USING 'SAPMF05A' '0131'.

PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-XPOS1(03)'.

PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

PERFORM bdc_field USING 'RF05A-AGKON' itab2-lifnr.

PERFORM bdc_field USING 'BKPF-BUDAT' z_budat.

PERFORM bdc_field USING 'BKPF-BUKRS' '0010'.

PERFORM bdc_field USING 'BKPF-WAERS' 'EUR'.

PERFORM bdc_field USING 'RF05A-XNOPS' 'X'.

PERFORM bdc_field USING 'RF05A-XPOS1(01)' ''.

PERFORM bdc_field USING 'RF05A-XPOS1(03)' 'X'.

ENDIF.

  • --> Funktion --> Einschränken auf Belegnummern

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'RF05A-SEL01(01)' itab2-belnr.

PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

ENDLOOP.

  • --> Funktion --> buchen

PERFORM bdc_dynpro USING 'SAPMF05A' '0731'.

PERFORM bdc_field USING 'BDC_OKCODE' '=PA'.

PERFORM bdc_dynpro USING 'SAPDF05X' '3100'.

PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.

PERFORM bdc_transaction USING 'F-44'.

Thanks & regards,

Harshada

3 REPLIES 3
Read only

Former Member
0 Likes
3,292

Hi,

try

1- BAPI_AR_ACC_GETBALANCEDITEMS

2- BAPI_ACC_INVOICE_RECEIPT_POST

Regards,

Aditya

Read only

Former Member
0 Likes
3,292

Hi,

Check if

BAPI_ACC_INVOICE_RECEIPT_POST or

BAPI_INCOMINGINVOICE_POST helps

Vikranth

Read only

0 Likes
3,292

Hi Harshada,

You can use is BAPI get F-44 items: BAPI_AP_ACC_GETOPENITEMS,

and use BAPI_ACC_DOCUMENT_POST cleaning vendor.