2010 Sep 20 8:49 AM
Hi,
I am using BILLING_SCHEDULE_SAVE Fm to create Invoicing Plans in PO, the FM is creating the records in FLPA and FLPT table but I am not able to see the Invoicing Plan in the PO Screen.
Any idea on this.
Thanks,
Krishna
2010 Sep 22 12:14 PM
see the following to add starting and endding date in invoice plan
DATA: doc LIKE vbak-vbeln,
v_order LIKE bapivbeln-vbeln,
pos(6) TYPE n.
DATA e_fpla LIKE fpla .
DATA hfplnr LIKE fpla-fplnr.
DATA i_fpla LIKE fpla .
DATA e_fplt LIKE fpltvb OCCURS 0 .
DATA: zfpla LIKE fplavb OCCURS 0 WITH HEADER LINE,
zfplt LIKE fpltvb OCCURS 0 WITH HEADER LINE.
DATA zfplt2 LIKE fpltvb OCCURS 0 WITH HEADER LINE.
DATA zfpla2 LIKE fplavb OCCURS 0 WITH HEADER LINE.
v_order = '1252004164'.
MOVE v_order TO doc .
doc = v_order.
break develoer.
CALL FUNCTION 'SD_SALES_DOCUMENT_READ'
EXPORTING
document_number = doc.
MOVE '000010' TO pos.
CALL FUNCTION 'SD_SALES_BILLINGPLAN_READ'
EXPORTING
i_vbeln = doc
i_posnr = pos
IMPORTING
e_fpla = e_fpla
TABLES
e_fplt = e_fplt
EXCEPTIONS
no_billingplan_allowed = 1
no_billingplan_found = 2
OTHERS = 3.
IF sy-subrc NE 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Read the billing plan
CALL FUNCTION 'BILLING_SCHEDULE_READ'
EXPORTING
fplnr = e_fpla-fplnr
* I_VFKDAT =
* I_BFKDAT =
TABLES
zfpla = zfpla
zfplt = zfplt
.
* Upddate the ZFPLT2 table with the new values
*MOVE zfplt TO zfplt2.
MOVE zfpla TO zfpla2.
*READ TABLE zfpla2 INDEX 1.
zfpla2-lodat = '20100101'.
zfpla2-tndat = '20101231'.
zfpla2-rfpln = ''.
zfpla2-lodar = ''.
zfpla2-tndar = ''.
zfpla2-fpart = 'yy'.
zfpla2-horiz = '91'.
*** Very important to set field updkz = 'U' ***
zfpla2-updkz = 'U'. "--> UPDATE!!
APPEND zfpla2.
CLEAR pos.
CALL FUNCTION 'BILLING_SCHEDULE_SAVE'
TABLES
fpla_new = zfpla2
fpla_old = zfpla
fplt_new = zfplt " --> NEW
fplt_old = zfplt.
CALL FUNCTION 'SD_SALES_DOCUMENT_SAVE'
EXPORTING
i_no_messages = ' '.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
Edited by: kk.adhvaryu on Sep 22, 2010 1:14 PM
2010 Sep 22 12:14 PM
see the following to add starting and endding date in invoice plan
DATA: doc LIKE vbak-vbeln,
v_order LIKE bapivbeln-vbeln,
pos(6) TYPE n.
DATA e_fpla LIKE fpla .
DATA hfplnr LIKE fpla-fplnr.
DATA i_fpla LIKE fpla .
DATA e_fplt LIKE fpltvb OCCURS 0 .
DATA: zfpla LIKE fplavb OCCURS 0 WITH HEADER LINE,
zfplt LIKE fpltvb OCCURS 0 WITH HEADER LINE.
DATA zfplt2 LIKE fpltvb OCCURS 0 WITH HEADER LINE.
DATA zfpla2 LIKE fplavb OCCURS 0 WITH HEADER LINE.
v_order = '1252004164'.
MOVE v_order TO doc .
doc = v_order.
break develoer.
CALL FUNCTION 'SD_SALES_DOCUMENT_READ'
EXPORTING
document_number = doc.
MOVE '000010' TO pos.
CALL FUNCTION 'SD_SALES_BILLINGPLAN_READ'
EXPORTING
i_vbeln = doc
i_posnr = pos
IMPORTING
e_fpla = e_fpla
TABLES
e_fplt = e_fplt
EXCEPTIONS
no_billingplan_allowed = 1
no_billingplan_found = 2
OTHERS = 3.
IF sy-subrc NE 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Read the billing plan
CALL FUNCTION 'BILLING_SCHEDULE_READ'
EXPORTING
fplnr = e_fpla-fplnr
* I_VFKDAT =
* I_BFKDAT =
TABLES
zfpla = zfpla
zfplt = zfplt
.
* Upddate the ZFPLT2 table with the new values
*MOVE zfplt TO zfplt2.
MOVE zfpla TO zfpla2.
*READ TABLE zfpla2 INDEX 1.
zfpla2-lodat = '20100101'.
zfpla2-tndat = '20101231'.
zfpla2-rfpln = ''.
zfpla2-lodar = ''.
zfpla2-tndar = ''.
zfpla2-fpart = 'yy'.
zfpla2-horiz = '91'.
*** Very important to set field updkz = 'U' ***
zfpla2-updkz = 'U'. "--> UPDATE!!
APPEND zfpla2.
CLEAR pos.
CALL FUNCTION 'BILLING_SCHEDULE_SAVE'
TABLES
fpla_new = zfpla2
fpla_old = zfpla
fplt_new = zfplt " --> NEW
fplt_old = zfplt.
CALL FUNCTION 'SD_SALES_DOCUMENT_SAVE'
EXPORTING
i_no_messages = ' '.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
Edited by: kk.adhvaryu on Sep 22, 2010 1:14 PM
2015 Oct 10 11:20 AM
Dear Sir , when i use this function (BILLING_SCHEDULE_SAVE am be able to insert only one line item in the billing plan details, second time it only update the last inserted one .
so can you please advice how can i insert new line item in the billing plane details not only update the
last one .
and how to regenerate the net value after modifying the details , thanks in advance for your support .
2010 Sep 22 12:16 PM
Will this update the BILLING PLAN NUMBER in PO??....
Thanks and regards,
Chaitanya
2010 Sep 22 12:36 PM
2010 Sep 22 12:39 PM
See the problem is after using this function module, the field FPLNR in EKPO should get updated then only we will be able to see the Invocing plan Tab in the PO.
I am not seeing, the field is not getting updated after using all these FMs.
Any info on this??
Thanks and Regards,
Krishna
2010 Sep 23 6:06 AM
please past your logic how to use and what u pass so i can give proper solution
Edited by: kk.adhvaryu on Sep 23, 2010 7:08 AM
2010 Sep 23 8:18 AM
2010 Sep 23 8:35 AM
please explain how to solve your issue so it will help to any other person who face same problme
2011 Oct 05 1:03 AM