<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: CDHDR &amp; CDPOS???????? in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170359#M754431</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey check this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These are change Document related tables&lt;/P&gt;&lt;P&gt;If you change the data in any SAP Transaction those changes with respect to that Transaction code, table, Filed, User, Time based changes are recorded in these tables.&lt;/P&gt;&lt;P&gt;CDPOS is a cluster table which stores lot of data. You can't join this with any table.&lt;/P&gt;&lt;P&gt;So first have to fetch the data from CDHDR and then for all entries of that table fetch the data from CDPOS table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Purchase Order History Mass Display  &lt;/P&gt;&lt;P&gt;Instead of checking your Purchase Order History one at a time, you can now mass display or print them with this customized abap report. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Mass display or print Purchase Order History&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; You can request report by :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 1.  Change date&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 2.  User Name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 3.  Purchase Order Number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 4.  Vendor Code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Written by : SAP Basis, ABAP Programming and Other IMG Stuff&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             &lt;A href="http://www.sap-img.com" target="test_blank"&gt;http://www.sap-img.com&lt;/A&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                 LINE-COUNT 065(001)&lt;/P&gt;&lt;P&gt;                 MESSAGE-ID VR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: DD04T,&lt;/P&gt;&lt;P&gt;        CDHDR,&lt;/P&gt;&lt;P&gt;        CDPOS,&lt;/P&gt;&lt;P&gt;        DD03L,&lt;/P&gt;&lt;P&gt;        DD41V,&lt;/P&gt;&lt;P&gt;        T685T,&lt;/P&gt;&lt;P&gt;        VBPA,&lt;/P&gt;&lt;P&gt;        TPART,&lt;/P&gt;&lt;P&gt;        KONVC,&lt;/P&gt;&lt;P&gt;        EKKO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,&lt;/P&gt;&lt;P&gt;                XNAME  FOR CDHDR-USERNAME,&lt;/P&gt;&lt;P&gt;                XEBELN FOR EKKO-EBELN,&lt;/P&gt;&lt;P&gt;                XLIFNR FOR EKKO-LIFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TEXT-001 - Sorting Sequence&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: SUDATE RADIOBUTTON GROUP R1,&lt;/P&gt;&lt;P&gt;            SNAME  RADIOBUTTON GROUP R1,&lt;/P&gt;&lt;P&gt;            SOBID  RADIOBUTTON GROUP R1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK BLK1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: WFLAG,&lt;/P&gt;&lt;P&gt;      WCHANGENR LIKE CDHDR-CHANGENR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: INDTEXT(60) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ICDHDR OCCURS 50.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE CDHDR.&lt;/P&gt;&lt;P&gt;DATA: END OF ICDHDR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ICDSHW OCCURS 50.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE CDSHW.&lt;/P&gt;&lt;P&gt;DATA: END OF ICDSHW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF EKKEY,&lt;/P&gt;&lt;P&gt;        EBELN LIKE EKET-EBELN,&lt;/P&gt;&lt;P&gt;        EBELP LIKE EKET-EBELP,&lt;/P&gt;&lt;P&gt;        ETENR LIKE EKET-ETENR,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF EKKEY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ITAB OCCURS 50,&lt;/P&gt;&lt;P&gt;        BEGIN OF EKKEY,&lt;/P&gt;&lt;P&gt;          EBELN LIKE EKET-EBELN,&lt;/P&gt;&lt;P&gt;          EBELP LIKE EKET-EBELP,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ETENR LIKE EKET-ETENR,&lt;/P&gt;&lt;P&gt;        END OF EKKEY,&lt;/P&gt;&lt;P&gt;        CHANGENR LIKE CDHDR-CHANGENR,&lt;/P&gt;&lt;P&gt;        UDATE    LIKE CDHDR-UDATE,&lt;/P&gt;&lt;P&gt;        UTIME    LIKE CDHDR-UTIME,&lt;/P&gt;&lt;P&gt;        USERNAME LIKE CDHDR-USERNAME,&lt;/P&gt;&lt;P&gt;        CHNGIND  LIKE CDSHW-CHNGIND,&lt;/P&gt;&lt;P&gt;        FTEXT    LIKE CDSHW-FTEXT,&lt;/P&gt;&lt;P&gt;        OUTLEN   LIKE CDSHW-OUTLEN,&lt;/P&gt;&lt;P&gt;        F_OLD    LIKE CDSHW-F_OLD,&lt;/P&gt;&lt;P&gt;        F_NEW    LIKE CDSHW-F_NEW,&lt;/P&gt;&lt;P&gt;      END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;F_OLD&amp;gt;, &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM EKKO WHERE EBELN IN XEBELN AND&lt;/P&gt;&lt;P&gt;                         LIFNR IN XLIFNR.&lt;/P&gt;&lt;P&gt;  CLEAR CDHDR.&lt;/P&gt;&lt;P&gt;  CLEAR CDPOS.&lt;/P&gt;&lt;P&gt;  CDHDR-OBJECTCLAS = 'EINKBELEG'.&lt;/P&gt;&lt;P&gt;  CDHDR-OBJECTID   = EKKO-EBELN.&lt;/P&gt;&lt;P&gt;  PERFORM GETCHGDOCS.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF SUDATE = 'X'.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP&lt;/P&gt;&lt;P&gt;               EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ELSEIF SNAME = 'X'.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP&lt;/P&gt;&lt;P&gt;               EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;  CLEAR: INDTEXT, EKKEY.&lt;/P&gt;&lt;P&gt;  CASE ITAB-CHNGIND.&lt;/P&gt;&lt;P&gt;    WHEN 'U'.&lt;/P&gt;&lt;P&gt;        INDTEXT(50) = ITAB-FTEXT.&lt;/P&gt;&lt;P&gt;        INDTEXT+51  = TEXT-020.&lt;/P&gt;&lt;P&gt;        CONDENSE INDTEXT.&lt;/P&gt;&lt;P&gt;    WHEN 'D'.&lt;/P&gt;&lt;P&gt;        INDTEXT = TEXT-021.&lt;/P&gt;&lt;P&gt;    WHEN 'E'.&lt;/P&gt;&lt;P&gt;        INDTEXT(5) = ITAB-FTEXT.&lt;/P&gt;&lt;P&gt;        INDTEXT+51 = TEXT-021.&lt;/P&gt;&lt;P&gt;        CONDENSE INDTEXT.&lt;/P&gt;&lt;P&gt;      WHEN 'I'.&lt;/P&gt;&lt;P&gt;        INDTEXT = TEXT-022.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    RESERVE 4 LINES.&lt;/P&gt;&lt;P&gt;    IF WCHANGENR NE ITAB-CHANGENR.&lt;/P&gt;&lt;P&gt;      WCHANGENR = ITAB-CHANGENR.&lt;/P&gt;&lt;P&gt;      EKKEY = ITAB-EKKEY.&lt;/P&gt;&lt;P&gt;      WRITE:/ ITAB-UDATE UNDER 'Change Date',&lt;/P&gt;&lt;P&gt;              ITAB-UTIME UNDER 'Time',&lt;/P&gt;&lt;P&gt;              ITAB-USERNAME UNDER 'User Name',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-EBELN UNDER 'PO No',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-EBELP UNDER 'Item',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-ETENR UNDER 'Sch No',&lt;/P&gt;&lt;P&gt;              INDTEXT     UNDER 'Changes'.&lt;/P&gt;&lt;P&gt;    ELSEIF ITAB-EKKEY NE EKKEY.&lt;/P&gt;&lt;P&gt;      WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-ETENR UNDER 'Sch No',&lt;/P&gt;&lt;P&gt;              INDTEXT     UNDER 'Changes'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE ITAB-CHNGIND.&lt;/P&gt;&lt;P&gt;      WHEN 'U'.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: / TEXT-023  UNDER 'Changes',&lt;/P&gt;&lt;P&gt;                 &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: / TEXT-024 UNDER 'Changes',&lt;/P&gt;&lt;P&gt;                 &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: TEXT-023 UNDER 'Changes',&lt;/P&gt;&lt;P&gt;               &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;WRITE:/ SY-DATUM,SY-UZEIT,&lt;/P&gt;&lt;P&gt;       50 'P U R C H A S E  O R D E R   H I S T O R Y',&lt;/P&gt;&lt;P&gt;      120 'Page', SY-PAGNO.&lt;/P&gt;&lt;P&gt;WRITE: / SY-REPID,&lt;/P&gt;&lt;P&gt;         60 'Purchase Orders Changes'.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;IF SUDATE = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'Change Date',&lt;/P&gt;&lt;P&gt;         014 'Time',&lt;/P&gt;&lt;P&gt;         024 'User Name',&lt;/P&gt;&lt;P&gt;         038 'PO No',&lt;/P&gt;&lt;P&gt;         050 'Item',&lt;/P&gt;&lt;P&gt;         057 'Sch No',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ELSEIF SOBID = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'PO No',&lt;/P&gt;&lt;P&gt;         013 'Item',&lt;/P&gt;&lt;P&gt;         020 'Sch No',&lt;/P&gt;&lt;P&gt;         028 'Change Date',&lt;/P&gt;&lt;P&gt;         041 'Time',&lt;/P&gt;&lt;P&gt;         051 'User Name',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'User Name',&lt;/P&gt;&lt;P&gt;         015 'Change Date',&lt;/P&gt;&lt;P&gt;         028 'Time',&lt;/P&gt;&lt;P&gt;         038 'PO No',&lt;/P&gt;&lt;P&gt;         050 'Item',&lt;/P&gt;&lt;P&gt;         057 'Sch No',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GETCHGDOCS.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            DATE_OF_CHANGE    = CDHDR-UDATE&lt;/P&gt;&lt;P&gt;            OBJECTCLASS       = CDHDR-OBJECTCLAS&lt;/P&gt;&lt;P&gt;            OBJECTID          = CDHDR-OBJECTID&lt;/P&gt;&lt;P&gt;            TIME_OF_CHANGE    = CDHDR-UTIME&lt;/P&gt;&lt;P&gt;            USERNAME          = CDHDR-USERNAME&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            I_CDHDR           = ICDHDR&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            NO_POSITION_FOUND = 1&lt;/P&gt;&lt;P&gt;            OTHERS            = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;  DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.&lt;/P&gt;&lt;P&gt;  CHECK NOT ICDHDR[] IS INITIAL.&lt;/P&gt;&lt;P&gt;  LOOP AT ICDHDR.&lt;/P&gt;&lt;P&gt;    CHECK ICDHDR-UDATE IN XUDATE.&lt;/P&gt;&lt;P&gt;    CHECK ICDHDR-USERNAME IN XNAME.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'&lt;/P&gt;&lt;P&gt;                 EXPORTING  CHANGENUMBER       = ICDHDR-CHANGENR&lt;/P&gt;&lt;P&gt;                 IMPORTING  HEADER             = CDHDR&lt;/P&gt;&lt;P&gt;                 TABLES     EDITPOS            = ICDSHW&lt;/P&gt;&lt;P&gt;                 EXCEPTIONS NO_POSITION_FOUND  = 1&lt;/P&gt;&lt;P&gt;                            OTHERS             = 2.&lt;/P&gt;&lt;P&gt;    CHECK SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    LOOP AT ICDSHW.&lt;/P&gt;&lt;P&gt;      CHECK ICDSHW-TEXT_CASE EQ SPACE.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING ICDSHW TO ITAB.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING ICDHDR TO ITAB.&lt;/P&gt;&lt;P&gt;      MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.&lt;/P&gt;&lt;P&gt;      APPEND ITAB.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END OF PROGRAM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 18 Dec 2007 05:51:50 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-12-18T05:51:50Z</dc:date>
    <item>
      <title>CDHDR &amp; CDPOS????????</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170358#M754430</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello friends,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    How can I use the tables &lt;STRONG&gt;CDHDR and CDPOS&lt;/STRONG&gt;? Please give some examples to me. Can I get the details regarding the date and type of change for a particular table from these tables. How is it possible?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   &lt;STRONG&gt;Give some examples...&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in Advance,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;LIJO&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2007 05:42:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170358#M754430</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-18T05:42:42Z</dc:date>
    </item>
    <item>
      <title>Re: CDHDR &amp; CDPOS????????</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170359#M754431</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey check this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These are change Document related tables&lt;/P&gt;&lt;P&gt;If you change the data in any SAP Transaction those changes with respect to that Transaction code, table, Filed, User, Time based changes are recorded in these tables.&lt;/P&gt;&lt;P&gt;CDPOS is a cluster table which stores lot of data. You can't join this with any table.&lt;/P&gt;&lt;P&gt;So first have to fetch the data from CDHDR and then for all entries of that table fetch the data from CDPOS table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Purchase Order History Mass Display  &lt;/P&gt;&lt;P&gt;Instead of checking your Purchase Order History one at a time, you can now mass display or print them with this customized abap report. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Mass display or print Purchase Order History&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; You can request report by :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 1.  Change date&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 2.  User Name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 3.  Purchase Order Number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; 4.  Vendor Code&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Written by : SAP Basis, ABAP Programming and Other IMG Stuff&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             &lt;A href="http://www.sap-img.com" target="test_blank"&gt;http://www.sap-img.com&lt;/A&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                 LINE-COUNT 065(001)&lt;/P&gt;&lt;P&gt;                 MESSAGE-ID VR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: DD04T,&lt;/P&gt;&lt;P&gt;        CDHDR,&lt;/P&gt;&lt;P&gt;        CDPOS,&lt;/P&gt;&lt;P&gt;        DD03L,&lt;/P&gt;&lt;P&gt;        DD41V,&lt;/P&gt;&lt;P&gt;        T685T,&lt;/P&gt;&lt;P&gt;        VBPA,&lt;/P&gt;&lt;P&gt;        TPART,&lt;/P&gt;&lt;P&gt;        KONVC,&lt;/P&gt;&lt;P&gt;        EKKO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,&lt;/P&gt;&lt;P&gt;                XNAME  FOR CDHDR-USERNAME,&lt;/P&gt;&lt;P&gt;                XEBELN FOR EKKO-EBELN,&lt;/P&gt;&lt;P&gt;                XLIFNR FOR EKKO-LIFNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TEXT-001 - Sorting Sequence&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: SUDATE RADIOBUTTON GROUP R1,&lt;/P&gt;&lt;P&gt;            SNAME  RADIOBUTTON GROUP R1,&lt;/P&gt;&lt;P&gt;            SOBID  RADIOBUTTON GROUP R1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK BLK1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: WFLAG,&lt;/P&gt;&lt;P&gt;      WCHANGENR LIKE CDHDR-CHANGENR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: INDTEXT(60) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ICDHDR OCCURS 50.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE CDHDR.&lt;/P&gt;&lt;P&gt;DATA: END OF ICDHDR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ICDSHW OCCURS 50.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE CDSHW.&lt;/P&gt;&lt;P&gt;DATA: END OF ICDSHW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF EKKEY,&lt;/P&gt;&lt;P&gt;        EBELN LIKE EKET-EBELN,&lt;/P&gt;&lt;P&gt;        EBELP LIKE EKET-EBELP,&lt;/P&gt;&lt;P&gt;        ETENR LIKE EKET-ETENR,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      END OF EKKEY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF ITAB OCCURS 50,&lt;/P&gt;&lt;P&gt;        BEGIN OF EKKEY,&lt;/P&gt;&lt;P&gt;          EBELN LIKE EKET-EBELN,&lt;/P&gt;&lt;P&gt;          EBELP LIKE EKET-EBELP,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ETENR LIKE EKET-ETENR,&lt;/P&gt;&lt;P&gt;        END OF EKKEY,&lt;/P&gt;&lt;P&gt;        CHANGENR LIKE CDHDR-CHANGENR,&lt;/P&gt;&lt;P&gt;        UDATE    LIKE CDHDR-UDATE,&lt;/P&gt;&lt;P&gt;        UTIME    LIKE CDHDR-UTIME,&lt;/P&gt;&lt;P&gt;        USERNAME LIKE CDHDR-USERNAME,&lt;/P&gt;&lt;P&gt;        CHNGIND  LIKE CDSHW-CHNGIND,&lt;/P&gt;&lt;P&gt;        FTEXT    LIKE CDSHW-FTEXT,&lt;/P&gt;&lt;P&gt;        OUTLEN   LIKE CDSHW-OUTLEN,&lt;/P&gt;&lt;P&gt;        F_OLD    LIKE CDSHW-F_OLD,&lt;/P&gt;&lt;P&gt;        F_NEW    LIKE CDSHW-F_NEW,&lt;/P&gt;&lt;P&gt;      END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;F_OLD&amp;gt;, &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT * FROM EKKO WHERE EBELN IN XEBELN AND&lt;/P&gt;&lt;P&gt;                         LIFNR IN XLIFNR.&lt;/P&gt;&lt;P&gt;  CLEAR CDHDR.&lt;/P&gt;&lt;P&gt;  CLEAR CDPOS.&lt;/P&gt;&lt;P&gt;  CDHDR-OBJECTCLAS = 'EINKBELEG'.&lt;/P&gt;&lt;P&gt;  CDHDR-OBJECTID   = EKKO-EBELN.&lt;/P&gt;&lt;P&gt;  PERFORM GETCHGDOCS.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF SUDATE = 'X'.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP&lt;/P&gt;&lt;P&gt;               EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ELSEIF SNAME = 'X'.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP&lt;/P&gt;&lt;P&gt;               EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;  SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;  CLEAR: INDTEXT, EKKEY.&lt;/P&gt;&lt;P&gt;  CASE ITAB-CHNGIND.&lt;/P&gt;&lt;P&gt;    WHEN 'U'.&lt;/P&gt;&lt;P&gt;        INDTEXT(50) = ITAB-FTEXT.&lt;/P&gt;&lt;P&gt;        INDTEXT+51  = TEXT-020.&lt;/P&gt;&lt;P&gt;        CONDENSE INDTEXT.&lt;/P&gt;&lt;P&gt;    WHEN 'D'.&lt;/P&gt;&lt;P&gt;        INDTEXT = TEXT-021.&lt;/P&gt;&lt;P&gt;    WHEN 'E'.&lt;/P&gt;&lt;P&gt;        INDTEXT(5) = ITAB-FTEXT.&lt;/P&gt;&lt;P&gt;        INDTEXT+51 = TEXT-021.&lt;/P&gt;&lt;P&gt;        CONDENSE INDTEXT.&lt;/P&gt;&lt;P&gt;      WHEN 'I'.&lt;/P&gt;&lt;P&gt;        INDTEXT = TEXT-022.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    RESERVE 4 LINES.&lt;/P&gt;&lt;P&gt;    IF WCHANGENR NE ITAB-CHANGENR.&lt;/P&gt;&lt;P&gt;      WCHANGENR = ITAB-CHANGENR.&lt;/P&gt;&lt;P&gt;      EKKEY = ITAB-EKKEY.&lt;/P&gt;&lt;P&gt;      WRITE:/ ITAB-UDATE UNDER 'Change Date',&lt;/P&gt;&lt;P&gt;              ITAB-UTIME UNDER 'Time',&lt;/P&gt;&lt;P&gt;              ITAB-USERNAME UNDER 'User Name',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-EBELN UNDER 'PO No',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-EBELP UNDER 'Item',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-ETENR UNDER 'Sch No',&lt;/P&gt;&lt;P&gt;              INDTEXT     UNDER 'Changes'.&lt;/P&gt;&lt;P&gt;    ELSEIF ITAB-EKKEY NE EKKEY.&lt;/P&gt;&lt;P&gt;      WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',&lt;/P&gt;&lt;P&gt;              ITAB-EKKEY-ETENR UNDER 'Sch No',&lt;/P&gt;&lt;P&gt;              INDTEXT     UNDER 'Changes'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE ITAB-CHNGIND.&lt;/P&gt;&lt;P&gt;      WHEN 'U'.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: / TEXT-023  UNDER 'Changes',&lt;/P&gt;&lt;P&gt;                 &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: / TEXT-024 UNDER 'Changes',&lt;/P&gt;&lt;P&gt;                 &amp;lt;F_NEW&amp;gt;.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;        WRITE: TEXT-023 UNDER 'Changes',&lt;/P&gt;&lt;P&gt;               &amp;lt;F_OLD&amp;gt;.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    SKIP.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;WRITE:/ SY-DATUM,SY-UZEIT,&lt;/P&gt;&lt;P&gt;       50 'P U R C H A S E  O R D E R   H I S T O R Y',&lt;/P&gt;&lt;P&gt;      120 'Page', SY-PAGNO.&lt;/P&gt;&lt;P&gt;WRITE: / SY-REPID,&lt;/P&gt;&lt;P&gt;         60 'Purchase Orders Changes'.&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;IF SUDATE = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'Change Date',&lt;/P&gt;&lt;P&gt;         014 'Time',&lt;/P&gt;&lt;P&gt;         024 'User Name',&lt;/P&gt;&lt;P&gt;         038 'PO No',&lt;/P&gt;&lt;P&gt;         050 'Item',&lt;/P&gt;&lt;P&gt;         057 'Sch No',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ELSEIF SOBID = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'PO No',&lt;/P&gt;&lt;P&gt;         013 'Item',&lt;/P&gt;&lt;P&gt;         020 'Sch No',&lt;/P&gt;&lt;P&gt;         028 'Change Date',&lt;/P&gt;&lt;P&gt;         041 'Time',&lt;/P&gt;&lt;P&gt;         051 'User Name',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;  WRITE:/001 'User Name',&lt;/P&gt;&lt;P&gt;         015 'Change Date',&lt;/P&gt;&lt;P&gt;         028 'Time',&lt;/P&gt;&lt;P&gt;         038 'PO No',&lt;/P&gt;&lt;P&gt;         050 'Item',&lt;/P&gt;&lt;P&gt;         057 'Sch No',&lt;/P&gt;&lt;P&gt;         065 'Changes'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM GETCHGDOCS.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            DATE_OF_CHANGE    = CDHDR-UDATE&lt;/P&gt;&lt;P&gt;            OBJECTCLASS       = CDHDR-OBJECTCLAS&lt;/P&gt;&lt;P&gt;            OBJECTID          = CDHDR-OBJECTID&lt;/P&gt;&lt;P&gt;            TIME_OF_CHANGE    = CDHDR-UTIME&lt;/P&gt;&lt;P&gt;            USERNAME          = CDHDR-USERNAME&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            I_CDHDR           = ICDHDR&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            NO_POSITION_FOUND = 1&lt;/P&gt;&lt;P&gt;            OTHERS            = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;  DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.&lt;/P&gt;&lt;P&gt;  CHECK NOT ICDHDR[] IS INITIAL.&lt;/P&gt;&lt;P&gt;  LOOP AT ICDHDR.&lt;/P&gt;&lt;P&gt;    CHECK ICDHDR-UDATE IN XUDATE.&lt;/P&gt;&lt;P&gt;    CHECK ICDHDR-USERNAME IN XNAME.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'&lt;/P&gt;&lt;P&gt;                 EXPORTING  CHANGENUMBER       = ICDHDR-CHANGENR&lt;/P&gt;&lt;P&gt;                 IMPORTING  HEADER             = CDHDR&lt;/P&gt;&lt;P&gt;                 TABLES     EDITPOS            = ICDSHW&lt;/P&gt;&lt;P&gt;                 EXCEPTIONS NO_POSITION_FOUND  = 1&lt;/P&gt;&lt;P&gt;                            OTHERS             = 2.&lt;/P&gt;&lt;P&gt;    CHECK SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    LOOP AT ICDSHW.&lt;/P&gt;&lt;P&gt;      CHECK ICDSHW-TEXT_CASE EQ SPACE.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING ICDSHW TO ITAB.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING ICDHDR TO ITAB.&lt;/P&gt;&lt;P&gt;      MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.&lt;/P&gt;&lt;P&gt;      APPEND ITAB.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END OF PROGRAM&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Dec 2007 05:51:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170359#M754431</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-12-18T05:51:50Z</dc:date>
    </item>
    <item>
      <title>Re: CDHDR &amp; CDPOS????????</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170360#M754432</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to diplay the PO changes in smartfroms,,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;help me.......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2008 06:11:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/cdhdr-cdpos/m-p/3170360#M754432</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-26T06:11:18Z</dc:date>
    </item>
  </channel>
</rss>

