Regarding Purchase order history except  ME2N

hi All,
i want Purchase order history includes PO number, created date , Material doc no, Goods ordered, delivered, Invoice number etc in single report not in Drill down facilty like ME2n.
   is there any standard Transaction(report) which fulfills my requirement...?
points guaranteed...
Message was edited by: Ashok Parupalli

Hi Max,
    RM06EHBE is not exatly fits to my requirement.
is there any report(transaction) which gives complete Purchase order history along with Invoice details also.

Similar Messages

  • ME80FN evaluation regarding Purchase Order History (Execute in BackGround)

    Hi,
    I need your help regarding the follwowing Situation: I want to make an avaluation regarding the Purchase Order History for a few thousend of purchase orders in ME80FN. Becasue of the big amount of purchase orders I have to execute the program in Background. After executing the program in background in the created spool I get the Information regarding the Header of the purchase orders NOT REGARDING THE PURCHASE OREDR HISTORY.
    Is there any way to start a background programm with some kind of a parameter so it can deliver the Purchase Order History information i need. Another way to solve the problem would be to set up a default value for the ME80FN transaction so the default delivered Information would be regarded to the Purchase Order History not to the Header Information?
    Regards & Thanks for your help
    Bogdan

    I know this does not anser yoru question but, The last time I ran it I could comfortably do it for a long time .. Foreground.. WOuld you have issues running it in teh foreground.. May be BASIS could help tuning the run time

  • Purchase Order History Program - not working properly

    Dear friends
    i am developing purchase order history program in ALV,
    which shows the report of purchase order status
    i.e (fields as below).
    document no
    PO date
    line item
    material number
    material name
    purchase org
    plant
    purchase group
    orderd quantity
    ordered amount
    delivered quantity
    delivered amount
    to be delivered quantity
    to be delivered amount
    invoice quantity
    invoice amount
    to be invoiced quantity
    to be invoiced amount
    how to test from me23n
    open me23n
    enter PO number
    press status tab
    you can get some fields for verification..
    the problem is
    i can get all the details correctly except delivered amount and to be delivered amount
    it works fine in both ( material purchase order and service purchase order )
    sometimes i am getting incorrect values in service purchase order specifically in delivered amount and to be delivered amount
    why i am getting these incorrect values ??
    only couple of POs generate these things.
    i am getting these values from EKBE table and using proper filtration like movement type and etc...
    if anyone can resolve ... would be appreciable
    avirat.

    Hi,
    for getting proper Po History you need to select PO's details from EKKO table and
    Header details from CHANGEDOCUMENT_READ_HEADERS based on the details got from this FM pass
    to the FM CHANGEDOCUMENT_READ_POSITIONS and get proper details.
    This is the logic used by the standard program also to get the PO History.
    Hope this helps.
    Regards
    Bikas

  • Report to display "Purchase Order History"

    Hi all,
    Can any one solve my problem, i need to create a report on Purchase Order History. So can any one tell, from which infoprovider i can generate this report or is there any standard report for this in SAP BW.
    Thanks in Advance,
    Regards,
    Ramakrishna Kamurthy
    +91-9963101073

    Try with 0PUR_C01 and 0PUR_C03
    Jayasudha

  • Purchase Order History as a Report?

    Hi,
    I would like to follow the amounts of purchase orders, relevant goods receipt amounts and so on as shown in purchase order history on PO. But I need it as a report which could be seen as ALV type, and easily exported to excel.
    Is there such a standart report that I could follow purchase order-goods receipt quantities?
    Thanks in advance
    Irem

    hi,
    use MC$G - Puchasing values
    And MC$I - Puchasing quantities
    Or use ME87 - Aggregate PO history
    Regards
    Priyanka.P
    Edited by: Priyanka Paltanwale on May 13, 2009 12:57 PM

  • Payment document in purchase order history

    hi friends,
                    Customer requirement is to add the payment document(F-53) in the purchase order history in me23n along with GR no. and Invoice no... Is it possible?
                                             thank you
    Edited by: SUJITH BABU KURIAN on Feb 5, 2010 3:39 PM

    Hi,
    No its not possible to update std. Purchase Order history tab with vendor payment which is done via FI. 
    Std. Purchase Order History will be updated only with MM component docs which has a reference to PO.
    I think you may have to develop some custom reports to track the same.
    Thanks & Regards,

  • Accounting document number display in purchase order history tab

    Is it possible to display the accounting document number in the purchase order history tab?  Currently it is displaying material document number for Good receipts and LIV (logistic invoice verification) document number for Invoice receipts against material document number colmn.  We can get to the accounting document number by drilling into the LIV document number.  We are looking for a way to display the accounting document number in the display screen of purchase order history tab instead of drilling down. 
    Is there an option to display accounting document number of the MIRO posting in ME23N , purchase order history tab?
    Truly appreciate any help in this regard.

    Thanks for the response.

  • Regarding purchase order

    hi,
      is there any standard report for open purchase order ?
    what are the tables and field used for open purchase order report.
    thank u
      ravi

    Hi,
    There is no Std report for this;
    See the report for Open PO's
    *& 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 if useful</b>
    regards,
    Anji
    Message was edited by:
            Anji Reddy Vangala

  • Purchase Order history is not updated with Invoice number

    Hello Experts ,
    Please suggest some inputs/solution for my problem.
    Scenarios is :
    PO --> SO --> Invoice
    I am creating the invoice with the medium EDI , when I click on Save button IDOC is generated with the message " IDoc 'xxxxxxxxxxxxx' was created and forwarded for transmission " and it showing the status as 03 i.e, The IDoc was sent to an R/3 System or an external program via a transactional RFC ...but the problem is if I got to the Purchase Order history Its not updated with the Invoice number.
    What could be the problem , please suggest.

    Hi!
    I'm not sure, in which process you link PO and SO. There are some different ways, which are totally different scenarios - if you need help here, describe more detailed.
    Your invoice is probably only created with reference to SO, so check the invoice itself. In this case also the SO history should include the invoice.
    Regards,
    Christian

  • Mass display or print Purchase Order History

    Instead of checking your Purchase Order History one at a time, you can now mass display or print them with this customized abap report.
    Mass display or print Purchase Order History
    You can request report by :
    1.  Change date
    2.  User Name
    3.  Purchase Order Number
    4.  Vendor Code
    Written by : SAP Basis, ABAP Programming and Other IMG Stuff
                 http://www.sap-img.com
    REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING
                     LINE-COUNT 065(001)
                     MESSAGE-ID VR.
    TABLES: DD04T,
            CDHDR,
            CDPOS,
            DD03L,
            DD41V,
            T685T,
            VBPA,
            TPART,
            KONVC,
            EKKO.
    SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,
                    XNAME  FOR CDHDR-USERNAME,
                    XEBELN FOR EKKO-EBELN,
                    XLIFNR FOR EKKO-LIFNR.
    SELECTION-SCREEN SKIP.
    TEXT-001 - Sorting Sequence
    SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
    PARAMETERS: SUDATE RADIOBUTTON GROUP R1,
                SNAME  RADIOBUTTON GROUP R1,
                SOBID  RADIOBUTTON GROUP R1.
    SELECTION-SCREEN END OF BLOCK BLK1.
    DATA: WFLAG,
          WCHANGENR LIKE CDHDR-CHANGENR.
    DATA: INDTEXT(60) TYPE C.
    DATA: BEGIN OF ICDHDR OCCURS 50.
            INCLUDE STRUCTURE CDHDR.
    DATA: END OF ICDHDR.
    DATA: BEGIN OF ICDSHW OCCURS 50.
            INCLUDE STRUCTURE CDSHW.
    DATA: END OF ICDSHW.
    DATA: BEGIN OF EKKEY,
            EBELN LIKE EKET-EBELN,
            EBELP LIKE EKET-EBELP,
            ETENR LIKE EKET-ETENR,
          END OF EKKEY.
    DATA: BEGIN OF ITAB OCCURS 50,
            BEGIN OF EKKEY,
              EBELN LIKE EKET-EBELN,
              EBELP LIKE EKET-EBELP,
              ETENR LIKE EKET-ETENR,
            END OF EKKEY,
            CHANGENR LIKE CDHDR-CHANGENR,
            UDATE    LIKE CDHDR-UDATE,
            UTIME    LIKE CDHDR-UTIME,
            USERNAME LIKE CDHDR-USERNAME,
            CHNGIND  LIKE CDSHW-CHNGIND,
            FTEXT    LIKE CDSHW-FTEXT,
            OUTLEN   LIKE CDSHW-OUTLEN,
            F_OLD    LIKE CDSHW-F_OLD,
            F_NEW    LIKE CDSHW-F_NEW,
          END OF ITAB.
    DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.
    FIELD-SYMBOLS: <F_OLD>, <F_NEW>.
    SELECT * FROM EKKO WHERE EBELN IN XEBELN AND
                             LIFNR IN XLIFNR.
      CLEAR CDHDR.
      CLEAR CDPOS.
      CDHDR-OBJECTCLAS = 'EINKBELEG'.
      CDHDR-OBJECTID   = EKKO-EBELN.
      PERFORM GETCHGDOCS.
    ENDSELECT.
    IF SUDATE = 'X'.
      SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP
                   EKKEY-ETENR.
    ELSEIF SNAME = 'X'.
      SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP
                   EKKEY-ETENR.
    ELSE.
      SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.
    ENDIF.
    LOOP AT ITAB.
      CLEAR: INDTEXT, EKKEY.
      CASE ITAB-CHNGIND.
        WHEN 'U'.
            INDTEXT(50) = ITAB-FTEXT.
            INDTEXT+51  = TEXT-020.
            CONDENSE INDTEXT.
        WHEN 'D'.
            INDTEXT = TEXT-021.
        WHEN 'E'.
            INDTEXT(5) = ITAB-FTEXT.
            INDTEXT+51 = TEXT-021.
            CONDENSE INDTEXT.
          WHEN 'I'.
            INDTEXT = TEXT-022.
        ENDCASE.
        RESERVE 4 LINES.
        IF WCHANGENR NE ITAB-CHANGENR.
          WCHANGENR = ITAB-CHANGENR.
          EKKEY = ITAB-EKKEY.
          WRITE:/ ITAB-UDATE UNDER 'Change Date',
                  ITAB-UTIME UNDER 'Time',
                  ITAB-USERNAME UNDER 'User Name',
                  ITAB-EKKEY-EBELN UNDER 'PO No',
                  ITAB-EKKEY-EBELP UNDER 'Item',
                  ITAB-EKKEY-ETENR UNDER 'Sch No',
                  INDTEXT     UNDER 'Changes'.
        ELSEIF ITAB-EKKEY NE EKKEY.
          WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',
                  ITAB-EKKEY-ETENR UNDER 'Sch No',
                  INDTEXT     UNDER 'Changes'.
        ENDIF.
        CASE ITAB-CHNGIND.
          WHEN 'U'.
            ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
            ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO <F_NEW>.
            WRITE: / TEXT-023  UNDER 'Changes',
                     <F_OLD>.
            WRITE: / TEXT-024 UNDER 'Changes',
                     <F_NEW>.
          WHEN 'E'.
            ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
            WRITE: TEXT-023 UNDER 'Changes',
                   <F_OLD>.
        ENDCASE.
        SKIP.
    ENDLOOP.
    TOP-OF-PAGE.
    WRITE:/ SY-DATUM,SY-UZEIT,
           50 'P U R C H A S E  O R D E R   H I S T O R Y',
          120 'Page', SY-PAGNO.
    WRITE: / SY-REPID,
             60 'Purchase Orders Changes'.
    SKIP.
    ULINE.
    IF SUDATE = 'X'.
      WRITE:/001 'Change Date',
             014 'Time',
             024 'User Name',
             038 'PO No',
             050 'Item',
             057 'Sch No',
             065 'Changes'.
    ELSEIF SOBID = 'X'.
      WRITE:/001 'PO No',
             013 'Item',
             020 'Sch No',
             028 'Change Date',
             041 'Time',
             051 'User Name',
             065 'Changes'.
    ELSE.
      WRITE:/001 'User Name',
             015 'Change Date',
             028 'Time',
             038 'PO No',
             050 'Item',
             057 'Sch No',
             065 'Changes'.
    ENDIF.
    ULINE.
    FORM GETCHGDOCS.
      CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
           EXPORTING
                DATE_OF_CHANGE    = CDHDR-UDATE
                OBJECTCLASS       = CDHDR-OBJECTCLAS
                OBJECTID          = CDHDR-OBJECTID
                TIME_OF_CHANGE    = CDHDR-UTIME
                USERNAME          = CDHDR-USERNAME
           TABLES
                I_CDHDR           = ICDHDR
           EXCEPTIONS
                NO_POSITION_FOUND = 1
                OTHERS            = 2.
      CHECK SY-SUBRC EQ 0.
      DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.
      CHECK NOT ICDHDR[] IS INITIAL.
      LOOP AT ICDHDR.
        CHECK ICDHDR-UDATE IN XUDATE.
        CHECK ICDHDR-USERNAME IN XNAME.
        CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
                     EXPORTING  CHANGENUMBER       = ICDHDR-CHANGENR
                     IMPORTING  HEADER             = CDHDR
                     TABLES     EDITPOS            = ICDSHW
                     EXCEPTIONS NO_POSITION_FOUND  = 1
                                OTHERS             = 2.
        CHECK SY-SUBRC EQ 0.
        LOOP AT ICDSHW.
          CHECK ICDSHW-TEXT_CASE EQ SPACE.
          MOVE-CORRESPONDING ICDSHW TO ITAB.
          MOVE-CORRESPONDING ICDHDR TO ITAB.
          MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.
          APPEND ITAB.
        ENDLOOP.
      ENDLOOP.
    ENDFORM.
    END OF PROGRAM

    Hi,
    copied from          http://www.sap-img.com/mm001.htm

  • Goods Receipt value in Purchase Order History

    Hi Experts,
    I raised a PO with Account Assignment category as "K" for 100 quantity with a value of 1000.
    GR non-valuated option is ticked in "Delivery" tab in line items.
    When posted a GR for 25 NUmbers the Purchase Order History is updated with "0,00" in Amount column.
    If this is because of GR Non-valuated option used then please let me know where the amount with correct value is stored in Database tables.
    Note: I have use only GR Non-valuated option.
    I want to know where the correct value of the stock received is stored.
    Regards,
    Nani.

    Hi
    By assigning K you will have 3 things in default unless uou change them manually. 1.  Goods receipt , 2. GR Non-valuated, Invoice receipt.
      When you do a GR then this account gets posted against the G/L you have assigned manually at PO or against the the acct. modifier VBR in OBYC, that is it is consumed directly. So you will not have any stock valuation like raw or other materials.
    Now when you carry out Invoice verification you get the postings regularised against the acct assignment object(K) and the vendor outstanding/GR/IR account.
    Once IV is done you can check the details of your posting.
    Regards

  • In Purchase order history is not showing the Reversal of goods price

    Hello friends,
    I have created a PO , for that i have done the GR and invoice. Now i want to reverse the goods using MType-102, for that i have created the credit memo .
    I have done the reverse GR ,But in Purchase order history the For the GR reversed doc, its showing the price as 0.
    Pl help me out .

    Hi,
    If your forward 101 material document is with price and it is showing in PO history and your reverse 102 material document is not with price in PO history , check the accounting document of 102 and if it is with price , then PO history is not properly updated.also check table EKBE and if po history is not properly updated , check for a relevant note and apply.
    Regards,

  • Purchase order History

    Hi..
         Iam trying to display the Purchase order History using BAPI_PO_GETDETAIL function module... and my code is
    data : i_ekko type table of ekko,
           i_ekko_wa like line of i_ekko.
    parameters : p_vendor like ekko-lifnr,
                 p_po     like ekko-ebeln.
    select * from ekko into corresponding fields of table i_ekko where lifnr = p_vendor and ebeln = p_po.
    loop at i_ekko into i_ekko_wa.
    CALL FUNCTION 'BAPI_PO_GETDETAIL'
      EXPORTING
        PURCHASEORDER                    =  '4500017124'
       ITEMS                            = 'X'
    *   ACCOUNT_ASSIGNMENT               = ' '
    *   SCHEDULES                        = ' '
       HISTORY                          = 'X'
    *   ITEM_TEXTS                       = ' '
    *   HEADER_TEXTS                     = ' '
    *   SERVICES                         = ' '
    *   CONFIRMATIONS                    = ' '
    *   SERVICE_TEXTS                    = ' '
    *   EXTENSIONS                       = ' '
    * IMPORTING
    *   PO_HEADER                        =
    *   PO_ADDRESS                       =
    * TABLES
    *   PO_HEADER_TEXTS                  =
    *   PO_ITEMS                         =
    *   PO_ITEM_ACCOUNT_ASSIGNMENT       =
    *   PO_ITEM_SCHEDULES                =
    *   PO_ITEM_CONFIRMATIONS            =
    *   PO_ITEM_TEXTS                    =
    *   PO_ITEM_HISTORY                  =
    *   PO_ITEM_HISTORY_TOTALS           =
    *   PO_ITEM_LIMITS                   =
    *   PO_ITEM_CONTRACT_LIMITS          =
    *   PO_ITEM_SERVICES                 =
    *   PO_ITEM_SRV_ACCASS_VALUES        =
    *   RETURN                           =
    *   PO_SERVICES_TEXTS                =
    *   EXTENSIONOUT                     =
    endloop.
      Iam not getting the output ... It doesnt show errors..
    Regards,
    Abaper.

    where is the displaying PO code???
    check your code once again...
    look at this example...
    report  zbapi_1.
    data: begin of i_poitem occurs 0.
          include structure bapiekpo.
    data: end of i_poitem.
    parameters p_ebeln like ekko-ebeln default '4500012164'.
    call function 'BAPI_PO_GETDETAIL'
      exporting
        purchaseorder                    = p_ebeln
      ITEMS                            = 'X'
      ACCOUNT_ASSIGNMENT               = ' '
      SCHEDULES                        = ' '
      HISTORY                          = ' '
      ITEM_TEXTS                       = ' '
      HEADER_TEXTS                     = ' '
      SERVICES                         = ' '
      CONFIRMATIONS                    = ' '
      SERVICE_TEXTS                    = ' '
      EXTENSIONS                       = ' '
    IMPORTING
      PO_HEADER                        = PO_HEADER
      PO_ADDRESS                       = PO_ADDRESS
      tables
      PO_HEADER_TEXTS                  = PO_HEADER_TEXTS
        po_items                         = i_poitem.
      PO_ITEM_ACCOUNT_ASSIGNMENT       = PO_ITEM_ACCOUNT_ASSIGNMENT
      PO_ITEM_SCHEDULES                = PO_ITEM_SCHEDULES
      PO_ITEM_CONFIRMATIONS            = PO_ITEM_CONFIRMATIONS
      PO_ITEM_TEXTS                    = PO_ITEM_TEXTS
      PO_ITEM_HISTORY                  = PO_ITEM_HISTORY
      PO_ITEM_HISTORY_TOTALS           = PO_ITEM_HISTORY_TOTALS
      PO_ITEM_LIMITS                   =
      PO_ITEM_CONTRACT_LIMITS          =
      PO_ITEM_SERVICES                 =
      PO_ITEM_SRV_ACCASS_VALUES        =
      RETURN                           =
      PO_SERVICES_TEXTS                = .
      EXTENSIONOUT                     = EXTENSIONOUT
    loop at i_poitem.
    write :/ 'PONUMBER    = ' ,  i_poitem-po_number color col_heading,
           / 'ITEM = ' , i_poitem-po_item,
           / 'MATERIAL NAME = ' , i_poitem-material,
           / 'MATERIAL = ' , i_poitem-pur_mat,
           / 'CHANGED ON = ', i_poitem-changed_on,
           / 'SHORT TEXT = ' , i_poitem-short_text,
           / 'COMPANY CODE = ' , i_poitem-co_code,
           / 'PLANT = ' , i_poitem-plant,
           / 'MATERIAL GROUP = ' , i_poitem-mat_grp,
           / 'QUANTITY = ' , i_poitem-quantity left-justified,
           / 'UNIT = ' , i_poitem-unit,
           / 'NET PRICE = ' , i_poitem-net_price left-justified.
    uline.
    endloop.
    Edited by: Venkat Appikonda on Mar 7, 2009 11:57 AM

  • Payment detail in purchase order history in PO

    Dear All,
    My Client wants that he should able to see the payment details in  purchase order history in PO. as we can see the GR, IR and down paymeny there.
    i have tried by putting PO number in bank line item at the time of payment but it is not working.
    can any one help in that issue.
    Shayam

    Hi,
    You can't see the Payment details in the purchase order History. reason is SAP as defined MM and FICO tables and structures are differently.
    Payments can't not be made by PO with line item wise so we can't track the Payment details  in the PO History.
    Hopw now clear.
    Regards,
    Kishore

  • Purchase Order History Reference not filled

    Hello everyone,
    we are using BAPI_INCOMINGINVOICE_CREATE to create an invoice for an purchase order. It works just fine except that there no Reference filled in the Purchase Order History. We fill the number of the reference to the BAPI (headerdata-ref_doc_no) and the reference is visible on the created FI document as expected.
    However the customer insists, that it has to be visible in the field Reference of the Purchase Order History as well. I know, it is the XBLNR field of the table BSEG. I dug deep in the source codes to find out, where is the problem, but setting of this field seems to be very complicated. Someone told me, that the field is only filled when the GR-Based Invoice Verification is checked (which in our case is not).
    Can someone tell me the rules, when the field Reference gets filled? Or (if there is anything) how to customize the system, co make this field filled?

    Hi Oleg,
    thank you for your reaction.
    I am aware of that there is a field XBLNR in the BKPF table - and there we have the reference filled correctly (it is visible on the FI document as I mentoined). However in the BSEG table is the XBLNR as well and it is related to displaying Reference in the Purchase Order History (the bseg relates to an PO item) at least in our case. When I manually input in the BSEG-XBLNR a value (via SE16N for example), it displays afterwards in the required field when viewing the Purchase order.
    In the case GR-Based Invoice Verification procedure and the table MKPF - i believe, you are right there (so the Reference is filled), however this is unfortunatelly not our case.
    What I am trying to find out are the conditions, under which the XBLNR in BSEG is filled (I can tell you, what source codes I have been inspecting, but I got lost after I while, because there are literally thousands of lines of code:-(

Maybe you are looking for