on 05-02-2006 12:35 PM
How do I fill up POSTING_INTERFACE_CLEARING ? I am using it for FB05.
I_AUGLV EINGZAHL(incoming payment)
I_TCODE FB05
header:
doc and posting date.
Doctype . DZ.
currency USD.
company code : say 1000
items :
40(debit) ACC1 5000$ PRCTR1
items to be cleared:
i want to choose open items by document # (FB05)
The a/c type would be D.
customers would belong to the same company code (1000).
Where do i fill in the document nos. ? (the select options in FB05 on Process open items.)
Please give me an example to fill T_FTCLEAR and T_FTPOST.
This is damn urgent... please help..
Thanks in advance...
Hi Subramaniam,
Please, help me. send me a sample how to using POSTING_INTERFACE_CLEARING with structure T_FTCLEAR and T_FTPOST.
e-mail: rogerio.leite@pwco.com.br
Thanks in advance.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
*----
FORM FILL_FTPOST_WITH_BBKPF_DATA.
*----
form fill_ftpost_with_bbkpf_data.
check fl_check = space.
check function ne 'D'.
clear ftpost.
ftpost-stype = 'K'.
ftpost-count = '001'.
if bbkpf-bldat(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BLDAT '.
ftpost-fval = bbkpf-bldat .
append ftpost.
endif.
if bbkpf-blart(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BLART '.
ftpost-fval = bbkpf-blart .
append ftpost.
endif.
if bbkpf-bukrs(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BUKRS '.
ftpost-fval = bbkpf-bukrs .
append ftpost.
endif.
if bbkpf-budat(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BUDAT '.
ftpost-fval = bbkpf-budat .
append ftpost.
endif.
if bbkpf-monat(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-MONAT '.
ftpost-fval = bbkpf-monat .
append ftpost.
endif.
if bbkpf-waers(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-WAERS '.
ftpost-fval = bbkpf-waers .
append ftpost.
endif.
if bbkpf-kursf(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-KURSF '.
ftpost-fval = bbkpf-kursf .
append ftpost.
endif.
if bbkpf-belnr(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BELNR '.
ftpost-fval = bbkpf-belnr .
append ftpost.
endif.
if bbkpf-wwert(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-WWERT '.
ftpost-fval = bbkpf-wwert .
append ftpost.
endif.
if bbkpf-xblnr(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-XBLNR '.
ftpost-fval = bbkpf-xblnr .
append ftpost.
endif.
if bbkpf-bvorg(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BVORG '.
ftpost-fval = bbkpf-bvorg .
append ftpost.
endif.
if bbkpf-bktxt(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BKTXT '.
ftpost-fval = bbkpf-bktxt .
append ftpost.
endif.
if bbkpf-pargb(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'RF05A-PARGB '.
ftpost-fval = bbkpf-pargb .
append ftpost.
endif.
if bbkpf-vbund(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-VBUND '.
ftpost-fval = bbkpf-vbund .
append ftpost.
endif.
if bbkpf-xmwst(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-XMWST '.
ftpost-fval = bbkpf-xmwst .
append ftpost.
endif.
if bbkpf-docid(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'FS006-DOCID '.
ftpost-fval = bbkpf-docid .
append ftpost.
endif.
if bbkpf-barcd(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'FS006-BARCD '.
ftpost-fval = bbkpf-barcd .
append ftpost.
endif.
if bbkpf-stodt(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-STODT '.
ftpost-fval = bbkpf-stodt .
append ftpost.
endif.
if bbkpf-brnch(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-BRNCH '.
ftpost-fval = bbkpf-brnch .
append ftpost.
endif.
if bbkpf-numpg(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-NUMPG '.
ftpost-fval = bbkpf-numpg .
append ftpost.
endif.
if bbkpf-stgrd(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-STGRD '.
ftpost-fval = bbkpf-stgrd .
append ftpost.
endif.
if bbkpf-kursf_m(1) ne nodata.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-KURSF_M '.
ftpost-fval = bbkpf-kursf_m .
append ftpost.
endif.
Alejandro
nro_asiento = nro_asiento + 1.
aux_sistema = zsist.
aux_lote = zlote.
concatenate aux_sistema '-' aux_lote '-' nro_asiento into aux_awkey.
Agregado de los campos clave
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-AWTYP '.
ftpost-fval = 'IBKPF' .
append ftpost.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-AWKEY '.
ftpost-fval = aux_awkey .
append ftpost.
clear: ftpost-fnam, ftpost-fval.
ftpost-fnam = 'BKPF-AWSYS '.
ftpost-fval = 'SAD_220' .
append ftpost.
endform.
*----
FORM FILL_FTCLEAR_WITH_BSELP_DATA.
*----
form fill_ftclear_with_bselp_data.
check fl_check = space.
if bselp-feldn_1(1) ne nodata
or bselp-slvon_1(1) ne nodata
or bselp-slbis_1(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_1(1) ne nodata.
ftclear-selfd = bselp-feldn_1 .
endif.
if bselp-slvon_1(1) ne nodata.
ftclear-selvon = bselp-slvon_1 .
endif.
if bselp-slbis_1(1) ne nodata.
ftclear-selbis = bselp-slbis_1 .
endif.
append ftclear.
endif.
if bselp-feldn_2(1) ne nodata
or bselp-slvon_2(1) ne nodata
or bselp-slbis_2(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_2(1) ne nodata.
ftclear-selfd = bselp-feldn_2 .
endif.
if bselp-slvon_2(1) ne nodata.
ftclear-selvon = bselp-slvon_2 .
endif.
if bselp-slbis_2(1) ne nodata.
ftclear-selbis = bselp-slbis_2 .
endif.
append ftclear.
endif.
if bselp-feldn_3(1) ne nodata
or bselp-slvon_3(1) ne nodata
or bselp-slbis_3(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_3(1) ne nodata.
ftclear-selfd = bselp-feldn_3 .
endif.
if bselp-slvon_3(1) ne nodata.
ftclear-selvon = bselp-slvon_3 .
endif.
if bselp-slbis_3(1) ne nodata.
ftclear-selbis = bselp-slbis_3 .
endif.
append ftclear.
endif.
if bselp-feldn_4(1) ne nodata
or bselp-slvon_4(1) ne nodata
or bselp-slbis_4(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_4(1) ne nodata.
ftclear-selfd = bselp-feldn_4 .
endif.
if bselp-slvon_4(1) ne nodata.
ftclear-selvon = bselp-slvon_4 .
endif.
if bselp-slbis_4(1) ne nodata.
ftclear-selbis = bselp-slbis_4 .
endif.
append ftclear.
endif.
if bselp-feldn_5(1) ne nodata
or bselp-slvon_5(1) ne nodata
or bselp-slbis_5(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_5(1) ne nodata.
ftclear-selfd = bselp-feldn_5 .
endif.
if bselp-slvon_5(1) ne nodata.
ftclear-selvon = bselp-slvon_5 .
endif.
if bselp-slbis_5(1) ne nodata.
ftclear-selbis = bselp-slbis_5 .
endif.
append ftclear.
endif.
if bselp-feldn_6(1) ne nodata
or bselp-slvon_6(1) ne nodata
or bselp-slbis_6(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_6(1) ne nodata.
ftclear-selfd = bselp-feldn_6 .
endif.
if bselp-slvon_6(1) ne nodata.
ftclear-selvon = bselp-slvon_6 .
endif.
if bselp-slbis_6(1) ne nodata.
ftclear-selbis = bselp-slbis_6 .
endif.
append ftclear.
endif.
if bselp-feldn_7(1) ne nodata
or bselp-slvon_7(1) ne nodata
or bselp-slbis_7(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_7(1) ne nodata.
ftclear-selfd = bselp-feldn_7 .
endif.
if bselp-slvon_7(1) ne nodata.
ftclear-selvon = bselp-slvon_7 .
endif.
if bselp-slbis_7(1) ne nodata.
ftclear-selbis = bselp-slbis_7 .
endif.
append ftclear.
endif.
if bselp-feldn_8(1) ne nodata
or bselp-slvon_8(1) ne nodata
or bselp-slbis_8(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_8(1) ne nodata.
ftclear-selfd = bselp-feldn_8 .
endif.
if bselp-slvon_8(1) ne nodata.
ftclear-selvon = bselp-slvon_8 .
endif.
if bselp-slbis_8(1) ne nodata.
ftclear-selbis = bselp-slbis_8 .
endif.
append ftclear.
endif.
if bselp-feldn_9(1) ne nodata
or bselp-slvon_9(1) ne nodata
or bselp-slbis_9(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_9(1) ne nodata.
ftclear-selfd = bselp-feldn_9 .
endif.
if bselp-slvon_9(1) ne nodata.
ftclear-selvon = bselp-slvon_9 .
endif.
if bselp-slbis_9(1) ne nodata.
ftclear-selbis = bselp-slbis_9 .
endif.
append ftclear.
endif.
if bselp-feldn_10(1) ne nodata
or bselp-slvon_10(1) ne nodata
or bselp-slbis_10(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_10(1) ne nodata.
ftclear-selfd = bselp-feldn_10 .
endif.
if bselp-slvon_10(1) ne nodata.
ftclear-selvon = bselp-slvon_10 .
endif.
if bselp-slbis_10(1) ne nodata.
ftclear-selbis = bselp-slbis_10 .
endif.
append ftclear.
endif.
if bselp-feldn_11(1) ne nodata
or bselp-slvon_11(1) ne nodata
or bselp-slbis_11(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_11(1) ne nodata.
ftclear-selfd = bselp-feldn_11 .
endif.
if bselp-slvon_11(1) ne nodata.
ftclear-selvon = bselp-slvon_11 .
endif.
if bselp-slbis_11(1) ne nodata.
ftclear-selbis = bselp-slbis_11 .
endif.
append ftclear.
endif.
if bselp-feldn_12(1) ne nodata
or bselp-slvon_12(1) ne nodata
or bselp-slbis_12(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_12(1) ne nodata.
ftclear-selfd = bselp-feldn_12 .
endif.
if bselp-slvon_12(1) ne nodata.
ftclear-selvon = bselp-slvon_12 .
endif.
if bselp-slbis_12(1) ne nodata.
ftclear-selbis = bselp-slbis_12 .
endif.
append ftclear.
endif.
if bselp-feldn_13(1) ne nodata
or bselp-slvon_13(1) ne nodata
or bselp-slbis_13(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_13(1) ne nodata.
ftclear-selfd = bselp-feldn_13 .
endif.
if bselp-slvon_13(1) ne nodata.
ftclear-selvon = bselp-slvon_13 .
endif.
if bselp-slbis_13(1) ne nodata.
ftclear-selbis = bselp-slbis_13 .
endif.
append ftclear.
endif.
if bselp-feldn_14(1) ne nodata
or bselp-slvon_14(1) ne nodata
or bselp-slbis_14(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_14(1) ne nodata.
ftclear-selfd = bselp-feldn_14 .
endif.
if bselp-slvon_14(1) ne nodata.
ftclear-selvon = bselp-slvon_14 .
endif.
if bselp-slbis_14(1) ne nodata.
ftclear-selbis = bselp-slbis_14 .
endif.
append ftclear.
endif.
if bselp-feldn_15(1) ne nodata
or bselp-slvon_15(1) ne nodata
or bselp-slbis_15(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_15(1) ne nodata.
ftclear-selfd = bselp-feldn_15 .
endif.
if bselp-slvon_15(1) ne nodata.
ftclear-selvon = bselp-slvon_15 .
endif.
if bselp-slbis_15(1) ne nodata.
ftclear-selbis = bselp-slbis_15 .
endif.
append ftclear.
endif.
if bselp-feldn_16(1) ne nodata
or bselp-slvon_16(1) ne nodata
or bselp-slbis_16(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_16(1) ne nodata.
ftclear-selfd = bselp-feldn_16 .
endif.
if bselp-slvon_16(1) ne nodata.
ftclear-selvon = bselp-slvon_16 .
endif.
if bselp-slbis_16(1) ne nodata.
ftclear-selbis = bselp-slbis_16 .
endif.
append ftclear.
endif.
if bselp-feldn_17(1) ne nodata
or bselp-slvon_17(1) ne nodata
or bselp-slbis_17(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_17(1) ne nodata.
ftclear-selfd = bselp-feldn_17 .
endif.
if bselp-slvon_17(1) ne nodata.
ftclear-selvon = bselp-slvon_17 .
endif.
if bselp-slbis_17(1) ne nodata.
ftclear-selbis = bselp-slbis_17 .
endif.
append ftclear.
endif.
if bselp-feldn_18(1) ne nodata
or bselp-slvon_18(1) ne nodata
or bselp-slbis_18(1) ne nodata.
clear ftclear.
ftclear = save_ftclear.
if bselp-feldn_18(1) ne nodata.
ftclear-selfd = bselp-feldn_18 .
endif.
if bselp-slvon_18(1) ne nodata.
ftclear-selvon = bselp-slvon_18 .
endif.
if bselp-slbis_18(1) ne nodata.
ftclear-selbis = bselp-slbis_18 .
endif.
append ftclear.
endif.
endform.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
This example program clears two customer documents off against each other with the customer and documenst input by the user. it is not a very practical example but it shows you what needs to be done.
PARAMETERS: p_mode TYPE char01 DEFAULT 'A',
p_bukrs TYPE bkpf-bukrs,
p_kunnr TYPE kna1-kunnr,
p_doc1 TYPE bkpf-belnr,
p_doc2 TYPE bkpf-belnr.
CALL FUNCTION 'POSTING_INTERFACE_START'
EXPORTING
I_CLIENT = SY-MANDT
i_function = 'C'
I_GROUP = ' '
I_HOLDDATE = ' '
I_KEEP = ' '
I_MODE = p_mode
I_UPDATE = 'S'
I_USER = sy-uname
I_XBDCC = ' '
EXCEPTIONS
CLIENT_INCORRECT = 1
FUNCTION_INVALID = 2
GROUP_NAME_MISSING = 3
MODE_INVALID = 4
UPDATE_INVALID = 5
OTHERS = 6.
IF sy-subrc <> 0.
EXIT.
ENDIF.
DATA: l_auglv TYPE T041A-AUGLV VALUE 'UMBUCHNG', "Posting with Clearing
l_tcode TYPE sy-tcode VALUE 'FB05', "You get an error with any other value
l_sgfunct TYPE RFIPI-SGFUNCT VALUE 'C'. "Post immediately
DATA: lt_blntab TYPE STANDARD TABLE OF BLNTAB WITH HEADER LINE,
lt_ftclear TYPE STANDARD TABLE OF ftclear WITH HEADER LINE,
lt_ftpost TYPE STANDARD TABLE OF ftpost WITH HEADER LINE,
lt_fttax TYPE STANDARD TABLE OF fttax WITH HEADER LINE.
Batch Input Values
lt_ftpost-stype = 'K'."Header
lt_ftpost-count = 1. "number of Dynpro
lt_ftpost-fnam = 'BKPF-BLDAT'.
CONCATENATE sy-datum6(2) sy-datum4(2) sy-datum(4) INTO lt_ftpost-fval SEPARATED BY '.'.
APPEND lt_ftpost.
lt_ftpost-fnam = 'BKPF-BUDAT'.
CONCATENATE sy-datum6(2) sy-datum4(2) sy-datum(4) INTO lt_ftpost-fval SEPARATED BY '.'.
APPEND lt_ftpost.
lt_ftpost-fnam = 'BKPF-BLART'.
lt_ftpost-fval = 'DA'. "Same type as documents cleared via F-32
APPEND lt_ftpost.
Documents to be cleared
lt_ftclear-agkoa = 'D'. "Account Type
lt_ftclear-xnops = 'X'. "Indicator: Select only open items which are not special G/L?
lt_ftclear-agbuk = p_bukrs. "Example company code
lt_ftclear-agkon = p_kunnr. "Example Customer
lt_ftclear-selfd = 'BELNR'."Selection Field
lt_ftclear-selvon = p_doc1.
lt_ftclear-selbis = p_doc1.
APPEND lt_ftclear.
lt_ftclear-selvon = p_doc2.
lt_ftclear-selbis = p_doc2.
APPEND lt_ftclear.
CALL FUNCTION 'POSTING_INTERFACE_CLEARING'
EXPORTING
i_auglv = l_auglv
i_tcode = l_tcode
I_SGFUNCT = l_sgfunct
I_NO_AUTH = ' '
IMPORTING
E_MSGID =
E_MSGNO =
E_MSGTY =
E_MSGV1 =
E_MSGV2 =
E_MSGV3 =
E_MSGV4 =
E_SUBRC =
tables
t_blntab = lt_blntab
t_ftclear = lt_ftclear
t_ftpost = lt_ftpost
t_fttax = lt_fttax
EXCEPTIONS
CLEARING_PROCEDURE_INVALID = 1
CLEARING_PROCEDURE_MISSING = 2
TABLE_T041A_EMPTY = 3
TRANSACTION_CODE_INVALID = 4
AMOUNT_FORMAT_ERROR = 5
TOO_MANY_LINE_ITEMS = 6
COMPANY_CODE_INVALID = 7
SCREEN_NOT_FOUND = 8
NO_AUTHORIZATION = 9
OTHERS = 10.
IF sy-subrc <> 0.
RETURN.
ENDIF.
CALL FUNCTION 'POSTING_INTERFACE_END'
EXPORTING
I_BDCIMMED = 'X'
I_BDCSTRTDT = NO_DATE
I_BDCSTRTTM = NO_TIME
EXCEPTIONS
SESSION_NOT_PROCESSABLE = 1
OTHERS = 2.
IF sy-subrc <> 0.
RETURN.
ENDIF.
hi Arthi,
My client needs Z program which displays all open line items for mulitple customers and company code and clear them using F-32 (for mutlple customers). Records selected from the list are cleared using transaction F-32.
Can u please help me to provide the Zprogram which u have, so that it will be using for me.
My client want automatic customer clearing for RTGS related items
Process flow for RTGS in india is as follows,
So now my client need a customized program for automate the clearing open items, (Last block which is marked need to be automated).
Like as F-32 is used to clear open items for individual customers, my client needs a program to be for multiple customers, before clearing the open items they need a overview for all the customers and they need the program which will clear items which are related to only RTGS payments but not Cheques, that is main actually.
Thanks In Advance,
Nitin Kumar
8095885285
User | Count |
---|---|
84 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.