Open Purchase Orders list from MD04 T.Code

Hi Every body,
we have a strange issue. I am working on report. In our report, we need to capture purchase orders from MD04 transaction,      by cumulating all the purchase order from the MD04 needs to display in the report.
Is their way to get these list.
Our input parameter in report:
1. Material number
2. Plant.
for this can any body provide information how to got ahead.
Regards,
Venkat.

Hello,
you can help yourself in finding solution, for that please go thru this link.
https://wiki.sdn.sap.com/wiki/display/ERPLO/SAP%20Standard%20Reports
regards,
Prashant Rathore.

Similar Messages

  • Downloading the open purchase order list

    HI Friends,
    Please let me know how to download the open purchase order list from SAP aong vth buyer codes.
    Regards,
    A.S.kumar

    Hii
    Go to ME2N, give the details what ever u want in that screen and in Scope of list - select ALV.
    If u select ALV , it will show in the format of excel sheet , so u download as lik that .
    In selection parameters - u mention WE101/WE102 ...etc , according ur requirement.
    Any clarification , let us know
    Thanks
    SAP-MM
    Edited by: MM group on Feb 19, 2010 6:04 AM

  • Open purchase order list

    Hi experts,
    how i can generate open purchase order list with the amount ?
    regards,
    Sanju M S

    HI
    try report
    ME80FN
    here after executing click on changes view and select PO history
    Regards
    Kailas Ugale

  • Open Purchase Order Separation from item Order Qty

    Hi All,
    Kindly  suggest me how to separate open Purchase order from Item Order Qty.if i have 2 WH with different Order qty.in report it will be shown total order qty of both WH's.like
    Item            WH              Order Qty
    A                 01               100
    A                 02                 50
                      or
    A                 01                  0
    i need like this A--150   OR A--50(order qty).
    plz look into my query and suggest me how to do this.
    select distinct t3.CardName as SuplierName,t2.[ItemCode], t2.itemname,t2.[U_pperson]as PP,((SELECT sum(T4.[OnHand])FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH')) as Stock,t2.MinLevel as 'Min Bin',(((SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MinLevel) as balance,
    sum(t1.openqty)
    as OrderQty,
    t2.MaxLevel as 'Max Bin',(((SELECT  sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum( T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MaxLevel)as 'Balance II' from OPOR t0 inner join POR1 t1 on t0.DocEntry=t1.DocEntry inner join OITM t2 on t2.ItemCode=t1.ItemCode inner join ocrd t3 on t3.CardCode=t2.CardCode inner join OITW t4 on t4.ItemCode=t1.ItemCode and t4.WhsCode=t1.WhsCode   where t2.validFor='y' and  t2.[U_pperson]='p1' or t2.[U_pperson]='p2'  or t2.[U_pperson]='p3' group by t3.CardName,T4.[OnHand],t2.[ItemCode], t2.itemname,t2.[U_pperson],t2.MinLevel,t2.MaxLevel,t1.OpenQty
    Thanks&Regards,
    P.Pratap

    Hi,
    Try this:
    select distinct t3.CardName as SuplierName,t2.[ItemCode], t2.itemname,t2.[U_pperson]as PP,((SELECT sum(T4.[OnHand])FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH')) as Stock,t2.MinLevel as 'Min Bin',(((SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MinLevel) as balance,
    sum(t1.openqty)
    as OrderQty,
    t2.MaxLevel as 'Max Bin',(((SELECT  sum(T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = '01')
    +(SELECT sum( T4.[OnHand]) FROM OITW T4 WHERE T2.[ItemCode] = T4.[ItemCode] AND  T4.[WhsCode] = 'EWH'))-t2.MaxLevel)as 'Balance II'
    from
    OPOR t0 inner join POR1 t1 on t0.DocEntry=t1.DocEntry inner join OITM t2 on t2.ItemCode=t1.ItemCode inner join ocrd t3 on t3.CardCode=t2.CardCode inner join OITW t4 on t4.ItemCode=t1.ItemCode and t4.WhsCode=t1.WhsCode   where t2.validFor='y' and  t2.[U_pperson]='p1' or t2.[U_pperson]='p2'  or t2.[U_pperson]='p3'
    group by t3.CardName,t2.[ItemCode], t2.itemname,t2.[U_pperson],t2.MinLevel,t2.MaxLevel
    Thanks & Regards,
    Nagarajan

  • Open purchase order list by user id

    Hi Experts,
    My job requirement is to pull a list of all open SRM purchase orders in backend ECC system by user id.
    In ME2N, I entered following information:
    -Scope of list=BEST
    -Selection parameters=WE101
    -Document type=ECPO (for SRM purchase orders).
    -In Dynamic Selection icon on top of the screen, under ‘Purchasing Document Header’ drop down list, I selected ‘Created by’ option. Then in a dynamic selection pop-up screen I entered the user id. Then I executed.
    However, upon executing, it still doesn’t give me the list of open PO’s by this user id.
    Whereas, another team member who sits offshore is able to find 2 open PO’s for same user.
    Please tell me what I’m doing wrong here. I need to fix this urgently.
    Many Thanks and kind regards,
    Faisal

    Hello Failsal
    It's difficult to know without a screenshot, please compare step by step ME2N execution with your team mate, it must return the exact same result.
    Other things should guarantee is that you can get those PO's in ME2N (i.e just put the PO's numbers as parameters). I don't know if there is a role restriction for this transaction.
    Try it with"created by" in blank
    Verify you dont have any other parameter selected.
    I hope you find solution
    Regards
    Pável

  • Purchase order list from EOTP

    Hi all,
    In the module PS, project management, I know the list of eOTP ( table - PRPS , field PSPNR ) managed by cj20n transaction, how is possible to have a list of purchase order for each EOTP ??? There's a BAPI to have this list ??
    Tks a lot !!!!

    I am not sure if this will help you or not, but look at TCode ME2K.

  • Re: open purchase order list with price unit

    Hi Guru,
    Please inform if SAP have transaction which can show the list of our open
    order complete with price unit of material.
    Thanks
    Regards
    siva

    i think to get price per unit with the open PO you have to develop an customized report so contact your ABAP team with your requirement and develop a customized report.
    regards,
    qsm sap

  • Urgent -open purchase orders existed in asset how to remove from the asset

    Hi,
    Some assets I am going to delete if the open purchase orders existed how to remove the open purchase orders from the asset  what is the t/code to view the open purchase ordes.
    Can any body give the details please.
    Regards,
    Prabhakar.

    Use ME2N and give the required paramets in field Selection Parameters.  Some of the available choices are
    Open invoices
    Open target value
    Open issue quantity
    Issue quantity reversible
    Open goods receipt
    PO AA link is established through Account Assignment Category A mentioned in PO.  Select the PO with above and change the PO through ME22N

  • To List Open Purchase Orders

    Hi all,
    My requirement is to list all the open purchase orders by purchase organization, and the selection criteria is it should follow the condition as given below.
    If
    Delivery Complete indicator(ekpo-elikz)  = 'X'.
    Deletion Indicator(ekpo-loekz) = 'L'.
    GR Flag(ekpo-wepos) = 'X'.
    then Purchase order is considered as closed.
    Delivery Complete indicator(ekpo-elikz)  = 'X'.
    Deletion Indicator(ekpo-loekz) = ' '.
    GR Flag(ekpo-wepos) = 'X'.
    then Purchase order is considered as closed.
    Delivery Complete indicator(ekpo-elikz)  = ' '.
    Deletion Indicator(ekpo-loekz) = 'L'.
    GR Flag(ekpo-wepos) = 'X'.
    then Purchase order is considered as closed.
    Delivery Complete indicator(ekpo-elikz)  = ' '.
    Deletion Indicator(ekpo-loekz) = ' '.
    GR Flag(ekpo-wepos) = 'X'.
    then the Purchase order is considered as OPEN.
    So we should get the PO's by purchasing organization which satisfies the final condition.
    How can it be done, can anyone help me out?

    Hi Prashanth,
    This looks simple and all that you have to do is to just put in the last condition to select the open purchase orders.
    The other 3 conditions will automatically negated by the last one.
    Let me know if your question is limited to this or you are looking for some other information?

  • List of open purchase order for a sales division

    Hi experts ,
    I want to generate report for open purchase orders.This report is reqired for a perticular sales division.
    I tried to use ME2L , for this we need to give list of vendors for that division. However i guess that in purchasing we dont maintain vendors at sales division level. Can you help me in this regard
    Thanx in advance.
    Regards,
    Anand

    Hi Anand,
    One way to get the desired output is
    First you get a list of all Sales Orders for a particular division.
    then use transaction ME2K and input all Sales Order that belong to particular division and excute.
    you will get all POs for that division. But the layout of the report is not very friendly still it serves the purpose.
    Regards
    Seema

  • Create list of materials with its purchase order texts from material master

    Dear all
    Simple question I do wanna ask.
    Just need to get out a list with my materials with its purchase order texts from the material master.
    As I do know that PO text is not stored on a table, it might be difficult to get it out from the system.
    Does anyone of you know how to retrieve it simply?
    Regards
    François

    Check this link Material Master Purchase Order Text.

  • List of opened purchase order.

    Hi,
    what is the trx for a list of opened purchase order?
    Best regards

    Hi
    Looks like you are looking for PO's where there are open (pending) quanities exist.
    There are standard reports like ME2M, ME2L. In selection parameter, you select WE101. This will give all open PO's
    Other method is through accessing table level data i.e,. through SE16 which I think is not needed for your simple requirement.
    Cheers
    Jags

  • Urgent :Doubt on open Purchase orders

    Hi friends,
    i will be more help full if anybody can help me on below issue how to find open PO and partially open PO.
    Only “open” purchase orders will be extracted for conversion into Destination Server. An “open” purchase order is defined as any unshipped, non-cancelled with “open quantities”. In regards to, partially “open” purchase orders, we will only convert “open” units (i.e. Original ordered qty was 300; 70 have shipped, 230 remain open…Target Server sales order will have an original order qty of 230).
    also where to find that Sub Contracting orders and Sample orders.
    • Orders not considered for migration because they will have either shipped in full or deleted prior to data migration as a part of data clean-up: ALL subcontracting orders; sample orders
    please help me on the above two issues.
    thanks and Regards,
    Gokul.

    Hi
    First take the ALL Po's from EKKO and EKPO tables and check for the different GR's and GI's qty's from MKPF and MSEG tables and you have to compare the PO qty with the total GR/GI qty's and to find the OPEN po's
    see the sample report
    *& 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
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • BADI or function module for updating open purchase orders

    Hi all,
    Does anyone know of a BADI or function module which can be used for updating item prices in open purchase orders?
    All helpful answers are highly appreciated!
    Regards,
    MV

    1 ) execute this program  in se38 .enter the input as transaction code  for which you want list of User
    Exit.
    REPORT z_find_userexit NO STANDARD PAGE HEADING.
    *&  Enter the transaction code that you want to search through in order
    *&  to find which Standard SAP® User Exits exists.
    *& Tables
    TABLES : tstc,     "SAP® Transaction Codes
             tadir,    "Directory of Repository Objects
             modsapt,  "SAP® Enhancements - Short Texts
             modact,   "Modifications
             trdir,    "System table TRDIR
             tfdir,    "Function Module
             enlfdir,  "Additional Attributes for Function Modules
             tstct.    "Transaction Code Texts
    *& Variables
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    *& Selection Screen Parameters
    SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN END OF BLOCK a01.
    *& Start of main program
    START-OF-SELECTION.
    Validate Transaction Code
      SELECT SINGLE * FROM tstc
        WHERE tcode EQ p_tcode.
    Find Repository Objects for transaction code
      IF sy-subrc EQ 0.
        SELECT SINGLE * FROM tadir
           WHERE pgmid    = 'R3TR'
             AND object   = 'PROG'
             AND obj_name = tstc-pgmna.
        MOVE : tadir-devclass TO v_devclass.
        IF sy-subrc NE 0.
          SELECT SINGLE * FROM trdir
             WHERE name = tstc-pgmna.
          IF trdir-subc EQ 'F'.
            SELECT SINGLE * FROM tfdir
              WHERE pname = tstc-pgmna.
            SELECT SINGLE * FROM enlfdir
              WHERE funcname = tfdir-funcname.
            SELECT SINGLE * FROM tadir
              WHERE pgmid    = 'R3TR'
                AND object   = 'FUGR'
                AND obj_name = enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
    Find SAP® Modifications
        SELECT * FROM tadir
          INTO TABLE jtab
          WHERE pgmid    = 'R3TR'
            AND object   = 'SMOD'
            AND devclass = v_devclass.
        SELECT SINGLE * FROM tstct
          WHERE sprsl EQ sy-langu
            AND tcode EQ p_tcode.
        FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
        WRITE:/(19) 'Transaction Code - ',
        20(20) p_tcode,
        45(50) tstct-ttext.
        SKIP.
        IF NOT jtab[] IS INITIAL.
          WRITE:/(95) sy-uline.
          FORMAT COLOR COL_HEADING INTENSIFIED ON.
          WRITE:/1 sy-vline,
          2 'Exit Name',
          21 sy-vline ,
          22 'Description',
          95 sy-vline.
          WRITE:/(95) sy-uline.
          LOOP AT jtab.
            SELECT SINGLE * FROM modsapt
            WHERE sprsl = sy-langu AND
            name = jtab-obj_name.
            FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
            WRITE:/1 sy-vline,
            2 jtab-obj_name HOTSPOT ON,
            21 sy-vline ,
            22 modsapt-modtext,
            95 sy-vline.
          ENDLOOP.
          WRITE:/(95) sy-uline.
          DESCRIBE TABLE jtab.
          SKIP.
          FORMAT COLOR COL_TOTAL INTENSIFIED ON.
          WRITE:/ 'No of Exits:' , sy-tfill.
        ELSE.
          FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
          WRITE:/(95) 'No User Exit exists'.
        ENDIF.
      ELSE.
        FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
        WRITE:/(95) 'Transaction Code Does Not Exist'.
      ENDIF.
    Take the user to SMOD for the Exit that was selected.
    AT LINE-SELECTION.
      GET CURSOR FIELD field1.
      CHECK field1(4) EQ 'JTAB'.
      SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
      CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
    2) Second way is to go to transaction code SE93 .enter transaction code click on display.
    There you will see the package. Copy that package name.
    Go to transaction code se84
    Enhancements -customer exits-enhancementsu2014enter package there and execute.
    You will get list of exits.
    3) BAPI for PO change is
    BAPI_PO_CHANGE

  • Open Purchase Order report

    Hello All,
    Anyone know how I can get the list of Open Purchase orders?
    Currently we are pulling all those POs with the following characteristics:
    PO item where
            all schedules have received qty zero.
    Open Schedules (EKET) - Don’t want fully or partially received
         Received Quantity (wemng) = zero
    The performance is not the greatest.
    Just curious to know how others are arriving at the list of Open Purchase Orders.
    Ideas / Thoughts???
    Thanks for any input.

    Why not checking for Final Invoice indicator EKPO-EREKZ = 'X'
    or/and Delivery Completed Indicator EKPO-ELIKZ = 'X'.
    select *
    from ekpo
    into table it_ekpo
    where delkz ne space and (erekz = 'X'
       or elikz = 'X').
    Regards,
    ravi

Maybe you are looking for