Category Archives: Standard Reports

Standard SAP SD Reports

Sales summary – VC/2 

Display Customer Hierarchy – VDH2 
Display Condition record report – V/I6 
Pricing Report – V/LD 
Create Net Price List – V_NL 
List customer material info – VD59 
List of sales order – VA05 
List of Billing documents – VF05 
Inquiries list – VA15 
Quotation List – VA25 
Incomplete Sales orders – V.02 
Backorders – V.15 
Outbound Delivery Monitor – VL06o 
Incomplete delivery – V_UC 
Customer Returns-Analysis – MC+A 
Customer Analysis- Sales – MC+E 
Customer Analysis- Cr. Memo – MC+I 
Deliveries-Due list – VL04 
Billing due list – VF04 
Incomplete Billing documents – MCV9 
Customer Analysis-Basic List – MCTA 
Material Analysis(SIS) – MCTC 
Sales org analysis – MCTE 
Sales org analysis-Invoiced sales – MC+2 
Material Analysis-Incoming orders – MC(E 
General- List of Outbound deliveries – VL06f 
Material Returns-Analysis – MC+M 
Material Analysis- Invoiced Sales – MC+Q 
Variant configuration Analysis – MC(B 
Sales org analysis-Incoming orders – MC(I 
Sales org analysis-Returns – MC+Y 
Sales office Analysis- Invoiced Sales – MC-E 
Sales office Analysis- Returns – MC-A 
Shipping point Analysis – MC(U 
Shipping point Analysis-Returns – MC-O 
Blocked orders – V.14 
Order Within time period – SD01 
Duplicate Sales orders in period – SDD1 
Display Delivery Changes – VL22 

Advertisements

Sales Order Changed History Display

You can execute the report by :

1.  Change Date

2.  User Name

3.  Sales Order Number

REPORT ZSDCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING

                 LINE-COUNT 065(001)

                 MESSAGE-ID VR.

TABLES: DD04T,

        CDHDR,

        CDPOS,

        DD03L,

        DD41V,

        T685T,

        VBPA,

        TPART,

        KONVC,

        VBUK.

DATA: BEGIN OF ICDHDR OCCURS 50.

        INCLUDE STRUCTURE CDHDR.

DATA: END OF ICDHDR.

SELECT-OPTIONS: XUDATE FOR ICDHDR-UDATE,

                XNAME  FOR ICDHDR-USERNAME,

                XVBELN FOR VBUK-VBELN.

SELECTION-SCREEN SKIP.

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,

      WUDATE LIKE CDHDR-UDATE,

      WNAME  LIKE CDHDR-USERNAME,

      WVBELN LIKE VBUK-VBELN,

      WDEC1 TYPE P DECIMALS 3,

      WDEC2 TYPE P DECIMALS 3,

      WDEC3 TYPE P DECIMALS 3,

      WDEC4 TYPE P DECIMALS 3.

DATA: UTEXT(16) VALUE 'has been changed',

      ITEXT(16) VALUE 'has been created',

      DTEXT(16) VALUE 'has been deleted'.

DATA: BEGIN OF ICDSHW OCCURS 50.

        INCLUDE STRUCTURE CDSHW.

DATA: END OF ICDSHW.

DATA: BEGIN OF ITAB OCCURS 10.

        INCLUDE STRUCTURE CDSHW.

DATA:   UDATE LIKE CDHDR-UDATE,

        USERNAME LIKE CDHDR-USERNAME,

        CHANGENR LIKE CDHDR-CHANGENR,

        VBELN(10),

        POSNR(6),

        ETENR(4),

        INDTEXT(200),

  END OF ITAB.

SELECT * FROM VBUK WHERE VBELN IN XVBELN.

  CLEAR CDHDR.

  CLEAR CDPOS.

  CDHDR-OBJECTCLAS = 'VERKBELEG'.

  CDHDR-OBJECTID   = VBUK-VBELN.

  PERFORM READHEADER.

  PERFORM READPOS.

  LOOP AT ITAB.

    CASE ITAB-TABNAME.

      WHEN 'VBPA'.

        IF ITAB-FNAME = 'KUNNR' OR

           ITAB-FNAME = 'LIFNR' OR

           ITAB-FNAME = 'PARNR' OR

           ITAB-FNAME = 'PERNR' OR

           ITAB-FNAME IS INITIAL.

         MOVE ITAB-TABKEY TO VBPA.

         SELECT SINGLE * FROM TPART WHERE SPRAS = SY-LANGU

                                   AND   PARVW = VBPA-PARVW.

         IF SY-SUBRC = 0.

           REPLACE '&' WITH TPART-VTEXT INTO ITAB-INDTEXT.

         ENDIF.

       ENDIF.

     WHEN 'VBAP'.

       IF ITAB-FNAME IS INITIAL.

         REPLACE '&' WITH 'Item' INTO ITAB-INDTEXT.

       ENDIF.

     WHEN 'KONVC'.

       MOVE ITAB-TABKEY TO KONVC.

       SELECT SINGLE * FROM T685T WHERE SPRAS = SY-LANGU

                                 AND   KVEWE = 'A'

                                 AND   KAPPL = 'V'

                                 AND   KSCHL = KONVC-KSCHL.

       IF SY-SUBRC = 0.

         REPLACE '&' WITH T685T-VTEXT INTO ITAB-INDTEXT.

       ENDIF.

     ENDCASE.

     IF ITAB-INDTEXT(1) EQ '&'.

       REPLACE '&' WITH ITAB-FTEXT(40) INTO ITAB-INDTEXT.

     ENDIF.

     IF ITAB-CHNGIND = 'I'.

       REPLACE '%' WITH ITEXT INTO ITAB-INDTEXT.

     ELSEIF ITAB-CHNGIND = 'U'.

       REPLACE '%' WITH UTEXT INTO ITAB-INDTEXT.

     ELSE.

       REPLACE '%' WITH DTEXT INTO ITAB-INDTEXT.

     ENDIF.

     CONDENSE ITAB-INDTEXT.

     MODIFY ITAB.

   ENDLOOP.

ENDSELECT.

IF SUDATE = 'X'.

  SORT ITAB BY UDATE VBELN POSNR ETENR.

ELSEIF SOBID = 'X'.

  SORT ITAB BY VBELN POSNR ETENR UDATE.

ELSE.

  SORT ITAB BY USERNAME VBELN POSNR ETENR UDATE.

ENDIF.

LOOP AT ITAB.

  CLEAR WFLAG.

  IF SUDATE = 'X'.

    IF WUDATE NE ITAB-UDATE.

      SKIP.

      WRITE:/001 ITAB-UDATE,

             023 ITAB-USERNAME,

             037(10) ITAB-VBELN.

      WFLAG = 'X'.

      WUDATE = ITAB-UDATE.

      WCHANGENR = ITAB-CHANGENR.

    ENDIF.

  ELSEIF SOBID NE 'X'.

    IF WVBELN NE ITAB-VBELN.

      SKIP.

      WRITE:/001 ITAB-VBELN.

      WVBELN = ITAB-VBELN.

    ENDIF.

  ELSE.

    IF WNAME NE ITAB-USERNAME.

      SKIP.

      WRITE:/001 ITAB-USERNAME.

      WNAME = ITAB-USERNAME.

    ENDIF.

  ENDIF.

  IF WCHANGENR NE ITAB-CHANGENR.

    WRITE:/023 ITAB-USERNAME,

           037(10) ITAB-VBELN.

       WFLAG = 'X'.

       WCHANGENR = ITAB-CHANGENR.

    ENDIF.

    IF WFLAG = 'X'.

      WRITE: 013 ITAB-CHNGIND,

             049 ITAB-POSNR,

             057 ITAB-ETENR,

             065 ITAB-INDTEXT(60).

    ELSE.

      WRITE: /013 ITAB-CHNGIND,

              049 ITAB-POSNR,

              057 ITAB-ETENR,

              065 ITAB-INDTEXT(60).

    ENDIF.

  WRITE:/065 ITAB-F_OLD.

  WRITE:/065 ITAB-F_NEW.

ENDLOOP.

FORM READHEADER.

  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.

  CASE SY-SUBRC.

    WHEN '0000'.

    WHEN '0001'.

      MESSAGE S311.

      LEAVE.

    WHEN '0002'.

      MESSAGE S311.

      LEAVE.

  ENDCASE.

ENDFORM.

FORM READPOS.

  LOOP AT ICDHDR.

    CHECK ICDHDR-UDATE

                        IN XUDATE.

    CHECK ICDHDR-USERNAME

                          IN XNAME.

    CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'

         EXPORTING

              CHANGENUMBER      = ICDHDR-CHANGENR

              TABLEKEY          = CDPOS-TABKEY

              TABLENAME         = CDPOS-TABNAME

         IMPORTING

              HEADER            = CDHDR

         TABLES

              EDITPOS           = ICDSHW

         EXCEPTIONS

              NO_POSITION_FOUND = 1

              OTHERS            = 2.

    CASE SY-SUBRC.

      WHEN '0000'.

        LOOP AT ICDSHW.

          CHECK ICDSHW-CHNGIND NE 'E'.

          CLEAR ITAB.

          MOVE-CORRESPONDING ICDHDR TO ITAB.

          MOVE-CORRESPONDING ICDSHW TO ITAB.

          CASE ITAB-TABNAME.

            WHEN 'KONVC'.

              MOVE ICDHDR-OBJECTID TO ITAB-VBELN.

              MOVE ICDSHW-TABKEY(6) TO ITAB-POSNR.

            WHEN OTHERS.

              MOVE ICDSHW-TABKEY+3(10)  TO ITAB-VBELN.

              MOVE ICDSHW-TABKEY+13(6)  TO ITAB-POSNR.

              MOVE ICDSHW-TABKEY+19(4)  TO ITAB-ETENR.

          ENDCASE.

          MOVE '& %' TO ITAB-INDTEXT.

          APPEND ITAB.

          CLEAR ITAB.

        ENDLOOP.

      WHEN OTHERS.

        MESSAGE S311.

        LEAVE.

    ENDCASE.

  ENDLOOP.

ENDFORM.

TOP-OF-PAGE.

WRITE:/ SY-DATUM,SY-UZEIT,

       50 'SALES ORDER CHANGE HISTORY',

      120 'Page', SY-PAGNO.

WRITE: / SY-REPID,

         60 'SALES ORDERS STATISTICS'.

SKIP.

ULINE.

IF SUDATE = 'X'.

  WRITE:/001 'Change Date',

         013 'Time',

         023 'User Name',

         037 'Sale Order',

         049 'Line',

         057 'Sch No',

         065 'Changes'.

ELSEIF SOBID = 'X'.

  WRITE:/001 'Sale Order',

         013 'Line',

         021 'Sch No',

         029 'Change Date',

         041 'Time',

         051 'User Name',

         065 'Comment'.

ELSE.

  WRITE:/001 'User Name',

         015 'Time',

         025 'Change Date',

         037 'Sale Order',

         049 'Line',

         057 'Sch No',

         065 'Changes'.

ENDIF.

ULINE.

 

Pricing Reports

You may use V/LD – Execute Pricing Report to check the prices entered into the Pricing Master.

Normally Pricing Report – “07 Cust.-specific Prices with Scale Display” will do.

Other Pricing Reports you may try are as follows:
|LR|Report title                                                         

|01|Comparison of Price Lists Without Scale Display                      
|02|Comparison of Price Groups Without Scale Display                     
|03|Incoterms with Scale Display                                         
|04|Incoterms Without Scale Display                                      
|05|Price List Types Without Scale Display                               
|06|Price List Types with Scale Display                                  
|07|Cust.-specific Prices with Scale Display                           
|08|Cust.-specific Prices W/out Scale Display               

|09|Material List/Material Pricing Group with Scale Display              
|10|List Mat./Mat.Pricing Groups Without Scale Display                   
|11|Price Groups With Scale Display                                      
|14|Taxes                                                                
|15|Material Price                                                       
|16|Individual Prices                                                    
|17|Discounts and Surcharges by Customer                                 
|18|Discounts and Surcharges by Material                                 
|19|Discounts and Surcharges by Price Group                              
|20|Discounts and Surcharges by Material Group                           
|21|Discounts and Surcharges by Customer/Material                        
|22|Discounts and Surcharges by Customer/Material Group                  
|23|Discounts and Surcharges by Price Group/Material                     
|24|Discounts and Surcharges by Price Group/Material Group               
|25|VAT/ATX1                                                             
|26|Canada/USA                                                           
|27|I.E.P.S Mexico                                                       
|28|Conditions by Customer                                               
|30|Conditions by Customer Hierarchy                                     
|31|Price List with Release Status                                       
|AC|                                                                     
|AD|                                                                     

Reports

Go to t-code SARP and select SD01 as a reporting Key. You will get
reporting menu tree for SD. All LIS reports are standard SD and logistics reports. Any report starting with “MC**” will be a standard LIS report. e.g. MCSI,MCTG, MCTE etc.