<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: need sample code with RV_INVOICE_CREATE used in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394148#M532655</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;RV_INVOICE_CREATE is the function module to create invoice based on delivery .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when you pass delivery number ,it will create invoice ,see the invoice number in vf02,vf03 transaction. and also see the data vbrk,vbrp tables&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have done this development and i have cancelled invoice,reverse goods issue,updated the delivery and again i am createing invoice..see the below progrm to get better understanding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZWM_OVERWEIGHT_FIX  no standard page heading&lt;/P&gt;&lt;P&gt;                           message-id zwm.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;======================================================================&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Program Name : ZWM_OVERWEIGHT_FIX                                    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description  : Tool to fix Overweight in delivery line item,         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Used All Function module to cancel invoice ,          *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Reverse the goods issue  ,Update Delivery qty,Create  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               invoice                                               *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Author       : Seshu                                                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Date         : 05/08/2007                                            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MODIFICATION HISTORY                                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATE    | AUTHOR   | CHANGE #   | DESCRIPTION OF MODIFICATION        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt;|&lt;DEL&gt;&lt;HR originaltext="-----" /&gt;|&lt;/DEL&gt;&lt;DEL&gt;&lt;HR originaltext="-------" /&gt;|&lt;/DEL&gt;--&lt;HR originaltext="-------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;05/08/07| Seshu    | DEVK921979 | Initial                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; D A T A - D E C L A R A T I O N     *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tables : vbak,&lt;/P&gt;&lt;P&gt;         vbap,&lt;/P&gt;&lt;P&gt;         vbfa,&lt;/P&gt;&lt;P&gt;         likp,&lt;/P&gt;&lt;P&gt;         lips,&lt;/P&gt;&lt;P&gt;         vbrk,&lt;/P&gt;&lt;P&gt;         vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : i_lips like lips occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_vbap like vbap occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : v_deliv like vbfa-vbelv,&lt;/P&gt;&lt;P&gt;       v_invoic like vbfa-vbelv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration Part for Post Goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: l_vbeln LIKE likp-vbeln,&lt;/P&gt;&lt;P&gt;      l_vbkok LIKE vbkok,&lt;/P&gt;&lt;P&gt;      i_prot LIKE prott OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ef_error_any_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_item_deletion_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_pod_update_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_interface_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_goods_issue_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_final_check_0 TYPE c,&lt;/P&gt;&lt;P&gt;      d_return   LIKE bapireturn1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Internal tables for BAPI Function Module&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : i_cret like BAPIRETURN1 occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_csucess like BAPIVBRKSUCcESS occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_ret2 like bapiret2 ,&lt;/P&gt;&lt;P&gt;       flag type c,&lt;/P&gt;&lt;P&gt;       i_mesg like mesg occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration for Invoice Creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: VBSK_I     LIKE  VBSK.&lt;/P&gt;&lt;P&gt;data: d_success  type  c.&lt;/P&gt;&lt;P&gt;DATA: XKOMFK LIKE      KOMFK   OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMV  LIKE      KOMV    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XTHEAD LIKE      THEADVB OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBFS  LIKE      VBFS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBPA  LIKE      VBPAVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRK  LIKE      VBRKVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRP  LIKE      VBRPVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBSS  LIKE      VBSS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMFKGN LIKE    KOMFKGN OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; S E L E C T I O N  -  S C R E E N   ******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection-screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Selection-screen : begin of block blk with frame title text-001.&lt;/P&gt;&lt;P&gt;parameters : p_vbeln like vbak-vbeln obligatory.&lt;/P&gt;&lt;P&gt;selection-screen : end of block blk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; A T -  S E L E C T I O N  - S C R E E N ***************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation on Sales order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at selection-screen on p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check the data on VBAK Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbak into vbak-vbeln&lt;/P&gt;&lt;P&gt;                            where vbeln = p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message e006 with p_vbeln.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt;S T A R T  - O F - S E L E C T I O N *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;Start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  break sreddy.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Invoice Number corresponding Sales Order Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform get_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Step 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Cancel the Invoice  - Transaction VF11&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform cancel_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Reverse the goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform reverse_goodsissue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Get the Order and Delivery Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform get_sales_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delivery Change&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform Delivery_change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Invoice document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform invoice_create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; E N D  -  O F -  S E L E C T I O N  *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;message i012 with p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Get Invoice Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Clear Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : v_deliv,&lt;/P&gt;&lt;P&gt;          v_invoic,&lt;/P&gt;&lt;P&gt;          flag.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Delivery Number First&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbfa into v_deliv&lt;/P&gt;&lt;P&gt;                           where vbelv = p_vbeln&lt;/P&gt;&lt;P&gt;                           and   vbtyp_n = 'J'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    message i004 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Invoice Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbfa into v_invoic&lt;/P&gt;&lt;P&gt;                           where vbelv = p_vbeln&lt;/P&gt;&lt;P&gt;                           and   vbtyp_n = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i003 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_invoice&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  cancel_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Cancel the Invoice&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM cancel_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_ret2,&lt;/P&gt;&lt;P&gt;          i_cret,&lt;/P&gt;&lt;P&gt;          i_csucess.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_cret,&lt;/P&gt;&lt;P&gt;            i_csucess.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_BILLINGDOC_CANCEL1'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      BILLINGDOCUMENT       = v_invoic&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TESTRUN               =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_COMMIT             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BILLINGDATE           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      RETURN                = i_cret&lt;/P&gt;&lt;P&gt;      SUCCESS               = i_csucess&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            WAIT   = space&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            RETURN = i_ret2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; read table i_cret with key type = 'E'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    message i005 with v_invoic.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " cancel_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  reverse_goodsissue&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Reverse the goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM reverse_goodsissue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Variable&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : lv_vbtyp like likp-vbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_mesg,&lt;/P&gt;&lt;P&gt;          lv_vbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_mesg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  select single vbtyp from likp into lv_vbtyp&lt;/P&gt;&lt;P&gt;                           where vbeln = v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_REVERSE_GOODS_ISSUE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_VBELN                         = v_deliv&lt;/P&gt;&lt;P&gt;      I_BUDAT                         = sy-datum&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_COUNT                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_MBLNR                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_TCODE                         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_VBTYP                         = lv_vbtyp&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_MESG                          = i_mesg&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     ERROR_REVERSE_GOODS_ISSUE       = 1&lt;/P&gt;&lt;P&gt;     OTHERS                          = 2&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i007 with v_deliv.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " reverse_goodsissue&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_sales_deliv&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Get the Sales order and Deliv Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_sales_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  data : lv_kwmeng like vbap-kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_lips,&lt;/P&gt;&lt;P&gt;          i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_lips,&lt;/P&gt;&lt;P&gt;            i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select the data from LIPS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select * from lips into table i_lips&lt;/P&gt;&lt;P&gt;                     where vbeln = v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i008 with v_deliv.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort i_lips by vbeln posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Get the Sales order Item Data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select * from vbap into table i_vbap&lt;/P&gt;&lt;P&gt;                          where vbeln = p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i006 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort i_vbap by vbeln posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Compare delivery Item and Order Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  loop at i_lips.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear lv_kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    read table i_vbap with key posnr = i_lips-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lv_kwmeng = i_vbap-kwmeng * 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if lv_kwmeng &amp;gt;= i_lips-lfimg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        i_lips-lfimg = i_vbap-kwmeng.&lt;/P&gt;&lt;P&gt;        modify i_lips.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_sales_deliv&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Delivery_change&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Delivery Update&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Delivery_change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Clear : i_prot.&lt;/P&gt;&lt;P&gt;  refresh : i_prot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delivery Update&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'LE_MOB_DELIVERY_UPDATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            do_commit                = 'X'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            t_delivery_items         = i_lips&lt;/P&gt;&lt;P&gt;            prot                     = i_prot&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            conversion_overflow      = 1&lt;/P&gt;&lt;P&gt;            essential_data_missing   = 2&lt;/P&gt;&lt;P&gt;            error                    = 3&lt;/P&gt;&lt;P&gt;            nothing_to_update        = 4&lt;/P&gt;&lt;P&gt;            lock_after_update_failed = 5&lt;/P&gt;&lt;P&gt;            error_in_delivery_update = 6&lt;/P&gt;&lt;P&gt;            OTHERS                   = 7.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE i009 with v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Post Goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR:    d_return,&lt;/P&gt;&lt;P&gt;            i_prot,&lt;/P&gt;&lt;P&gt;            l_vbeln,&lt;/P&gt;&lt;P&gt;            l_vbkok.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH i_prot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR:  ef_error_in_item_deletion_0    ,&lt;/P&gt;&lt;P&gt;          ef_error_in_pod_update_0       ,&lt;/P&gt;&lt;P&gt;          ef_error_in_interface_0        ,&lt;/P&gt;&lt;P&gt;          ef_error_in_goods_issue_0      ,&lt;/P&gt;&lt;P&gt;          ef_error_in_final_check_0      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;carry out goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_vbeln          = v_deliv.&lt;/P&gt;&lt;P&gt;  l_vbkok-vbeln_vl = l_vbeln.&lt;/P&gt;&lt;P&gt;  l_vbkok-wabuc    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;carry out goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_vbeln          = v_deliv.&lt;/P&gt;&lt;P&gt;  l_vbkok-vbeln_vl = l_vbeln.&lt;/P&gt;&lt;P&gt;  l_vbkok-wabuc    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET UPDATE TASK LOCAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'WS_DELIVERY_UPDATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            vbkok_wa                    = l_vbkok&lt;/P&gt;&lt;P&gt;            synchron                    = 'X'&lt;/P&gt;&lt;P&gt;            no_messages_update          = ' '&lt;/P&gt;&lt;P&gt;            update_picking              = 'X'&lt;/P&gt;&lt;P&gt;            commit                      = 'X'&lt;/P&gt;&lt;P&gt;            delivery                    = l_vbeln&lt;/P&gt;&lt;P&gt;            nicht_sperren               = 'X'&lt;/P&gt;&lt;P&gt;            if_error_messages_send_0    = space&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            ef_error_any_0              = ef_error_any_0&lt;/P&gt;&lt;P&gt;            ef_error_in_item_deletion_0 = ef_error_in_item_deletion_0&lt;/P&gt;&lt;P&gt;            ef_error_in_pod_update_0    = ef_error_in_pod_update_0&lt;/P&gt;&lt;P&gt;            ef_error_in_interface_0     = ef_error_in_interface_0&lt;/P&gt;&lt;P&gt;            ef_error_in_goods_issue_0   = ef_error_in_goods_issue_0&lt;/P&gt;&lt;P&gt;            ef_error_in_final_check_0   = ef_error_in_final_check_0&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            prot                        = i_prot&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            error_message               = 1&lt;/P&gt;&lt;P&gt;            OTHERS                      = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i010 with v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    COMMIT WORK .&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Delivery_change&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  invoice_create&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Invoice Creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM invoice_create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh: XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear  : XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS,&lt;/P&gt;&lt;P&gt;           VBSK_I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  VBSK_I-SMART = 'F'.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBELN =  v_deliv.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBTYP = 'J'.&lt;/P&gt;&lt;P&gt;  APPEND XKOMFK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RV_INVOICE_CREATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            VBSK_I       = VBSK_I&lt;/P&gt;&lt;P&gt;            WITH_POSTING = 'C'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            XKOMFK       = XKOMFK&lt;/P&gt;&lt;P&gt;            XKOMV        = XKOMV&lt;/P&gt;&lt;P&gt;            XTHEAD       = XTHEAD&lt;/P&gt;&lt;P&gt;            XVBFS        = XVBFS&lt;/P&gt;&lt;P&gt;            XVBPA        = XVBPA&lt;/P&gt;&lt;P&gt;            XVBRK        = XVBRK&lt;/P&gt;&lt;P&gt;            XVBRP        = XVBRP&lt;/P&gt;&lt;P&gt;            XVBSS        = XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;    COMMIT WORK.&lt;/P&gt;&lt;P&gt;   flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;  message i011 with p_vbeln.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " invoice_create&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward Points if it is helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 02 Jun 2007 17:29:02 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-06-02T17:29:02Z</dc:date>
    <item>
      <title>need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394144#M532651</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everybody!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need sample code with RV_INVOICE_CREATE or similar FMs used.&lt;/P&gt;&lt;P&gt;The thing is that I do not know how to populate parametres of this and other invoicing FMs....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example, there are some tables to be passed to RV_INVOICE_CREATE&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          XKOMFK     = XKOMFK&lt;/P&gt;&lt;P&gt;          XKOMV       = XKOMV&lt;/P&gt;&lt;P&gt;          XTHEAD      = XTHEAD&lt;/P&gt;&lt;P&gt;          XVBFS        = XVBFS&lt;/P&gt;&lt;P&gt;          XVBPA        = XVBPA&lt;/P&gt;&lt;P&gt;          XVBRK        = XVBRK&lt;/P&gt;&lt;P&gt;          XVBRP        = XVBRP&lt;/P&gt;&lt;P&gt;          XVBSS        = XVBSS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How to populate them? I mean how to fill them with needed values?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Useful answers will be awarded.&lt;/P&gt;&lt;P&gt;Kind regards, M.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2007 16:30:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394144#M532651</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-01T16:30:09Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394145#M532652</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have you checked the Std Report RV56FAKT?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;~Suresh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2007 16:37:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394145#M532652</guid>
      <dc:creator>suresh_datti</dc:creator>
      <dc:date>2007-06-01T16:37:24Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394146#M532653</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;DATA: VBSK_I     LIKE  VBSK.&lt;/P&gt;&lt;P&gt;data: d_success  type  c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: XKOMFK LIKE      KOMFK   OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMV  LIKE      KOMV    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XTHEAD LIKE      THEADVB OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBFS  LIKE      VBFS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBPA  LIKE      VBPAVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRK  LIKE      VBRKVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRP  LIKE      VBRPVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBSS  LIKE      VBSS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMFKGN LIKE    KOMFKGN OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;refresh: XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear  : XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS,&lt;/P&gt;&lt;P&gt;           VBSK_I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  VBSK_I-SMART = 'F'.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBELN =  v_deliv.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBTYP = 'J'.&lt;/P&gt;&lt;P&gt;  APPEND XKOMFK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RV_INVOICE_CREATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            VBSK_I       = VBSK_I&lt;/P&gt;&lt;P&gt;            WITH_POSTING = 'C'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            XKOMFK       = XKOMFK&lt;/P&gt;&lt;P&gt;            XKOMV        = XKOMV&lt;/P&gt;&lt;P&gt;            XTHEAD       = XTHEAD&lt;/P&gt;&lt;P&gt;            XVBFS        = XVBFS&lt;/P&gt;&lt;P&gt;            XVBPA        = XVBPA&lt;/P&gt;&lt;P&gt;            XVBRK        = XVBRK&lt;/P&gt;&lt;P&gt;            XVBRP        = XVBRP&lt;/P&gt;&lt;P&gt;            XVBSS        = XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;    COMMIT WORK.&lt;/P&gt;&lt;P&gt;   flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;  message i011 with p_vbeln.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2007 16:39:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394146#M532653</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-01T16:39:54Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394147#M532654</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Seshu!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks for your help. Maybe you have some more code with 'RV_INVOICE_CREATE'? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I mean it is good to know how to define tables to be passed to FM, but as well would be nice to know how to populate them and the meaning of important fields...&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;I mean, for example: what are the important parametres (like price) to be sent to FM?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And what is the tcode to see the result of 'RV_INVOICE_CREATE'?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards,&lt;/P&gt;&lt;P&gt;Mindaugas.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Jun 2007 17:02:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394147#M532654</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-02T17:02:28Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394148#M532655</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;RV_INVOICE_CREATE is the function module to create invoice based on delivery .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;when you pass delivery number ,it will create invoice ,see the invoice number in vf02,vf03 transaction. and also see the data vbrk,vbrp tables&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have done this development and i have cancelled invoice,reverse goods issue,updated the delivery and again i am createing invoice..see the below progrm to get better understanding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZWM_OVERWEIGHT_FIX  no standard page heading&lt;/P&gt;&lt;P&gt;                           message-id zwm.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;======================================================================&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Program Name : ZWM_OVERWEIGHT_FIX                                    *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description  : Tool to fix Overweight in delivery line item,         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Used All Function module to cancel invoice ,          *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               Reverse the goods issue  ,Update Delivery qty,Create  *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               invoice                                               *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Author       : Seshu                                                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Date         : 05/08/2007                                            *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MODIFICATION HISTORY                                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATE    | AUTHOR   | CHANGE #   | DESCRIPTION OF MODIFICATION        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;--&lt;/STRONG&gt;&lt;DEL&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/DEL&gt;&lt;/P&gt;&lt;HR originaltext="----" /&gt;|&lt;DEL&gt;&lt;HR originaltext="-----" /&gt;|&lt;/DEL&gt;&lt;DEL&gt;&lt;HR originaltext="-------" /&gt;|&lt;/DEL&gt;--&lt;HR originaltext="-------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;05/08/07| Seshu    | DEVK921979 | Initial                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; D A T A - D E C L A R A T I O N     *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tables : vbak,&lt;/P&gt;&lt;P&gt;         vbap,&lt;/P&gt;&lt;P&gt;         vbfa,&lt;/P&gt;&lt;P&gt;         likp,&lt;/P&gt;&lt;P&gt;         lips,&lt;/P&gt;&lt;P&gt;         vbrk,&lt;/P&gt;&lt;P&gt;         vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : i_lips like lips occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_vbap like vbap occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : v_deliv like vbfa-vbelv,&lt;/P&gt;&lt;P&gt;       v_invoic like vbfa-vbelv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration Part for Post Goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: l_vbeln LIKE likp-vbeln,&lt;/P&gt;&lt;P&gt;      l_vbkok LIKE vbkok,&lt;/P&gt;&lt;P&gt;      i_prot LIKE prott OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      ef_error_any_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_item_deletion_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_pod_update_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_interface_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_goods_issue_0 TYPE c,&lt;/P&gt;&lt;P&gt;      ef_error_in_final_check_0 TYPE c,&lt;/P&gt;&lt;P&gt;      d_return   LIKE bapireturn1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Internal tables for BAPI Function Module&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : i_cret like BAPIRETURN1 occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_csucess like BAPIVBRKSUCcESS occurs 0 with header line,&lt;/P&gt;&lt;P&gt;       i_ret2 like bapiret2 ,&lt;/P&gt;&lt;P&gt;       flag type c,&lt;/P&gt;&lt;P&gt;       i_mesg like mesg occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration for Invoice Creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: VBSK_I     LIKE  VBSK.&lt;/P&gt;&lt;P&gt;data: d_success  type  c.&lt;/P&gt;&lt;P&gt;DATA: XKOMFK LIKE      KOMFK   OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMV  LIKE      KOMV    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XTHEAD LIKE      THEADVB OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBFS  LIKE      VBFS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBPA  LIKE      VBPAVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRK  LIKE      VBRKVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBRP  LIKE      VBRPVB  OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XVBSS  LIKE      VBSS    OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      XKOMFKGN LIKE    KOMFKGN OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; S E L E C T I O N  -  S C R E E N   ******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection-screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Selection-screen : begin of block blk with frame title text-001.&lt;/P&gt;&lt;P&gt;parameters : p_vbeln like vbak-vbeln obligatory.&lt;/P&gt;&lt;P&gt;selection-screen : end of block blk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; A T -  S E L E C T I O N  - S C R E E N ***************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validation on Sales order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at selection-screen on p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check the data on VBAK Table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbak into vbak-vbeln&lt;/P&gt;&lt;P&gt;                            where vbeln = p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message e006 with p_vbeln.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt;S T A R T  - O F - S E L E C T I O N *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;Start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  break sreddy.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Invoice Number corresponding Sales Order Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform get_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Step 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Cancel the Invoice  - Transaction VF11&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform cancel_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Reverse the goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform reverse_goodsissue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Get the Order and Delivery Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform get_sales_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delivery Change&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform Delivery_change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Invoice document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform invoice_create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="15" type="ul"&gt;&lt;P&gt; E N D  -  O F -  S E L E C T I O N  *******************&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;message i012 with p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Get Invoice Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Clear Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : v_deliv,&lt;/P&gt;&lt;P&gt;          v_invoic,&lt;/P&gt;&lt;P&gt;          flag.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Delivery Number First&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbfa into v_deliv&lt;/P&gt;&lt;P&gt;                           where vbelv = p_vbeln&lt;/P&gt;&lt;P&gt;                           and   vbtyp_n = 'J'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    message i004 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Invoice Number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single vbeln from vbfa into v_invoic&lt;/P&gt;&lt;P&gt;                           where vbelv = p_vbeln&lt;/P&gt;&lt;P&gt;                           and   vbtyp_n = 'M'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i003 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_invoice&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  cancel_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Cancel the Invoice&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM cancel_invoice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_ret2,&lt;/P&gt;&lt;P&gt;          i_cret,&lt;/P&gt;&lt;P&gt;          i_csucess.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_cret,&lt;/P&gt;&lt;P&gt;            i_csucess.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_BILLINGDOC_CANCEL1'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      BILLINGDOCUMENT       = v_invoic&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TESTRUN               =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_COMMIT             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  BILLINGDATE           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      RETURN                = i_cret&lt;/P&gt;&lt;P&gt;      SUCCESS               = i_csucess&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            WAIT   = space&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            RETURN = i_ret2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; read table i_cret with key type = 'E'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    message i005 with v_invoic.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " cancel_invoice&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  reverse_goodsissue&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Reverse the goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM reverse_goodsissue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Variable&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  data : lv_vbtyp like likp-vbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_mesg,&lt;/P&gt;&lt;P&gt;          lv_vbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_mesg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  select single vbtyp from likp into lv_vbtyp&lt;/P&gt;&lt;P&gt;                           where vbeln = v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WS_REVERSE_GOODS_ISSUE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      I_VBELN                         = v_deliv&lt;/P&gt;&lt;P&gt;      I_BUDAT                         = sy-datum&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_COUNT                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_MBLNR                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    I_TCODE                         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_VBTYP                         = lv_vbtyp&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_MESG                          = i_mesg&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     ERROR_REVERSE_GOODS_ISSUE       = 1&lt;/P&gt;&lt;P&gt;     OTHERS                          = 2&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i007 with v_deliv.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " reverse_goodsissue&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_sales_deliv&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Get the Sales order and Deliv Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_sales_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  data : lv_kwmeng like vbap-kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear : i_lips,&lt;/P&gt;&lt;P&gt;          i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh : i_lips,&lt;/P&gt;&lt;P&gt;            i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select the data from LIPS&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select * from lips into table i_lips&lt;/P&gt;&lt;P&gt;                     where vbeln = v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i008 with v_deliv.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort i_lips by vbeln posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Get the Sales order Item Data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select * from vbap into table i_vbap&lt;/P&gt;&lt;P&gt;                          where vbeln = p_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i006 with p_vbeln.&lt;/P&gt;&lt;P&gt;    stop.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  sort i_vbap by vbeln posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Compare delivery Item and Order Items&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  loop at i_lips.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    clear lv_kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    read table i_vbap with key posnr = i_lips-posnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lv_kwmeng = i_vbap-kwmeng * 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if lv_kwmeng &amp;gt;= i_lips-lfimg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        i_lips-lfimg = i_vbap-kwmeng.&lt;/P&gt;&lt;P&gt;        modify i_lips.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_sales_deliv&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Delivery_change&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Delivery Update&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM Delivery_change.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Clear : i_prot.&lt;/P&gt;&lt;P&gt;  refresh : i_prot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delivery Update&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'LE_MOB_DELIVERY_UPDATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            do_commit                = 'X'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            t_delivery_items         = i_lips&lt;/P&gt;&lt;P&gt;            prot                     = i_prot&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            conversion_overflow      = 1&lt;/P&gt;&lt;P&gt;            essential_data_missing   = 2&lt;/P&gt;&lt;P&gt;            error                    = 3&lt;/P&gt;&lt;P&gt;            nothing_to_update        = 4&lt;/P&gt;&lt;P&gt;            lock_after_update_failed = 5&lt;/P&gt;&lt;P&gt;            error_in_delivery_update = 6&lt;/P&gt;&lt;P&gt;            OTHERS                   = 7.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE i009 with v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Post Goods Issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR:    d_return,&lt;/P&gt;&lt;P&gt;            i_prot,&lt;/P&gt;&lt;P&gt;            l_vbeln,&lt;/P&gt;&lt;P&gt;            l_vbkok.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH i_prot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR:  ef_error_in_item_deletion_0    ,&lt;/P&gt;&lt;P&gt;          ef_error_in_pod_update_0       ,&lt;/P&gt;&lt;P&gt;          ef_error_in_interface_0        ,&lt;/P&gt;&lt;P&gt;          ef_error_in_goods_issue_0      ,&lt;/P&gt;&lt;P&gt;          ef_error_in_final_check_0      .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;carry out goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_vbeln          = v_deliv.&lt;/P&gt;&lt;P&gt;  l_vbkok-vbeln_vl = l_vbeln.&lt;/P&gt;&lt;P&gt;  l_vbkok-wabuc    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;carry out goods issue&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_vbeln          = v_deliv.&lt;/P&gt;&lt;P&gt;  l_vbkok-vbeln_vl = l_vbeln.&lt;/P&gt;&lt;P&gt;  l_vbkok-wabuc    = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SET UPDATE TASK LOCAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'WS_DELIVERY_UPDATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            vbkok_wa                    = l_vbkok&lt;/P&gt;&lt;P&gt;            synchron                    = 'X'&lt;/P&gt;&lt;P&gt;            no_messages_update          = ' '&lt;/P&gt;&lt;P&gt;            update_picking              = 'X'&lt;/P&gt;&lt;P&gt;            commit                      = 'X'&lt;/P&gt;&lt;P&gt;            delivery                    = l_vbeln&lt;/P&gt;&lt;P&gt;            nicht_sperren               = 'X'&lt;/P&gt;&lt;P&gt;            if_error_messages_send_0    = space&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            ef_error_any_0              = ef_error_any_0&lt;/P&gt;&lt;P&gt;            ef_error_in_item_deletion_0 = ef_error_in_item_deletion_0&lt;/P&gt;&lt;P&gt;            ef_error_in_pod_update_0    = ef_error_in_pod_update_0&lt;/P&gt;&lt;P&gt;            ef_error_in_interface_0     = ef_error_in_interface_0&lt;/P&gt;&lt;P&gt;            ef_error_in_goods_issue_0   = ef_error_in_goods_issue_0&lt;/P&gt;&lt;P&gt;            ef_error_in_final_check_0   = ef_error_in_final_check_0&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            prot                        = i_prot&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            error_message               = 1&lt;/P&gt;&lt;P&gt;            OTHERS                      = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;    message i010 with v_deliv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    COMMIT WORK .&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " Delivery_change&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  invoice_create&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Invoice Creation&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM invoice_create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh: XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear  : XKOMFK, XKOMV,&lt;/P&gt;&lt;P&gt;           XTHEAD, XVBFS,&lt;/P&gt;&lt;P&gt;           XVBPA,  XVBRK,&lt;/P&gt;&lt;P&gt;           XVBRP,  XVBSS,&lt;/P&gt;&lt;P&gt;           VBSK_I.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  VBSK_I-SMART = 'F'.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBELN =  v_deliv.&lt;/P&gt;&lt;P&gt;  XKOMFK-VBTYP = 'J'.&lt;/P&gt;&lt;P&gt;  APPEND XKOMFK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RV_INVOICE_CREATE'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            VBSK_I       = VBSK_I&lt;/P&gt;&lt;P&gt;            WITH_POSTING = 'C'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            XKOMFK       = XKOMFK&lt;/P&gt;&lt;P&gt;            XKOMV        = XKOMV&lt;/P&gt;&lt;P&gt;            XTHEAD       = XTHEAD&lt;/P&gt;&lt;P&gt;            XVBFS        = XVBFS&lt;/P&gt;&lt;P&gt;            XVBPA        = XVBPA&lt;/P&gt;&lt;P&gt;            XVBRK        = XVBRK&lt;/P&gt;&lt;P&gt;            XVBRP        = XVBRP&lt;/P&gt;&lt;P&gt;            XVBSS        = XVBSS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;    COMMIT WORK.&lt;/P&gt;&lt;P&gt;   flag = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;  message i011 with p_vbeln.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " invoice_create&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward Points if it is helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Jun 2007 17:29:02 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394148#M532655</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-02T17:29:02Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394149#M532656</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Seshu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;so if I have a delivery number (vbeln?) I can create an invoice,&lt;/P&gt;&lt;P&gt;but I need just difference of the price on the invoice, because I need just debit / credit invoice, so I think it is needed to pass some value of price to the FM, sorry if I am wrong..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR, M.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Jun 2007 18:23:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394149#M532656</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-02T18:23:11Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394150#M532657</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am not sure but it should work.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Jun 2007 19:01:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394150#M532657</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-06-02T19:01:09Z</dc:date>
    </item>
    <item>
      <title>Re: need sample code with RV_INVOICE_CREATE used</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394151#M532658</link>
      <description>&lt;P&gt;thank you for your sample coding. I found it useful and managed to post invoices for several deliveries by changing it slightly. Just for any future users:&lt;/P&gt;&lt;P&gt;WITH_POSTING = 'C' means that it posts without error messages. To get the error messages, you can use 'D'.&lt;/P&gt;&lt;P&gt;Petra&lt;/P&gt;</description>
      <pubDate>Tue, 22 Dec 2020 15:47:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/need-sample-code-with-rv-invoice-create-used/m-p/2394151#M532658</guid>
      <dc:creator>petra_just</dc:creator>
      <dc:date>2020-12-22T15:47:33Z</dc:date>
    </item>
  </channel>
</rss>

