Report on Goods Receipt

Dear Gurus,
                        Here in client place they want a report on Goods Receipt based on purchase orders that should include net order Qty, net price, received qty, received qty price and invoiced quantity. Is there any standard report regarding this requirement.Kindly suggest me.Thank you.
Edited by: MM Consultant on Apr 7, 2009 9:38 AM

Dear Friend
Plesae go throuth the table EKBE
Hope it will to u
Bye

Similar Messages

  • Report for Goods Receipt

    Hi Gurus, I want to hav create report for Goods receipt which has to show mat description, quantity Received, Date of GR, Rate, vendor name etc. Is there any standard report available? If not which tables I hav 2 use to create querry?
    Thanks

    Hi,
    Reports are.
    1. MB59 / MB51- Material Document List.
    2. ME80FN-General Analysis.
    You can try above reports.
    Rgds,
    Rajesh

  • Report with goods receipt value and invoice posting value

    Is there any standard report with goods receipt value and invoice value (the value with which invoice is posted.

    Hi
    Please check MC$4 transaction, mey be helpful.
    regards
    Srinivas

  • BW Cubes for reporting of Goods Receipts for materials

    Hi,
    I need information regarding cubes, I beleive they will be from MM area, required to be installed to report on Goods receipt for materials and the associated amount Spend that will result from those receipts, including related charges and fees.
    Please share the information.
    Thanks,
    Rajani

    HI,
    If you need to get only goods receipts at MM Side you should be aware of movement types generally 1* in your system to get their values and Quantities.
    If you are going from FI Side you can have FI Document type WE for GR which will help you in getting the spend amount .
    Hope this helps for you.
    Thanks.
    Arun

  • Report for Goods receipt & PO

    Hi gurus,
    Is there any report to see the link between goods receipt done & for which purchase order.The GR document number & PO should come side by side.Not the MB51 PLEASE.
    regards
    murugan

    Hi,
    Is there any requirement in addition to GR and PO number in specific?
    Since MB51 is the standard report which gives PO number and the relevant material document numbers.
    Else you will need to customize a Z report.
    Thanks and Regards,
    Maheshwari

  • Custom report Open goods receipt like transaction ME2L, param 'WE101''

    Good morning,
    I have develop a report to process the same Open goods receipt extracted by the transaction ME2L using the parameter 'WE101';  I know where is the customizing to see the criterions of selection 'WE101' (  IMG under Materials Management -> Purchasing ->Reporting -> Maintain Purchasing Lists -> Scope of List -> Define Scope of List. Select any one option & double click ) but I don't know ho create a report that use the same selection.
    There is a function or which is the query to select Open goods receipt like transaction ME2L?
    I need it because i have to extract data like ME2L and after continuing to elaborate it...
    very thanks for any help.
    Marco

    Hi Kaveri,
    For Open PO Reports try using these standard reports:
    ME2N, ME2M, ME2L, ME80FN.
    Also, when you run them, try to execute these reports in the background with immediate Job. Later, you can check the spool for results.
    Hope this helps!
    Regards,
    Shilpa

  • Goods Receipt Against Purchase Order

    Hi All,
             I am creating a report for goods receipt tracking against purchase order  within in date range .  If any material documant has been canceld ( 101 to 102 or 103 to 104 ) then it (101 or 103) should not be calculate receipt goods. if 105 is pending for any 103 still 103 qty should be add in receipt goods. Is there any Function module for do that or any other logic. plz tell.
    Thanks in Advance.
    Jitendra

    Hi
    Please take a look at the links for sample coding of the function module - BAPI_GOODSMVT_CREATE.
    http://www.sap-img.com/abap/bapi-goodsmvt-create-to-post-goods-movement.htm
    http://www.4ap.de/abap/bapi_goodsmvt_create.php
    <b>Reward points</b>
    Regards

  • Good receipt without Invoice

    Hi all
    Let me know about Report for Goods receipt without Invoice for Purchase order? ie. PO pending for Invoice?
    If anybody a report, pls send it to me. I have used 101-102, 105-106 movement types?
    So any one send that reports?

    Hi Muthu
    I am sending you one source code regarding the Goods receipt without invoice.
    Pls reward pts if help.
    Regards
    Deepanker.
    FUNCTION zrfc_vcs_get_goodsreceipt.
    *& Program Name    : ZRFC_VCS_GET_GOODSRECEIPT                        *
    *& Title           : Function Module for getting the GOODSRECEIPT     *
    *&                     Details                                        *
    *& Author          : M.Jayasree                                         *
    *& Create Date     : 21/03/2007                                       *
    *& Logical DB      : None                                             *
    *& Program Type    : FM                                               *
    *& SAP Release     : 4.6                                              *
    *& Description     : This is a program used for retrieving the        *
    *&                     GOODSRECEIPT Details.                          *
    *& REVISION LOG                                                       *
    *& LOG#               DATE                   AUTHOR                   *
    *& 0000               21/03/2007            Jayasree.M                *
                                 Tables                                  *
    TABLES : mkpf,komv,mseg.
                            Data declarations                            *
      DATA: lv_suc_date       TYPE d,
            lv_suc_time       TYPE t,
            lv_fileloc        TYPE char40,
            lv_filename       TYPE char40,
            lv_date           TYPE d,
            lv_time           TYPE t,
            lv_filepath       TYPE string,
            lv_error          TYPE char50,
            lv_fileloc1       TYPE char20,
            lv_filename1      TYPE char40,
            lv_filepath1      TYPE string,
            lv_value          TYPE zvcsconfig-zvalue,
            lv_value_h        TYPE zvcsconfig-zvalue,
            lv_value1         TYPE zvcsconfig-zvalue,
            lv_fileloc_d      TYPE char40,
            lv_filename_d     TYPE char40,
            lv_filepath_d     TYPE string,
            lv_value_d        TYPE zvcsconfig-zvalue,
            lv_fileloc_d1     TYPE char40,
            lv_filename_d1    TYPE char40,
            lv_filepath_d1    TYPE string,
            lv_value_d1       TYPE zvcsconfig-zvalue,
            lv_taxamt         TYPE bseg-wrbtr,
            lv_elikz          TYPE mseg-elikz,
            lv_waers          TYPE mseg-waers,
            lv_emlif          TYPE mseg-emlif,
            lv_dmbtr          TYPE mseg-dmbtr,
            lv_vkwrt          TYPE mseg-vkwrt,
            lv_menge_acc      TYPE mseg-menge,
            lv_ebeln          TYPE ebeln,
            lv_lifnr          TYPE ekko-lifnr,
            lv_wkurs          TYPE ekko-wkurs,
            lv_ekgrp          TYPE ekko-ekgrp,
            lv_bsart          TYPE ekko-bsart,
            lv_inco1          TYPE ekko-inco1,
            lv_land1          TYPE lfa1-land1,
            lv_eknam          TYPE eknam,
            lv_knumv           TYPE ekko-knumv,
            lv_lifnr_t        TYPE komv-lifnr,
            lv_kwert          TYPE kwert,
            lv_changenr       TYPE cdchangenr,
            lv_flag           TYPE c,
            lv_sum_a          TYPE kwert,
            lv_sum_a1         TYPE kwert,
            lv_sum_a1_a       TYPE kwert,
            lv_sum_a_a        TYPE kwert,
            lv_count          TYPE n,
            lv_wempf          TYPE wempf,
            lv_add            TYPE kwert,
            lv_werks_p        TYPE werks_d,
            lv_maktx          TYPE maktx,
            lv_wemng          TYPE wemng,
            lv_ebelp_b        TYPE ebelp,
            lv_erfmg_b        TYPE erfmg,
            lv_menge_r        TYPE menge_d,
            lv_remng          TYPE remng,
            lv_rewrt          TYPE rewrt,
            lv_wrbtr          TYPE wrbtr,
            lv_mwskz          TYPE mwskz,
            lv_wmwst          TYPE wmwst,
            lv_lifnr_sc       TYPE lifnr,
            lv_pstyp          TYPE pstyp,
            lv_menge          TYPE menge_d,
            lv_budat          TYPE budat,
            lv_waers_bc       TYPE waers,
            lv_netwr_tbv      TYPE netwr,
            lv_wrbtr_ai       TYPE wrbtr,
            lv_sum            TYPE rewrt,
            lv_netpr_bv       TYPE netpr,
            lv_etenr          TYPE etenr,
            lv_bstyp          TYPE bstyp,
            lv_grtxt          TYPE grtxt,
            lv_ebelp          TYPE ebelp,
            lv_basicv         TYPE netwr,
            lv_smbln          TYPE mseg-smbln,
            lv_waers_c        TYPE ekko-waers,
            lv_kwert_a        TYPE konv-kwert,
            lv_knumv_a        TYPE ekko-knumv,
            lv_knumv_a_a      TYPE ekko-knumv,
            lv_netwr_a        TYPE ekpo-netwr,
            lv_netwr_a_a      TYPE ekpo-netwr,
            lv_kwert_a1       TYPE konv-kwert,
            lv_knumv_a1       TYPE ekko-knumv,
            lv_netwr_a1       TYPE ekpo-netwr,
            lv_netwr_a1_a     TYPE ekpo-netwr,
            lv_knumv_a1_a     TYPE ekko-knumv,
            lv_sum_b          TYPE konv-kwert,
            lv_fwnav          TYPE bset-fwste,
            lv_sum_b_a        TYPE konv-kwert,
            lv_netpr_a        TYPE ekpo-netpr,
            lv_erfmg_add      TYPE mseg-erfmg,
            lv_erfmg_add_a    TYPE mseg-erfmg,
            lv_netpr_a_a      TYPE ekpo-netpr,
            lv_netpr_a1       TYPE ekpo-netpr,
            lv_netpr_a1_a     TYPE ekpo-netpr,
            lv_erfmg_add1     TYPE mseg-erfmg,
            lv_erfmg_add1_a   TYPE mseg-erfmg,
            lv_menge_inv      TYPE menge_d,
            lv_wrbtr_inv      TYPE wrbtr,
            lv_netpr_tax      TYPE netpr,
            lv_kwert_total    TYPE konv-kwert,
            lv_kwert_total_a  TYPE konv-kwert,
            lv_kwert_total_r  TYPE konv-kwert,
            lv_kwert_total_r_a   TYPE konv-kwert,
            lv_bukrs_tax      TYPE bukrs,
            lv_waers_tax      TYPE waers,
            lv_erfmg_ret      TYPE mseg-erfmg,
            lv_server         TYPE tsle4-server,
            lv_bwart_rev      TYPE mseg-bwart,
            lv_erfmg_rev1     TYPE mseg-erfmg,
            lv_bukrs          TYPE bukrs,
            lv_land1_t        TYPE land1,
            lv_kalsm          TYPE kalsm,
            lv_text1          TYPE text1,
            lv_netpr_tax1     TYPE netpr,
            lv_netpr_tax1_r   TYPE netpr,
            lv_mwskz_r        TYPE mwskz,
            lv_mwskz_tax      TYPE mwskz,
            lv_taxamt_t       TYPE bseg-wrbtr,
            lv_tax_tot        TYPE netpr,
            lv_fwnav_tax      TYPE bset-fwste,
            lv_taxamt_t_r     TYPE bseg-wrbtr,
            lv_tax_tot_r      TYPE netpr,
            lv_fwnav_tax_r    TYPE bset-fwste,
            lv_bukrs_tax_r    TYPE bukrs,
            lv_waers_tax_r    TYPE waers,
            lv_mblnr_rev      TYPE mblnr,
            lv_erfmg_rej      TYPE erfmg,
            lv_budat_m        TYPE budat,
            lv_bldat_m        TYPE bldat,
            lv_year1(4),
            lv_mth1(2),
            lv_day1(2),
            lv_base           TYPE waers,
            lv_base_t         TYPE waers,
            lv_waers_t        TYPE waers,
            lv_wkurs_b        TYPE wkurs,
            lv_stblg_re       TYPE stblg,
            lv_belnr          TYPE belnr_d.
                            Structures                                   *
    Structures for storing the output HEADER file
      TYPES: BEGIN OF t_fintab1,
                mblnr(30)     TYPE c,   "GRNumber
                ebeln(20)     TYPE c,   "PONumber
                changenr(38)  TYPE c,   "POAmendmentNumber
                lifnr(22)     TYPE c,   "SupplierCode     
                adr_code(20)  TYPE c,   "AddressCode
                plt_code(22)  TYPE c,   "PlantCode
                land1(3)      TYPE c,   "CountryCode
                elikz(25)     TYPE c,   "GoodsReceiptStatus     
                waers(3)      TYPE c,   "CurrencyCode     
                wkurs(34)     TYPE c,   "ExchRateValue
                server(100)   TYPE c,   "ERPSource
                ekgrp(22)     TYPE c,   "BuyerCode     
                eknam(240)    TYPE c,   "BuyerName     
                bldat(20)     TYPE c,   "GoodsReceiptDate     
                bsart(25)     TYPE c,   "DocType     
                bsart_c(50)   TYPE c,   "ContractType
                asnno(8)      TYPE c,   "ASNNo
                asndate(20)   TYPE c,   "ASNDate
                xblnr(16)     TYPE c,   "DCNo     
                dc_date(20)   TYPE c,   "DCDate
                bktxt(25)     TYPE c,   "PreGRNo
                pre_date(20)  TYPE c,   "PreGRDate
                emlif(22)     TYPE c,   "ReceiverCode
                re_name(240)  TYPE c,   "ReceiverName     
                lifnr_t(10)   TYPE c,   "ThreePLCode
                inco1(8)      TYPE c,   "CommercialTerms
                dmbtr(34)     TYPE c,   "TotalValue     
                vkwrt(34)     TYPE c,   "TotalBasicValue     
                kwert(34)     TYPE c,   "TotalAdditionalCharges
                base(3)       TYPE c,   "BaseCurrencyCode     
                   END OF t_fintab1.
    Structures for storing the output HEADER for STATUS file
      TYPES: BEGIN OF t_fintab_s,
                mblnr(30)     TYPE c,   "GRNumber
                ebeln(20)     TYPE c,   "PONumber
                changenr(38)  TYPE c,   "POAmendmentNumber
                lifnr(22)     TYPE c,   "SupplierCode     
                adr_code(20)  TYPE c,   "AddressCode
                plt_code(22)  TYPE c,   "PlantCode
                land1(3)      TYPE c,   "CountryCode
                elikz(25)     TYPE c,   "GoodsReceiptStatus     
                waers(3)      TYPE c,   "CurrencyCode     
                wkurs(34)     TYPE c,   "ExchRateValue
                server(100)   TYPE c,   "ERPSource
                ekgrp(22)     TYPE c,   "BuyerCode     
                eknam(240)    TYPE c,   "BuyerName     
                bldat(20)     TYPE c,   "GoodsReceiptDate     
                bsart(25)     TYPE c,   "DocType     
                bsart_c(50)   TYPE c,   "ContractType
                asnno(8)      TYPE c,   "ASNNo
                asndate(20)   TYPE c,   "ASNDate
                xblnr(16)     TYPE c,   "DCNo     
                dc_date(20)   TYPE c,   "DCDate
                bktxt(25)     TYPE c,   "PreGRNo
                pre_date(20)  TYPE c,   "PreGRDate
                emlif(22)     TYPE c,   "ReceiverCode
                re_name(240)  TYPE c,   "ReceiverName     
                lifnr_t(10)   TYPE c,   "ThreePLCode
                inco1(8)      TYPE c,   "CommercialTerms
                dmbtr(34)     TYPE c,   "TotalValue     
                vkwrt(34)     TYPE c,   "TotalBasicValue     
                kwert(34)     TYPE c,   "TotalAdditionalCharges
                smbln   TYPE mseg-smbln,"For reversal status
             END OF t_fintab_s.
    Structures for storing the output DETAIL file
      TYPES: BEGIN OF t_fintab2,
                zeile(22)     TYPE c,   "GRLineNumber
              mblnr(30)     TYPE c,   "GRNumber
                server(100)   TYPE c,   "ERPSource       
                ebelp(38)     TYPE c,   "POLineNumber
                ebeln(20)     TYPE c,   "PONumber
                changenr(38)  TYPE c,   "POAmendmentNumber
                scheculenumber(38) TYPE c, "ScheduleNumber
                meins(25)     TYPE c,   "UOM
                lgort(22)     TYPE c,   "WarehouseCode
                waers(3)      TYPE c,   "Currency Code
                matnr(40)     TYPE c,       "PartNumber
                 maktx(240)    TYPE c,   "PartDescription           
              kostl(22)     TYPE c,   "CostCenterCode
              bukrs(15)     TYPE c,       "CompanyCode
                menge_i(22)   TYPE c,   "InspectedQuantity
                wemng(22)     TYPE c,   "GRRecievedQuantity     
                menge_a(22)   TYPE c,   "GRAcceptedQuantity          
              menge_g(22)   TYPE c,   "GRRejectedQuantity
                grrework(22)  TYPE c,       "GRReworkQuantity               
              menge_r(22)   TYPE c,       "GRReturnedQuantity
                grund(25)     TYPE c,   "RejnReason     
                remng(22)     TYPE c,   "QuantityInvoiced
                rewrt(34)     TYPE c,       "AmountInvoiced
                wrbtr(34)     TYPE c,       "AmountPaid
                mwskz_t(100)  TYPE c,   "TaxCode
                wmwst_w(34)   TYPE c,   "TaxValue
                lifnr_sc(22)  TYPE c,   "SupplierCode
                adr_code(20)  TYPE c,       "AddressCode     
                taxdiscount(34) TYPE c, "TaxChargeDiscount
                mwskz_v(22)   TYPE c,   "VATCode
                wmwst_v(34)   TYPE c,   "VATValue
                vatoption(1)  TYPE c,   "VATOption
                kwert_i(34)   TYPE c,   "InspectionCost
                pstyp(25)     TYPE c,   "IssueType
                pendingschdqty(22) TYPE c, "PendingSchdQuantity
                menge_o(22)   TYPE c,   "POOrderQty
                erfmg(22)     TYPE c,   "MovedQty
                tobemovedqty(22)   TYPE c, "TobeMovedQty
                balanceqty(22)     TYPE c, "BalanceQty
                netpr_bv(34)  TYPE c,   "BasicValue
                kwert_a(34)   TYPE c,   "AdditionalCharges
                budat_i(20)   TYPE c,   "InspectionDate
                budat_m(20)   TYPE c,   "MovedDate
                elikz(25)     TYPE c,   "GRItemStatus
                budat_g(20)   TYPE c,   "GRRecdDate
               END OF t_fintab2.
    Structures for storing the MKPF
      TYPES: BEGIN OF t_mkpf,
                 mblnr   TYPE mkpf-mblnr,
                 budat   TYPE mkpf-budat,
                 xblnr   TYPE mkpf-xblnr,
                 bldat   TYPE mkpf-bldat,
                END OF t_mkpf.
    Structures for storing the MSEG
      TYPES: BEGIN OF t_mseg,
                matnr   TYPE mseg-matnr,
                zeile   TYPE mblpo,
                menge   TYPE menge_d,
                meins   TYPE mseg-meins,
                lgort   TYPE mseg-lgort,
                mblnr   TYPE mseg-mblnr,
                bukrs   TYPE mseg-bukrs,
                ebeln   TYPE bstnr,
                ebelp   TYPE ekpo-ebelp,
                kostl   TYPE mseg-kostl,
                waers   TYPE mseg-waers,
                erfmg   TYPE mseg-erfmg,
                vkwrt   TYPE mseg-vkwrt,
                elikz   TYPE mseg-elikz,
                insmk   TYPE mseg-insmk,
                bwart   TYPE mseg-bwart,
                grund   TYPE mseg-grund,
             END OF t_mseg.
    Structures for storing the log file
      TYPES: BEGIN OF t_logfile,
              desc    TYPE char50,
               END OF t_logfile.
    Structures for storing the RSEG file
      TYPES: BEGIN OF t_rseg,
              menge    TYPE menge_d,
              wrbtr    TYPE wrbtr,
             END OF t_rseg.
      TYPES: BEGIN OF t_add,
              ebeln    TYPE ebeln,
             END OF t_add.
      TYPES: BEGIN OF t_add1,
              ebeln    TYPE ebeln,
              ebelp    TYPE ebelp,
             END OF t_add1.
      TYPES: BEGIN OF t_total,
              dmbtr    TYPE dmbtr,
             END OF t_total.
      TYPES: BEGIN OF t_total1,
              dmbtr    TYPE dmbtr,
             END OF t_total1.
      TYPES: BEGIN OF t_basictotal,
              erfmg    TYPE erfmg,
             END OF t_basictotal.
      TYPES: BEGIN OF t_basic,
              ebeln    TYPE ebeln,
              ebelp    TYPE ebelp,
              erfmg    TYPE erfmg,
             END OF t_basic.
      TYPES: BEGIN OF t_zcond,
              zcond1   TYPE kscha,
              zcond2   TYPE kscha,
              zcond3   TYPE kscha,
              zcond4   TYPE kscha,
              zcond5   TYPE kscha,
              zcond6   TYPE kscha,
              zcond7   TYPE kscha,
              zcond8   TYPE kscha,
              zcond9   TYPE kscha,
              zcond10  TYPE kscha,
             END OF t_zcond.
      TYPES: BEGIN OF t_add_k,
              kwert    TYPE konv-kwert,
             END OF t_add_k.
      TYPES: BEGIN OF t_tax,
              ebeln   TYPE mseg-ebeln,
              ebelp   TYPE mseg-ebelp,
              menge   TYPE mseg-menge,
             END OF t_tax.
      TYPES: BEGIN OF t_mseg_m,
              mblnr   TYPE mblnr,
              elikz   TYPE elikz,
              wempf   TYPE wempf,
              ebeln   TYPE ebeln,
              ebelp   TYPE ebelp,
              werks   TYPE werks,
              erfmg   TYPE erfmg,
              bwart   TYPE bwart,
              bukrs   TYPE bukrs,
              lfbnr   TYPE lfbnr,
             END OF t_mseg_m.
      TYPES: BEGIN OF t_erfmg,
              erfmg   TYPE erfmg,
             END OF t_erfmg.
                              Internal tables                            *
      DATA: i_zrfcinfo    LIKE zrfcinfo OCCURS 0 WITH HEADER LINE,
            i_fintab1     TYPE TABLE OF t_fintab1 WITH HEADER LINE,
            i_fintab_s    TYPE TABLE OF t_fintab_s WITH HEADER LINE,
            i_fintab2     TYPE TABLE OF t_fintab2 WITH HEADER LINE,
            i_mkpf        TYPE TABLE OF t_mkpf WITH HEADER LINE,
            i_mseg        TYPE TABLE OF t_mseg WITH HEADER LINE,
            i_rseg        TYPE TABLE OF t_rseg WITH HEADER LINE,
            i_total       TYPE TABLE OF t_total WITH HEADER LINE,
            i_basictotal  TYPE TABLE OF t_basictotal WITH HEADER LINE,
            i_erfmg       TYPE TABLE OF t_erfmg WITH HEADER LINE,
            i_erfmg1      TYPE TABLE OF t_erfmg WITH HEADER LINE,
            i_basic       TYPE TABLE OF t_basic WITH HEADER LINE,
            i_total1      TYPE TABLE OF t_total1 WITH HEADER LINE,
            i_tax         TYPE TABLE OF t_tax WITH HEADER LINE,
            i_tax_r       TYPE TABLE OF t_tax WITH HEADER LINE,
            i_mseg_m      TYPE TABLE OF t_mseg_m WITH HEADER LINE,
            i_add         TYPE TABLE OF t_add1 WITH HEADER LINE,
            i_add_a       TYPE TABLE OF t_add1 WITH HEADER LINE,
            i_add1        TYPE TABLE OF t_add1 WITH HEADER LINE,
            i_zcond       TYPE TABLE OF t_zcond  WITH HEADER LINE,
            i_zcond_r     TYPE TABLE OF t_zcond  WITH HEADER LINE,
            i_add_cond    TYPE TABLE OF t_add_k  WITH HEADER LINE,
            i_add_cond_r  TYPE TABLE OF t_add_k    WITH HEADER LINE,
            i_add_cond_r_a  TYPE TABLE OF t_add_k    WITH HEADER LINE,
            i_zcond_a     TYPE TABLE OF t_zcond  WITH HEADER LINE,
            i_add_cond_a  TYPE TABLE OF t_add_k  WITH HEADER LINE,
            i_add1_a      TYPE TABLE OF t_add1 WITH HEADER LINE,
            i_zcond_r_a   TYPE TABLE OF t_zcond  WITH HEADER LINE,
            i_logfile     TYPE TABLE OF t_logfile WITH HEADER LINE,
            i_fintab1_h   TYPE TABLE OF t_fintab1 WITH HEADER LINE,
            i_fintab2_h   TYPE TABLE OF t_fintab2 WITH HEADER LINE.
      DATA: BEGIN OF i_mwdat OCCURS 0.
              INCLUDE STRUCTURE rtax1u15.
      DATA: END OF i_mwdat.
      DATA: BEGIN OF i_mwdat_t OCCURS 0.
              INCLUDE STRUCTURE rtax1u15.
      DATA: END OF i_mwdat_t.
      DATA: BEGIN OF i_mwdat_t_r OCCURS 0.
              INCLUDE STRUCTURE rtax1u15.
      DATA: END OF i_mwdat_t_r.
                             Work areas                                  *
      DATA : wa_zrfcinfo TYPE zrfcinfo.
    Get the last execution date/time from ZTABLE
    SELECT *
           FROM zrfcinfo
           INTO TABLE i_zrfcinfo
           WHERE
             name = 'ZRFC_VCS_GET_GOODSRECEIPT' AND
             status = '1'.
    DESCRIBE TABLE i_zrfcinfo LINES sy-tabix.
    Sort the table for retrieving the latest date/time
    SORT i_zrfcinfo BY exc_date DESCENDING exc_time  DESCENDING.
    READ TABLE i_zrfcinfo INDEX 1.
    IF sy-subrc = 0.
       lv_suc_date = i_zrfcinfo-exc_date.
       lv_suc_time = i_zrfcinfo-exc_time.
    ENDIF.
    Fetch the updated records from the table MKPF between the latest
    *date/time
    lv_suc_date = '20070529'.
      SELECT mblnr
             budat
             xblnr
             bldat
             FROM mkpf
             INTO TABLE i_mkpf
             WHERE
             cpudt GE lv_suc_date AND
             cputm GE lv_suc_time.
    HEADER
    For multiple PO
      IF NOT i_mkpf[] IS INITIAL.
        SELECT mblnr
               elikz
               wempf
               ebeln
               ebelp
               werks
               erfmg
               bwart
               bukrs
               lfbnr
               FROM mseg
               INTO TABLE i_mseg_m
               FOR ALL ENTRIES IN i_mkpf
               WHERE mblnr = i_mkpf-mblnr
               and bwart NE '543'.
        IF NOT lv_suc_date IS INITIAL.
          SELECT mblnr
                 elikz
                 wempf
                 ebeln
                 ebelp
                 werks
                 erfmg
                 bwart
                 bukrs
                 FROM mseg
                 INTO TABLE i_mseg_m
                 FOR ALL ENTRIES IN i_mseg_m
                 WHERE mblnr = i_mseg_m-lfbnr
        ENDIF.
      ENDIF.
    For Selecting the ERP Source
      SELECT SINGLE server INTO lv_server FROM tsle4.
    Appending all the fields  to the output HEADER file layout
      LOOP AT i_mseg_m.
        MOVE-CORRESPONDING i_mseg_m TO i_fintab1.
        CONCATENATE i_mseg_m-mblnr '-' i_mseg_m-ebeln '-' i_mseg_m-ebelp
    INTO i_fintab1-mblnr.
        CLEAR : lv_budat_m , lv_bldat_m .
    For GR Date
        SELECT SINGLE budat bldat INTO (lv_budat_m , lv_bldat_m) FROM mkpf
        WHERE   mblnr = i_mseg_m-mblnr.
        IF sy-subrc = 0.
          i_fintab1-bldat = lv_budat_m.
          lv_year1 = lv_bldat_m+0(4).
          lv_mth1  = lv_bldat_m+4(2).
          lv_day1  = lv_bldat_m+6(2).
        CONCATENATE lv_day1 '/' lv_mth1 '/' lv_year1 INTO i_fintab1-dc_date.
        ENDIF.
    Retrieve the base currency code
        CLEAR lv_base.
        SELECT SINGLE waers INTO lv_base FROM t001 WHERE bukrs =
      i_mseg_m-bukrs.
             IF sy-subrc = 0.
        i_fintab1-base = lv_base.
      ENDIF.
    For the Receiver Name
      i_fintab1-re_name = i_mseg_m-wempf.
    For the Plant Code
      i_fintab1-plt_code = i_mseg_m-werks.
    For the ERP Source
      i_fintab1-server = lv_server.
    For The Address Code
      i_fintab1-adr_code = 'A1'.
    For the Quantity ( ebeln - PO number , Elelp -  PO line number,
    erfmg - Quantity, bwart - Movement type ).
      SELECT ebeln ebelp erfmg INTO TABLE i_basic FROM mseg WHERE mblnr =
           i_mseg_m-mblnr AND bwart NE '543' AND ebeln = i_mseg_m-ebeln AND
           ebelp = i_mseg_m-ebelp.
      CLEAR lv_basicv.
      LOOP AT i_basic.
    Retrieve from table EKPO (Po LineItem) for total basic value( netpr
    - Net price )
        SELECT SINGLE netpr
               INTO lv_netwr_tbv
               FROM ekpo WHERE ebeln = i_basic-ebeln
                AND ebelp = i_basic-ebelp.
        IF sy-subrc = 0.
          lv_basicv = lv_basicv + i_basic-erfmg * lv_netwr_tbv.
        ENDIF.
    Retrieve the basic value for Reversal
        SELECT erfmg INTO TABLE i_basictotal FROM mseg
        WHERE ( bwart = '122' OR bwart = '124' OR bwart = '161' )
        AND lfbnr = i_mseg_m-mblnr AND ebelp = i_basic-ebelp
        AND ebeln = i_basic-ebeln.
        LOOP AT i_basictotal.
          lv_basicv = lv_basicv - ( i_basictotal-erfmg * lv_netwr_tbv ).
        ENDLOOP.
      ENDLOOP.
    lv_basicv move to total basic value i.e i_fintab1-vkwrt
      MOVE lv_basicv TO i_fintab1-vkwrt.
      CONDENSE i_fintab1-vkwrt NO-GAPS.
    Retrieve the total value from table MSEG ( GR Line item )
      SELECT dmbtr INTO TABLE i_total FROM mseg
      WHERE mblnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp.
      LOOP AT i_total.
        lv_dmbtr = lv_dmbtr + i_total-dmbtr.
      ENDLOOP.
    Calculating the total value for reversal
      SELECT dmbtr INTO TABLE i_total1 FROM mseg
      WHERE  ( bwart = '122' OR bwart = '124' OR bwart = '161' )
      AND lfbnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp .
      LOOP AT i_total1.
        lv_dmbtr = lv_dmbtr - i_total1-dmbtr.
      ENDLOOP.
    For getting the exchange Rate ( wkurs - Exchange Rate )
      SELECT SINGLE wkurs INTO lv_wkurs_b FROM ekko
      WHERE ebeln = i_mseg_m-ebeln .
      IF sy-subrc = 0.
        lv_dmbtr = lv_dmbtr / lv_wkurs_b.
      ENDIF.
    Calculate the tax
      CLEAR : i_tax, lv_netpr_tax1 , lv_mwskz, lv_taxamt_t , lv_tax_tot ,
              lv_fwnav_tax, lv_bukrs_tax , lv_waers_tax.
    *****( menge - Quantity ).
      SELECT ebeln ebelp menge FROM mseg INTO TABLE i_tax
      WHERE mblnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp.
      LOOP AT i_tax.
    ( bukrs - Company Code , waers - Currency Key ).
        SELECT SINGLE bukrs waers INTO (lv_bukrs_tax , lv_waers_tax)
        FROM ekko WHERE ebeln = i_tax-ebeln.
    *****( netpr - net price , mwskz - tax on sales).
        SELECT SINGLE netpr mwskz INTO (lv_netpr_tax1 , lv_mwskz)
        FROM ekpo WHERE ebeln = i_tax-ebeln AND ebelp = i_tax-ebelp.
        IF sy-subrc = 0.
          lv_taxamt_t = i_tax-menge * lv_netpr_tax1.
        ENDIF.
        IF NOT lv_mwskz IS INITIAL.
          CALL FUNCTION 'CALCULATE_TAX_FROM_NET_AMOUNT'
               EXPORTING
                    i_bukrs = lv_bukrs_tax
                    i_mwskz = lv_mwskz
                    i_waers = lv_waers_tax
                    i_wrbtr = lv_taxamt_t
               IMPORTING
                    e_fwnav = lv_fwnav_tax
               TABLES
                    t_mwdat = i_mwdat_t.
          IF sy-subrc <> 0.
          ENDIF.
        ENDIF.
        lv_tax_tot = lv_tax_tot + lv_fwnav_tax.
        CLEAR lv_fwnav_tax.
      ENDLOOP.
    For reversal
      CLEAR : i_tax_r, lv_netpr_tax1_r, lv_mwskz_r, lv_taxamt_t_r,
              lv_tax_tot_r, lv_fwnav_tax_r, lv_bukrs_tax_r, lv_waers_tax_r
      SELECT  ebeln ebelp menge FROM mseg
      INTO TABLE i_tax_r WHERE ( bwart = '122' OR bwart = '124' OR bwart =
    '161' )
      AND lfbnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp.
      LOOP AT i_tax_r.
        SELECT SINGLE bukrs waers INTO (lv_bukrs_tax_r , lv_waers_tax_r)
        FROM ekko WHERE ebeln = i_tax_r-ebeln.
        SELECT SINGLE netpr mwskz INTO (lv_netpr_tax1_r , lv_mwskz_r)
        FROM ekpo WHERE ebeln = i_tax_r-ebeln AND ebelp = i_tax_r-ebelp.
        IF sy-subrc = 0.
          lv_taxamt_t_r = i_tax_r-menge * lv_netpr_tax1_r.
        ENDIF.
        IF NOT lv_mwskz_r IS INITIAL.
          CALL FUNCTION 'CALCULATE_TAX_FROM_NET_AMOUNT'
               EXPORTING
                    i_bukrs = lv_bukrs_tax_r
                    i_mwskz = lv_mwskz_r
                    i_waers = lv_waers_tax_r
                    i_wrbtr = lv_taxamt_t_r
               IMPORTING
                    e_fwnav = lv_fwnav_tax_r
               TABLES
                    t_mwdat = i_mwdat_t_r.
          IF sy-subrc <> 0.
          ENDIF.
        ENDIF.
        lv_tax_tot_r = lv_tax_tot_r + lv_fwnav_tax_r.
        CLEAR lv_fwnav_tax_r.
      ENDLOOP.
    Finally the Total value is moving to i_fintab-dmbtr
      i_fintab1-dmbtr = lv_dmbtr + lv_tax_tot - lv_tax_tot_r.
      CONDENSE i_fintab1-dmbtr NO-GAPS.
      IF i_fintab1-dmbtr = ' '.
        i_fintab1-dmbtr = '0.0000'.
      ENDIF.
      IF i_fintab1-vkwrt = ' '.
        i_fintab1-vkwrt = '0.0000'.
      ENDIF.
      SELECT SINGLE mblnr INTO lv_mblnr_rev FROM mseg
      WHERE ( bwart = '102' OR bwart = '104' OR  bwart = '106' )
      AND lfbnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp =  i_mseg_m-ebelp.
      IF sy-subrc = 0.
        i_fintab1-elikz = 'Reversed'.
      ELSEIF i_fintab1-elikz = 'X'.
        i_fintab1-elikz = 'Completed'.
      ELSEIF i_fintab1-elikz = ' '.
        i_fintab1-elikz = 'NotCompleted'.
      ENDIF.
    Retrieve from table EKKO for Supplier Code , Exchange Rate,
    Purchasing Group, Purchasing Document Type,
      SELECT SINGLE lifnr
                     wkurs
                     ekgrp
                     bsart
                     inco1
                     knumv
                     waers
             INTO (lv_lifnr , lv_wkurs, lv_ekgrp , lv_bsart ,
                   lv_inco1 , lv_knumv , lv_waers_c)
             FROM ekko
             WHERE ebeln = i_mseg_m-ebeln.
      IF sy-subrc = 0.
        i_fintab1-lifnr = lv_lifnr.
        i_fintab1-ekgrp = lv_ekgrp.
        i_fintab1-waers = lv_waers_c.
        i_fintab1-bsart = lv_bsart.
        i_fintab1-inco1 = lv_inco1.
        i_fintab1-bsart_c = lv_bsart.
        MOVE lv_wkurs TO i_fintab1-wkurs.
        CONDENSE i_fintab1-wkurs NO-GAPS.
      ENDIF.
    Retreive for Land
      SELECT SINGLE land1 INTO lv_land1 FROM lfa1 WHERE lifnr = lv_lifnr .
      IF sy-subrc = 0.
        i_fintab1-land1 = lv_land1.
      ENDIF.
    Retrieve from table T024 for BuyerCode
      SELECT SINGLE  eknam INTO lv_eknam FROM t024 WHERE ekgrp = lv_ekgrp.
      IF sy-subrc = 0.
        i_fintab1-eknam = lv_eknam.
      ENDIF.
    Retrieve from table KONV for AdditionalCharges
    Retrieve PO Number, PO Line Number from GR Line Item
      SELECT ebeln ebelp INTO TABLE i_add FROM mseg
      WHERE mblnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp.
      DELETE ADJACENT DUPLICATES FROM i_add COMPARING ebeln ebelp .
      LOOP AT i_add.
    ********( knumv - number of document condition )
        SELECT SINGLE knumv INTO lv_knumv_a FROM ekko
        WHERE ebeln = i_add-ebeln.
        IF sy-subrc = 0.
          CLEAR : i_zcond,i_add_cond[], lv_kwert_total.
          SELECT zcond1
                 zcond2
                 zcond3
                 zcond4
                 zcond5
                 zcond6
                 zcond7
                 zcond8
                 zcond9
                 zcond10
          FROM zvcs_con_config
          INTO TABLE i_zcond
          WHERE ( zid = '001' ) OR
                ( zid = '002' ) OR
                ( zid = '003' ) OR
                ( zid = '004' ) OR
                ( zid = '005' ).
          LOOP AT i_zcond.
            SELECT kwert APPENDING TABLE i_add_cond FROM konv
            WHERE knumv = lv_knumv_a AND kposn = i_add-ebelp
            AND   ( ( kschl EQ i_zcond-zcond1 ) OR
                    ( kschl EQ i_zcond-zcond2 ) OR
                    ( kschl EQ i_zcond-zcond3 ) OR
                    ( kschl EQ i_zcond-zcond4 ) OR
                    ( kschl EQ i_zcond-zcond5 ) OR
                    ( kschl EQ i_zcond-zcond6 ) OR
                    ( kschl EQ i_zcond-zcond7 ) OR
                    ( kschl EQ i_zcond-zcond8 ) OR
                    ( kschl EQ i_zcond-zcond9 ) OR
                    ( kschl EQ i_zcond-zcond10 ) ).
          ENDLOOP.
          CLEAR : lv_kwert_total.
          LOOP AT i_add_cond.
            lv_kwert_total = lv_kwert_total + i_add_cond-kwert.
          ENDLOOP.
          CLEAR : lv_sum_a.
          IF sy-subrc = 0.
            lv_sum_a =  lv_sum_a  + lv_kwert_total.
            SELECT SINGLE netwr netpr INTO (lv_netwr_a , lv_netpr_a)
            FROM ekpo WHERE ebeln = i_add-ebeln AND ebelp = i_add-ebelp.
            SELECT SINGLE erfmg INTO lv_erfmg_add FROM mseg
            WHERE mblnr = i_mseg_m-mblnr AND ebeln = i_add-ebeln
            AND ebelp  = i_add-ebelp.
            lv_sum_b = lv_sum_b + ( lv_erfmg_add * lv_netpr_a ) *
            lv_sum_a / lv_netwr_a .
          ENDIF.
        ENDIF.
        CLEAR : lv_kwert_a, lv_knumv_a , lv_netwr_a , lv_netpr_a ,
                lv_erfmg_add.
      ENDLOOP.
      CLEAR: lv_sum_a.
    Retrieve the returned
      SELECT ebeln ebelp INTO TABLE i_add1 FROM mseg
      WHERE ( bwart = '122' OR bwart = '124' OR bwart = '161' )
      AND lfbnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
      AND ebelp = i_mseg_m-ebelp.
      DELETE ADJACENT DUPLICATES FROM i_add1 COMPARING ebeln.
      LOOP AT i_add1.
        SELECT SINGLE knumv INTO lv_knumv_a1 FROM ekko
        WHERE ebeln = i_add-ebeln.
        IF sy-subrc = 0.
          CLEAR : i_zcond_r,i_add_cond_r[], lv_kwert_total_r.
          SELECT zcond1
                 zcond2
                 zcond3
                 zcond4
                 zcond5
                 zcond6
                 zcond7
                 zcond8
                 zcond9
                 zcond10
          FROM zvcs_con_config
          INTO TABLE i_zcond_r
          WHERE ( zid = '001' ) OR
                ( zid = '002' ) OR
                ( zid = '003' ) OR
                ( zid = '004' ) OR
                ( zid = '005' ).
          LOOP AT i_zcond_r.
            SELECT kwert APPENDING TABLE i_add_cond_r FROM konv
            WHERE knumv = lv_knumv_a1 AND kposn = i_add1-ebelp
            AND ( ( kschl EQ i_zcond_r-zcond1 ) OR
                  ( kschl EQ i_zcond_r-zcond2 ) OR
                  ( kschl EQ i_zcond_r-zcond3 ) OR
                  ( kschl EQ i_zcond_r-zcond4 ) OR
                  ( kschl EQ i_zcond_r-zcond5 ) OR
                  ( kschl EQ i_zcond_r-zcond6 ) OR
                  ( kschl EQ i_zcond_r-zcond7 ) OR
                  ( kschl EQ i_zcond_r-zcond8 ) OR
                  ( kschl EQ i_zcond_r-zcond9 ) OR
                  ( kschl EQ i_zcond_r-zcond10 ) ).
    append i_add_cond.
          ENDLOOP.
          LOOP AT i_add_cond_r.
            lv_kwert_total_r = lv_kwert_total_r + i_add_cond_r-kwert.
          ENDLOOP.
          IF sy-subrc = 0.
            lv_sum_a1 =  lv_sum_a1  + lv_kwert_total_r .
            SELECT SINGLE netwr netpr INTO (lv_netwr_a1 , lv_netpr_a1)
            FROM ekpo WHERE ebeln = i_add-ebeln.
            CLEAR : i_erfmg.
            SELECT erfmg INTO TABLE i_erfmg FROM mseg
            WHERE ( bwart = '122' OR bwart = '124' OR bwart = '161' )
            AND lfbnr = i_mseg_m-mblnr AND ebeln = i_mseg_m-ebeln
            AND ebelp = i_mseg_m-ebelp.

  • Printing Goods Receipt Quantity Deviation

    Hi Gurus,
    I want to print report after Goods Receipt with quantity deviations. I tried to use MLMD Output for this but nothing heppened. I define my smartform and add to MLMD, and still nothing. Any example or tutorial or note? I'm working on ECC 5.0. Should I change some of these Program:RSNASTSO,  FORM routine:SAPOFFICE_AUFRUF or Form: ZMMGR1_L.

    Hi
    For the output type MLMD, the GR Message indicator has to be flagged in the PO at Header level. Then only the message gets trigerred.
    Please check if you have flagged this & Maintain the Condition records accordingly.
    Award Points if useful
    Thanks & Regards
    Kishore

  • Report with open Purchase orders and open Goods Receipt (without invoices)

    Dear All,
    We require a report in purchasing which will show:
    1. open purchase orders
    2. open goods receipts
    We do not want POs and GRs that have been created into invoices to be included in the report.
    At the moment we tried ME2N with RECHNUNG in selection parameters but it includes invoices. We have tried other selection parameters and reports but the results are not helpful.
    I have also checked SDN but there is no correct answer. Most of them specify the ME2N with RECHNUNG as a solution but this does not work for us.
    Any help would be appreciated.
    G.

    Hi,
    Try ME2N, Select WE101....Also Select ALV
    go to next screen....Go to change layout
    Select to be deliverd(Qty) and Value, also to be invoice(Qty) & Value.
    Hope Help U!
    Regards,
    Pardeep Malik

  • Goods Receipt Report With 101 movement type using bapi_goodsmvt_create

    Dear Abapers,
            i am getting some problem, i got requirement like Goods Receipt Report with 101 movement type using
    bapi_goodsmvt_create and data should upload through excel sheet.
    still facing problems, i have searched sdn forum n sdn code also, but relevant answer i could not find.
    What are all the inputs i need to take and please give some valuable inputs to me.
    please do help ..... thanks for advance..
    Thanks & regards,
    Vinay.
    Moderator message : Spec dumping is not allowed, show the work you have already done. Thead locked.
    Edited by: Vinod Kumar on Sep 27, 2011 10:58 AM

    Dear Abapers,
            i am getting some problem, i got requirement like Goods Receipt Report with 101 movement type using
    bapi_goodsmvt_create and data should upload through excel sheet.
    still facing problems, i have searched sdn forum n sdn code also, but relevant answer i could not find.
    What are all the inputs i need to take and please give some valuable inputs to me.
    please do help ..... thanks for advance..
    Thanks & regards,
    Vinay.
    Moderator message : Spec dumping is not allowed, show the work you have already done. Thead locked.
    Edited by: Vinod Kumar on Sep 27, 2011 10:58 AM

  • Crystal report 2008 for B1 Join report of open PO, good receipt, good retur

    Hi All,
    I am new to crystal report for B1. I am developing a report for showing all open purchase order, good receipt, good return, A/P Invoice and A/P credited memo   rows for selected project.
    This is similar to open item report, but I need to show detail rows (items) for each of those Document. I can easy do a select token with project code for only one type of those document e.g. open purchase order (link OPOR with POR1 and select records by project code).
    My question is how to do a report with those 5 types document together. I did try to include all those tables, but I canu2019t find a link between them.  Or Can I do something link sub reports to include all those report by using one selection token?  How can I do it?
    Any comment, ANTHING will be very much appreciated!!

    Hi Julian......
    yes you are correct use OLE DB connection and when it shows your PC Connection then just put the necessary information related to SQL server and DB for which you want to create this query.
    Once you put all these info then click on next and then finish.
    It will show you the Command option and one more option in expand and collapse format where all the tables and views of database are present.
    Just double click on command and paste your query report and add it......
    Now its set to design CR for your query as per requirement.....
    Regards,
    Rahul

  • Report for list of good receipt document against advance document

    Dear all,
    Good Morning.
    I want list of pending purchase order in which advace document is created but good receipt document is not created.
    Like.
    I have create one purchase order & also create down payment request with F-47. Payment also done by f-48.
    Now i want below mention detail
    1) List of purchase order in which advance is done but good receipt document is not created i means material is not received.
    2) If good receipt document is created then list of good receipt documents.
    Above both report required with advance document no. & purchase order no.
    Regards,
    Mahesh Wagh

    List of purchase order in which advance is done but good receipt document is not created
    i means material is not received.
    Use report ME2N with scope of list 'ALLES',selection parameter - WE101
    If good receipt document is created then list of good receipt documents.
    Use report ME2N With Scope of list 'ALLES',Selection parameter - RECHNUNG

  • Grn report(goods receipt notice)

    hi to all sdn people can u pls give coding for this if u give the answer i will be greatful to u and i will reward point to all of u
    my report is as follows
    a report for grn details which shows the all details of goods receipt movements based on the purcahse order.
    and pls tell what is the pupose of this report and tables used

    Hi
    Use the Tables
    EKKO,EKPO --PO tables and
    MKPF and MSEG Tables GRN related.
    This report is useful to track the qty of ggods/materials received with respect to the PO's placed.
    see the sample code and change the output as per your requirement.
    *& Report  ZMM_PO_REPORT
    REPORT  ZMM_PO_REPORT message-Id yb
           NO STANDARD PAGE HEADING
           LINE-COUNT 60(1)
           LINE-SIZE 230.
           D A T A B A S E  T A B L E S   D E C L A R A T I O N
    TABLES: lfa1,           " Vendor Master
            t161,           " PO Doc Types
            t024,           " Purchase Groups
            ekko.           " PO Header
                   T Y P E S  D E C L A R A T I O N S
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_po,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bukrs TYPE bukrs,           " Company Code
            bsart TYPE bbsrt,           " PO Type
            lifnr TYPE lifnr,           " Vendor No
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
           END OF s_po.
    Purchase Orders History Structure
    TYPES: BEGIN OF s_account,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            gjahr TYPE mjahr,           " Fiscal Year
            belnr TYPE mblnr,           " PO Invoice No
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Local Currency
            dmbtr TYPE dmbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
            shkzg TYPE shkzg,           " Dr/Cr Indicator
           END OF s_account.
    Purchase Orders History Structure(Item Sum)
    TYPES: BEGIN OF s_inv_sum,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
           END OF s_inv_sum.
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_rep,
            lifnr TYPE lifnr,           " Vendor No
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bsart TYPE bbsrt,           " PO Type
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
            name1 TYPE name1,           " Plant
            orewr TYPE netpr,           " To be Invoiced Price
            curr  TYPE waers,           " Inv Doc Currency
           END OF s_rep.
               D A T A  D E C L A R A T I O N S
    DATA: gv_title1 TYPE sylisel,            " Report title
          gv_dial.                           " Color flag
                C O N S T A N T S  D E C L A R A T I O N S
    CONSTANTS: c_x                VALUE 'X',   " Flag X
               c_h                VALUE 'H',   " Debit
               c_vgabe TYPE vgabe VALUE '2'.   " Transaction Type
         I N T E R N A L  T A B L E S  D E C L A R A T I O N S
    DATA: i_po    TYPE STANDARD TABLE OF s_po WITH HEADER LINE,
                                 " Purchase Order
          i_inv   TYPE STANDARD TABLE OF s_inv_sum WITH HEADER LINE,
                                         " PO Invoice Values
          i_rep   TYPE STANDARD TABLE OF s_rep WITH HEADER LINE,
                                     " PO Invoice Values
          i_ekbe  TYPE STANDARD TABLE OF s_account WITH HEADER LINE.
                               " PO Invoice Values
                     S E L E C T I O N  S C R E E N                      *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr MATCHCODE OBJECT kred,
                    s_ebeln FOR ekko-ebeln MATCHCODE OBJECT mekk,
                    s_bsart FOR t161-bsart,
                    s_ekgrp FOR t024-ekgrp,
                    s_bedat FOR ekko-bedat.
    SELECTION-SCREEN END OF BLOCK b1.
                      I N I T I A L I Z A T I O N                        *
    INITIALIZATION.
                  A T  S E L E C T I O N - S C R E E N                   *
    AT SELECTION-SCREEN.
    Validate the screen fields
      PERFORM validate_screen.
                   S T A R T - O F - S E L E C T I O N                   *
    START-OF-SELECTION.
    Fetch main data
      PERFORM fetch_data.
                   T O P - O F - P A G E                                 *
    TOP-OF-PAGE.
    Header of the List
      PERFORM header.
                   E N D - O F - P A G E                                 *
    Footer
    END-OF-PAGE.
      ULINE.
                   E N D - O F - S E L E C T I O N                       *
    END-OF-SELECTION.
    Display the Report Output data
      PERFORM display_data.
    At Line-Selection
    AT LINE-SELECTION.
    When double clicked on EBELN display the details of Purchase Doc
      PERFORM line_sel.
    *&      Form  validate_screen
    Validation of Selection Screen fields
    FORM validate_screen .
    Validation of Vendor Number
      CLEAR lfa1-lifnr.
      IF NOT s_lifnr[] IS INITIAL.
        SELECT lifnr UP TO 1 ROWS
            INTO lfa1-lifnr
            FROM lfa1
            WHERE lifnr IN s_lifnr.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Vendor'(002).
        ENDIF.
      ENDIF.
    Validation of PO Number
      CLEAR ekko-ebeln.
      IF NOT s_ebeln[] IS INITIAL.
        SELECT ebeln UP TO 1 ROWS
            INTO ekko-ebeln
            FROM ekko
            WHERE ebeln IN s_ebeln.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Document Number'(003).
        ENDIF.
      ENDIF.
    Validation of PO Document Type
      CLEAR t161-bsart.
      IF NOT s_bsart[] IS INITIAL.
        SELECT bsart UP TO 1 ROWS
            INTO t161-bsart
            FROM t161
            WHERE bsart IN s_bsart.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchase Document Type'(004).
        ENDIF.
      ENDIF.
    Validation of Purchasing Group
      CLEAR t024-ekgrp.
      IF NOT s_ekgrp[] IS INITIAL.
        SELECT ekgrp UP TO 1 ROWS
            INTO t024-ekgrp
            FROM t024
            WHERE ekgrp IN s_ekgrp.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchasing Group'(005).
        ENDIF.
      ENDIF.
    ENDFORM.                    " validate_screen
    *&      Form  fetch_data
    Fetching the PO related data from Database Tables
    FORM fetch_data .
      CLEAR i_po.
      REFRESH i_po.
      SELECT a~ebeln            " PO No.
             b~ebelp            " PO Item
             a~bstyp            " PO Category
             a~bukrs            " Company Code
             a~bsart            " PO Type
             a~lifnr            " Vendor No
             a~ekgrp            " Purchase Group
             a~waers            " Currency
             a~bedat            " PO Date
             b~txz01            " Material Text
             b~werks            " Plant
             b~lgort            " Storage Location
             b~matkl            " Material Group
             b~menge            " PR Quantity
             b~meins            " UOM
             b~bprme            " Price Unit
             b~netpr            " Net price
             b~peinh            " Price Unit UOM
             b~pstyp            " Item Category
             b~knttp            " Account Assignment Category
        INTO TABLE i_po
        FROM ekko AS a JOIN ekpo AS b
        ON a~ebeln = b~ebeln
        WHERE a~ebeln IN s_ebeln AND
              a~lifnr IN s_lifnr AND
              a~ekgrp IN s_ekgrp AND
              a~bsart IN s_bsart AND
              a~bedat IN s_bedat.
      SORT i_po BY ebeln ebelp.
      break-point.
      IF NOT i_po[] IS INITIAL.
    Fetch the PO History/Invoice Details from EKBE Table
        CLEAR i_ekbe.
        REFRESH i_ekbe.
        SELECT ebeln           " PO No.
               ebelp           " PO Item
               gjahr           " Fiscal Year
               belnr           " PO Invoice No
               menge           " PR Quantity
               wrbtr           " Price in Local Currency
               dmbtr           " Price in Foreign Currency
               waers           " Currency
               shkzg           " Dr/Cr Indicator
         INTO TABLE i_ekbe
         FROM ekbe
         FOR ALL ENTRIES IN i_po
         WHERE ebeln = i_po-ebeln AND
               ebelp = i_po-ebelp AND
               vgabe = c_vgabe.
      break-point.
        IF sy-subrc = 0.
          SORT i_ekbe BY ebeln ebelp.
          LOOP AT i_ekbe.
            IF i_ekbe-shkzg = c_h.
              i_ekbe-wrbtr = i_ekbe-wrbtr * -1.
            ENDIF.
            MODIFY i_ekbe.
          ENDLOOP.
      break-point.
    Sum up the Item wise Invoice totals
          LOOP AT i_ekbe.
            AT END OF ebelp.
              READ TABLE i_ekbe INDEX sy-tabix.
              SUM.
              MOVE-CORRESPONDING i_ekbe TO i_inv.
              APPEND i_inv.
            ENDAT.
            CLEAR i_inv.
          ENDLOOP.
          SORT i_inv BY ebeln ebelp.
            break-point.
        ENDIF.
      ENDIF.
    Move the Vendor Name and Invoice Values to I_rep Internal Table
      LOOP AT i_po.
        MOVE-CORRESPONDING i_po TO i_rep.
        CLEAR i_inv.
        READ TABLE i_inv WITH KEY ebeln = i_po-ebeln
                                  ebelp = i_po-ebelp.
        IF sy-subrc = 0.
          i_rep-orewr = ( i_po-menge - i_inv-menge ) * i_po-netpr.
          i_rep-curr  = i_inv-waers.
        ELSE.
          i_rep-orewr = i_po-menge * i_po-netpr.
          i_rep-curr  = i_po-waers.
        ENDIF.
      break-point.
    Get the Vendor Name
        CLEAR lfa1-name1.
        SELECT SINGLE name1 FROM lfa1 INTO lfa1-name1
          WHERE lifnr = i_po-lifnr.
        IF sy-subrc = 0.
          i_rep-name1  = lfa1-name1.
        ENDIF.
        APPEND i_rep.
        CLEAR  i_rep.
          break-point.
      ENDLOOP.
      SORT i_rep BY lifnr ebeln ebelp.
      DELETE i_rep WHERE orewr LE 0.
      break-point.
    ENDFORM.                    " fetch_data
    *&      Form  display_data
    Display the Report Output data
    FORM display_data .
      DATA: lv_flag,               " New Flag
            lv_rec TYPE i.         " No of Records
      CLEAR lv_rec.
      IF i_rep[] IS INITIAL.
        MESSAGE e000 WITH 'No Data found'(022).
      ELSE.
        LOOP AT i_rep.
    Toggle Color
          PERFORM toggle_color.
          IF lv_flag <> space.
            NEW-LINE.
          ENDIF.
    At New Purchase Document
          AT NEW ebeln.
            WRITE:/1 sy-vline, 2(10) i_rep-ebeln INTENSIFIED OFF.
            lv_flag = c_x.
            lv_rec = lv_rec + 1.
          ENDAT.
          WRITE: 1 sy-vline,
                12 sy-vline,13(4)   i_rep-bsart,
                17 sy-vline,18(10)  i_rep-lifnr,
                28 sy-vline,29(35)  i_rep-name1,
                64 sy-vline,65(4)   i_rep-ekgrp,
                69 sy-vline,70(10)  i_rep-bedat,
                80 sy-vline,81(5)   i_rep-ebelp,
                86 sy-vline,87(40)  i_rep-txz01,
               127 sy-vline,128(9)  i_rep-matkl,
               137 sy-vline,138(1)  i_rep-pstyp,
               139 sy-vline,140(1)  i_rep-knttp,
               141 sy-vline,142(4)  i_rep-werks,
               146 sy-vline,147(4)  i_rep-lgort,
               151 sy-vline,152(13) i_rep-menge UNIT i_rep-meins,
               165 sy-vline,166(3)  i_rep-meins,
               169 sy-vline,170(15) i_rep-netpr CURRENCY i_rep-waers,
               185 sy-vline,186(4)  i_rep-waers,
               190 sy-vline,191(5)  i_rep-peinh,
               196 sy-vline,197(4)  i_rep-bprme,
               201 sy-vline,202(15) i_rep-orewr CURRENCY i_rep-curr,
               217 sy-vline,218(4)  i_rep-curr,
               222 sy-vline,223(7)  i_rep-bstyp centered,
               230 sy-vline.
          NEW-LINE.
          hide: i_rep-ebeln.
        ENDLOOP.
        ULINE.
        FORMAT COLOR OFF.
        WRITE : /2 'Total Number of Purchasing Documents:'(025) COLOR 3,
                    lv_rec COLOR 3.
      ENDIF.
    ENDFORM.                    " display_data
    *&      Form  header
    Write the Report Header
    FORM header .
      FORMAT RESET.
    header
      WRITE:/1(230) 'LIST OF PURCHASE DOCUMENTS PER VENDOR'(006) CENTERED.
      SKIP.
      FORMAT COLOR COL_HEADING.
      ULINE.
      WRITE:/1 sy-vline,2(10)   'Pur.Doc.No'(006) CENTERED,
            12 sy-vline,13(4)   'Type'(007),
            17 sy-vline,18(10)  'Vendor'(008) CENTERED,
            28 sy-vline,29(35)  'Name'(009) CENTERED,
            64 sy-vline,65(4)   'PGrp'(010) CENTERED,
            69 sy-vline,70(10)  'Doc.Date'(012) CENTERED,
            80 sy-vline,81(5)   'Item'(011),
            86 sy-vline,87(40)  'Material Short Text'(024) CENTERED,
           127 sy-vline,128(9)  'Mat.Group'(013),
           137 sy-vline,138(1)  'I',
           139 sy-vline,140(1)  'A',
           141 sy-vline,142(4)  'Plnt'(014),
           146 sy-vline,147(4)  'SLoc'(015),
           151 sy-vline,152(13) 'Quantity'(016) CENTERED,
           165 sy-vline,166(3)  'UoM'(017),
           169 sy-vline,170(15) 'Net Value'(018) CENTERED,
           185 sy-vline,186(4)  'Curr'(019),
           190 sy-vline,191(5)  'Per'(020),
           196 sy-vline,197(4)  'Unit'(021),
           201 sy-vline,202(15) 'To be Invoiced'(023) CENTERED,
           217 sy-vline,218(4)  'Curr'(019),
           222 sy-vline,223(7)  'Doc.Cat'(026),
           230 sy-vline.
      ULINE.
    ENDFORM.                    " header
    *&      Form  toggle_color
    This routine alters the color of the records in the list
    FORM toggle_color.
      IF gv_dial = space.
        FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
        gv_dial = c_x.
      ELSE.
        FORMAT COLOR 1 INTENSIFIED OFF.
        CLEAR gv_dial.
      ENDIF.
    ENDFORM.                    " toggle_color
    *&      Form  LINE_SEL
    *When double clicked on EBELN field display the details of Purchase Doc
    FORM line_sel.
      CASE sy-lsind.
        WHEN '1'.
          DATA: lv_field(20),
                lv_value(10),
                lv_bstyp like i_rep-bstyp.
          clear: lv_bstyp,lv_value, lv_field.
          GET CURSOR FIELD lv_field VALUE lv_value.
          IF lv_field = 'I_REP-EBELN'.
            IF NOT lv_value IS INITIAL.
              READ LINE sy-index FIELD VALUE i_rep-bstyp
                                       INTO  lv_bstyp.
             READ CURRENT LINE FIELD VALUE i_rep-bstyp INTO lv_bstyp.
              if lv_bstyp = 'F'.
                SET PARAMETER ID 'BES' FIELD lv_value.
                CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
              elseif ( lv_bstyp = 'K' or lv_bstyp = 'L' ).
                SET PARAMETER ID 'VRT' FIELD lv_value.
                CALL TRANSACTION 'ME33' AND SKIP FIRST SCREEN.
              elseif lv_bstyp = 'A'.
                SET PARAMETER ID 'ANF' FIELD lv_value.
                CALL TRANSACTION 'ME43' AND SKIP FIRST SCREEN.
              endif.
            ENDIF.
          ENDIF.
      ENDCASE.
    ENDFORM.                    " line_sel
    Reward points if useful
    Regards
    Anji

  • Report to Purchase Orders with Good Receipt and pending for Invioce Receipt

    Hello,
    I'm looking a report bring me Purchase Orders with Goods Receipt and waiting for Invioce Verificacion (MIRO).
    I appreciate any help.
    Regards,
    Hector

    Hi,
    ME2N - In selection screen, enter Selection parameters as
    WE102 i.e. Goods receipt exists and in output screen put a filter on "Still to be invoiced (qty)" and "Still to be invoiced (val.)" as not equal to zero OR greater than Zero.
    OR use RECHNUNG i.e. Open invoices and execute the report
    OR Use MB5S - GR/IR Balances

Maybe you are looking for

  • AC_FL_RunContent issue

    My website http://www.libertychesapeakes.com/Libertychesapeakevideos.html runs my flash video in the preview but once i uploaded to my hosting account it said AC_FL_RunContent is not defined ?

  • How to measure a current signal with NI 6211?

    How to measure a current signal with NI 6211?

  • Restricting a characteristic & query time out problem

    Hi. We have the follwoing problem: Before our BI upgrade, we have had a number of users querying different info areas, that are now having difficulty restricting on a characteristic in a query.  This was performed with no problems before the upgrade.

  • "This program is blocked by group policy. Contact admin"

    This message comes us up when I try to manage accounts in the control panel. What do I do?

  • Google visualization charts

    I tried to add minor changes to the google visualization plugins but they were not taken into effect when the charts were rendered. Take, titlePosition and legend.position, for example. <pre> l_legend_position varchar2(30) := 'top'; apex_javascript.a