04-12-2008 8:56 AM
Hi
Can any body can help me in giving some examples of sales reports
Thanks n regards
srinivas
04-12-2008 9:09 AM
Hi,
REPORT zche_sales_order .
****************************Declarations********************************
TABLES: vbkd,vepvg.",vbak,vbap,vbpa,vakpa, vapma.
DATA: BEGIN OF sal OCCURS 0,
ch TYPE checkbox,
vbeln LIKE vbak-vbeln, " sales document
netwr LIKE vbak-netwr, "Net Value of the SalesOrder
matnr LIKE vbap-matnr, "material no.
waerk LIKE vbak-waerk, "curr.
dat LIKE vbak-erdat, "date.
END OF sal.
DATA: newsal LIKE sal OCCURS 0 WITH HEADER LINE.
DATA: amount LIKE vbak-netwr, date2(15),date3(8),date4(1),
date5(2),date6(2).
DATA: lin LIKE sy-curow VALUE 1,"Screens, vertical cursor position at
"PAI available in SYST struc.
checkbox TYPE c ,
dat LIKE vbak-erdat.
*******************Selection**Screen**Design****************************
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
PARAMETERS: vkorg LIKE vepvg-vkorg,
vtweg LIKE vepvg-vtweg,
spart LIKE vepvg-spart.
SELECT-OPTIONS date FOR vbkd-bstdk DEFAULT sy-datum TO sy-datum
OBLIGATORY.
SELECTION-SCREEN END OF BLOCK blk1.
SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN POSITION 10.
PARAMETERS: chk1 AS CHECKBOX.
SELECTION-SCREEN POSITION 20.
PARAMETERS: kunnr1 LIKE vbpa-kunnr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK blk2.
********************First**Level**Operation*****************************
IF chk1 <> 'X'.
IF vkorg <> ''.
PERFORM organisation.
ELSE.
PERFORM organisation_else.
ENDIF.
ELSE.
IF vkorg <> ''.
PERFORM cus_orga.
ELSE.
PERFORM cus_orga_else.
ENDIF.
ENDIF.
* Displaying the contents which is selected from table by
* -selection conditions
SORT sal BY dat.
LOOP AT sal.
ON CHANGE OF sal-dat.
* FORMAT HOTSPOT ON.
IF sy-tabix = 1.
WRITE: sy-vline, sal-ch AS CHECKBOX,sal-dat .
CLEAR amount.
ELSE.
WRITE:sy-vline, amount,/ sy-vline, sal-ch AS CHECKBOX,sal-dat.
CLEAR amount.
ENDIF.
ENDON.
amount = amount + sal-netwr.
AT LAST.
WRITE:sy-vline, amount.
ULINE.
SUM.
* FORMAT HOTSPOT OFF.
FORMAT COLOR = 3.
WRITE:/ ' Total Amount:', sal-netwr UNDER amount.
ENDAT.
ENDLOOP.
**********************Interaction with report**************************
SET PF-STATUS 'BANU'. " To create Application ToolBar for Display
Button
* To verify Double click on BANU
AT USER-COMMAND. " This will execute after pressing Display Button
CASE sy-ucomm.
WHEN 'DISP'.
free newsal.
DO.
READ LINE lin FIELD VALUE sal-ch INTO checkbox.
IF sy-subrc NE 0. EXIT. ENDIF.
IF checkbox = 'X'.
PERFORM datecon.
PERFORM process.
ENDIF.
lin = lin + 1.
ENDDO.
PERFORM selection.
ENDCASE.
************************ SUB ROUTINE Area
******************************
*This Process SubRoutine will assign the values from current
* -InternalTable (sal) into other IT(newsal), by date which is
* - selected by CheckBox
FORM process.
LOOP AT sal WHERE dat = dat.
newsal-ch = 'X'.
newsal-vbeln = sal-vbeln.
newsal-netwr = sal-netwr.
newsal-matnr = sal-matnr.
newsal-waerk = sal-waerk.
newsal-dat = sal-dat.
APPEND newsal.
ENDLOOP.
ENDFORM. "process
*&---------This will display the values for selected dates from new --*
*---------------------internal Table (newsal)-------------------------*
*& Form SELECTION
*&--------------------------------------------------------------------*
*---------------------------------------------------------------------*
FORM selection.
ULINE.
FORMAT COLOR = 1.
WRITE:sy-vline,'Date',AT 14 sy-vline, 'Order NO', AT 27 sy-vline,
'Order Material', AT 48 sy-vline,'Order Value(AMT) Currency '.
FORMAT COLOR OFF.
ULINE.
LOOP AT newsal.
ON CHANGE OF newsal-dat.
IF sy-tabix <> 1.
WRITE:/ sy-vline, AT 14 sy-vline,AT 27 sy-vline,AT 48 sy-vline.
WRITE:/ sy-vline,newsal-dat,sy-vline,AT 27 sy-vline,AT 48 sy-vline.
ELSE.
WRITE: sy-vline,newsal-dat,sy-vline,AT 27 sy-vline,AT 48 sy-vline.
ENDIF.
ENDON.
WRITE:/ sy-vline, AT 14 sy-vline,newsal-vbeln,sy-vline,
newsal-matnr, sy-vline, newsal-netwr, newsal-waerk.
AT LAST.
SUM.
ULINE. FORMAT COLOR = 3.
WRITE:/ sy-vline, AT 15 'Total Amount for selected month:',
newsal-netwr UNDER newsal-netwr.
FORMAT COLOR OFF.
ULINE.
ENDAT.
ENDLOOP.
lin = 1.
FREE newsal.
ENDFORM. "SELECTION
* This Date convertion is must for pick the particular Date from the
* -displayed line, and here we are reversing the Date like
YYYY/MM/DD
* -because to Check or assign the date we need to give in reverse
order
*&--------------------------------------------------------------------*
*& Form DATECON
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM datecon.
date2 = sy-lisel(17).
SHIFT date2 LEFT BY 4 PLACES.
WHILE date2 <> ''.
SHIFT date2 RIGHT.
date4 = date2+11.
IF date4 <> '.'.
CONCATENATE date4 date3 INTO date3.
ENDIF.
ENDWHILE.
date5 = date3(2).
date6 = date3+2.
date3 = date3+4.
CONCATENATE date3 date6 date5 INTO date3.
dat = date3.
* SORT dat BY dat.
* DELETE ADJACENT DUPLICATES FROM dat COMPARING dat.
ENDFORM. "DATECON
* Here we are doing different kinds of selections by the EndUser's
needs
*&---------When user selectiong an Sales Organisation-----------------*
*& Form ORGANISATION
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM organisation.
SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE p~audat IN date AND p~vkorg = vkorg.
APPEND sal.
ENDSELECT.
ENDFORM. "ORGANISATION
*&---------Without Sales Organisation i.e All Organisation------------*
*& Form ORGANISATION_ELSE
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM organisation_else.
SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE p~audat IN date.
APPEND sal.
ENDSELECT.
ENDFORM. "ORGANISATION_ELSE
*&------------When Selecting Customer by choosing CheckBox------------*
*& Form CUS_ORGA
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM cus_orga.
SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE p~audat IN date AND p~vkorg = vkorg AND
p~kunnr = kunnr1.
APPEND sal.
ENDSELECT.
ENDFORM. "CUS_ORGA
*&------------Without Customer by without choosing CheckBox-----------*
*& Form CUS_ORGA_ELSE
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM cus_orga_else.
SELECT f~vbeln p~matnr c~netwr c~waerk p~audat INTO (sal-vbeln,
sal-matnr, sal-netwr,sal-waerk, sal-dat) FROM ( vakpa AS f INNER JOIN
vbak AS c ON f~vbeln = c~vbeln ) INNER JOIN vapma AS p ON
f~vbeln = p~vbeln WHERE p~audat IN date AND p~kunnr = kunnr1.
APPEND sal.
ENDSELECT.
endform.
reward if helpful
raam
04-12-2008 9:22 AM
hi check this....
http://sapprograms.blogspot.com/2008/03/using-of-at-new-at-end-of-commands.html
http://sapprograms.blogspot.com/2008/04/alv-interactivedouble-clicking.html
http://sapprograms.blogspot.com/2008/04/double-click-on-alv-report-1.html
http://sapprograms.blogspot.com/2008/04/alv-heading-at-center-and-at-end-of.html
regards,
venkat.
04-12-2008 9:29 AM
hi there,,,,,,,
&----
*& TYPE-POOL *
*& *
&----
TYPE-POOLS SLIS.
&----
*& TABLES *
*& *
&----
TABLES: VBAK,
VBAP,
TVKO, "sales organization
KNA1, "customer details
MARA, "material master
TVTA, " sales area details
TVKOV, " distribution channel details
VBUK. " sales document header data
&----
*& PARAMETERS & SELECT-OPTIONS *
*& *
&----
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS: P_VKORG LIKE VBAK-VKORG OBLIGATORY, "sales organization
P_VTWEG LIKE VBAK-VTWEG OBLIGATORY, "Distribution channel
P_SPART LIKE VBAK-SPART OBLIGATORY. "Division
SELECT-OPTIONS: S_AUDAT FOR VBAK-AUDAT OBLIGATORY, " Document date
S_VBELN FOR VBAK-VBELN, " sales document
S_KUNNR FOR VBAK-KUNNR, " sold to party
S_MATNR FOR VBAP-MATNR. " Material No.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
PARAMETERS: O_ORD RADIOBUTTON GROUP RAD1,
A_ORD RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN END OF BLOCK B2.
&----
*& INTERNAL TABLES *
*& *
&----
DATA: IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
IT_FIELDCAT_1 TYPE SLIS_T_FIELDCAT_ALV,
IT_EVENT TYPE SLIS_T_EVENT,
IT_HEADING TYPE SLIS_T_LISTHEADER,
IT_VARIANT LIKE DISVARIANT OCCURS 0 WITH HEADER LINE,
WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
WA_LINE TYPE SLIS_LISTHEADER,
WA_EVENT TYPE SLIS_ALV_EVENT.
&---------------------------------------------------------------------*
*& INTERNAL TABLE TO HOLD HEADER DATA *
*& *
&----
DATA: BEGIN OF ITAB_VBAK OCCURS 0,
VBELN LIKE VBAK-VBELN,
AUDAT LIKE VBAK-AUDAT,
AUART LIKE VBAK-AUART,
NETWR LIKE VBAK-NETWR,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
KUNNR LIKE VBAK-KUNNR,
END OF ITAB_VBAK.
&----
*& INTERNAL TABLE TO HOLD ITEM DATA *
*& *
&----
DATA: BEGIN OF ITAB_VBUK OCCURS 0,
VBELN LIKE VBAK-VBELN,
END OF ITAB_VBUK.
DATA: BEGIN OF ITAB_VBAP OCCURS 0,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBAP-POSNR,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
NETPR LIKE VBAP-NETPR,
END OF ITAB_VBAP.
&----
*& INTERNAL TABLE TO HOLD BUSINESS DATA
*& *
&----
DATA: BEGIN OF ITAB_VBKD OCCURS 0,
VBELN LIKE VBKD-VBELN,
POSNR LIKE VBKD-POSNR,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
END OF ITAB_VBKD.
DATA: BEGIN OF ITAB_VBPA OCCURS 0,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBAP-POSNR,
SHIPTO LIKE VBPA-KUNNR,
END OF ITAB_VBPA.
DATA: BEGIN OF ITAB_FINAL OCCURS 0,
KUNNR LIKE VBAK-KUNNR,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBAP-POSNR,
VKORG LIKE VBAK-VKORG,
VTWEG LIKE VBAK-VTWEG,
SPART LIKE VBAK-SPART,
AUART LIKE VBAK-AUART,
MATNR LIKE VBAP-MATNR,
ARKTX LIKE VBAP-ARKTX,
AUDAT LIKE VBAK-AUDAT,
KWMENG LIKE VBAP-KWMENG,
WERKS LIKE VBAP-WERKS,
LGORT LIKE VBAP-LGORT,
BSTKD LIKE VBKD-BSTKD,
BSARK LIKE VBKD-BSARK,
SHIPTO LIKE VBPA-KUNNR,
NETPR LIKE VBAP-NETPR,
NETWR LIKE VBAK-NETWR,
END OF ITAB_FINAL.
DATA: BEGIN OF ITAB_KONV OCCURS 0,
KNUMV LIKE KONV-KNUMV,
KPOSN LIKE KONV-KPOSN,
KSCHL LIKE KONV-KSCHL,
KBETR LIKE KONV-KBETR,
KWERT LIKE KONV-KWERT,
VTEXT LIKE T685T-VTEXT,
END OF ITAB_KONV,
ITAB_KONV_1 LIKE STANDARD TABLE OF ITAB_KONV WITH HEADER LINE.
DATA: BEGIN OF ITAB_T685T OCCURS 0, " T685T CONDITION RECORDS TABLE
KSCHL LIKE T685T-KSCHL,
VTEXT LIKE T685T-VTEXT,
END OF ITAB_T685T.
&----
*& DATA VARIABLES *
*& *
&----
DATA: V_DATE LIKE SY-DATUM,
V_KNUMV LIKE VBAK-KNUMV,
V_FIELD(30),
GV_STOP,
GV_REPID TYPE SY-REPID.
&----
*& INITIALIZATION *
*& *
&----
INITIALIZATION.
GV_REPID = SY-REPID.
V_DATE = SY-DATUM.
IF V_DATE+4(2) = '01'.
V_DATE+4(2) = '12'.
V_DATE0(4) = V_DATE0(4) - 1.
ELSE.
V_DATE4(2) = V_DATE4(2) - 1.
ENDIF.
MOVE: 'BT' TO S_AUDAT-OPTION,
V_DATE TO S_AUDAT-LOW,
SY-DATUM TO S_AUDAT-HIGH.
APPEND S_AUDAT.
&----
*& AT SELECTION-SCREEN *
*& *
&----
AT SELECTION-SCREEN.
PERFORM VALIDATE_VKORG.
PERFORM VALIDATE_VTWEG.
PERFORM VALIDATE_SPART.
PERFORM VALIDATE_KUNNR.
PERFORM VALIDATE_VBELN.
PERFORM VALIDATE_MATNR.
PERFORM VALIDATE_COMBINATION.
"If any sales doc exists for given Sales org, Distribution channel, Divi
"sion in the specified span.
***&----
**
***& AT LINE SELECTION
**
***&
**
***&----
**
**AT LINE-SELECTION.
GET CURSOR FIELD v_field.
PERFORM get_condition_item_details.
PERFORM get_second_list.
&----
*& START-OF-SELECTION *
*& *
&----
START-OF-SELECTION.
PERFORM GET_SALES_ORDER.
PERFORM GET_ITEM_DETAILS.
PERFORM GET_SHIP_TO_DETAILS.
PERFORM GET_PURCHASE_ORDER_DETAILS.
PERFORM POPULATE_FINAL_TABLE.
&----
*& END-OF-SELECTION *
*& *
&----
*END-OF-SELECTION.
IF GV_STOP IS INITIAL.
PERFORM DISPLAY_ALV_REPORT.
ENDIF.
**&----
*
**& TOP-OF-PAGE
*
**&
*
**&----
*
**TOP-OF-PAGE.
PERFORM header.
**
**&----
*
**& END-OF-PAGE
*
**&
*
**&----
*
**END-OF-PAGE.
**
PERFORM footer.
&----
*& Form VALIDATE_VKORG
&----
FORM VALIDATE_VKORG .
SELECT SINGLE VKORG
FROM TVKO
INTO TVKO-VKORG
WHERE VKORG = P_VKORG.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID SALES ORGANIZATION'.
ENDIF.
ENDFORM. " VALIDATE_VKORG
&----
*& Form VALIDATE_VTWEG
&----
FORM VALIDATE_VTWEG .
SELECT SINGLE VTWEG
FROM TVKOV
INTO TVKOV-VTWEG
WHERE VTWEG = P_VTWEG.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID DISTIBUTION CHANNEL'.
ENDIF.
ENDFORM. " VALIDATE_VTWEG
&----
*& Form VALIDATE_SPART
&----
FORM VALIDATE_SPART .
SELECT SINGLE SPART
FROM TVTA
INTO TVTA-SPART
WHERE SPART = P_SPART.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID DIVISION'.
ENDIF.
ENDFORM. " VALIDATE_SPART
&----
*& Form VALIDATE_KUNNR
&----
FORM VALIDATE_KUNNR .
IF NOT S_KUNNR[] IS INITIAL.
SELECT SINGLE KUNNR
FROM KNA1
INTO KNA1-KUNNR
WHERE KUNNR IN S_KUNNR.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID SOLD-PARTY'.
ENDIF.
ENDIF.
ENDFORM. " VALIDATE_KUNNR
&----
*& Form VALIDATE_MATNR
&----
FORM VALIDATE_MATNR .
IF NOT S_MATNR[] IS INITIAL.
SELECT SINGLE MATNR
FROM MARA
INTO MARA
WHERE MATNR IN S_MATNR.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID MATERIAL NUMBER'.
ENDIF.
ENDIF.
ENDFORM. " VALIDATE_MATNR
&----
*& Form GET_SALES_ORDER
&----
FORM GET_SALES_ORDER .
DATA: LV_INDEX TYPE SY-TABIX.
SELECT VBELN
AUDAT
AUART
NETWR
VKORG
VTWEG
SPART
KUNNR
FROM VBAK
INTO TABLE ITAB_VBAK
WHERE VBELN IN S_VBELN
AND AUDAT IN S_AUDAT
AND VKORG = P_VKORG
AND VTWEG = P_VTWEG
AND SPART = P_SPART
AND KUNNR IN S_KUNNR.
IF SY-SUBRC <> 0.
MESSAGE I000 WITH 'No Records Found'.
GV_STOP = 'X'.
STOP.
ENDIF.
IF O_ORD = 'X'.
IF NOT ITAB_VBAK[] IS INITIAL.
SELECT VBELN
FROM VBUK
INTO TABLE ITAB_VBUK
FOR ALL ENTRIES IN ITAB_VBAK
WHERE VBELN = ITAB_VBAK-VBELN
AND GBSTK NE 'C'.
IF SY-SUBRC <> 0.
MESSAGE I000 WITH 'No Open Orders'.
GV_STOP = 'X'.
STOP.
ENDIF.
SORT ITAB_VBAK BY VBELN.
LV_INDEX = SY-TABIX.
LOOP AT ITAB_VBAK.
READ TABLE ITAB_VBUK WITH KEY VBELN = ITAB_VBAK-VBELN BINARY
SEARCH.
IF SY-SUBRC <> 0.
DELETE ITAB_VBAK INDEX LV_INDEX.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDFORM. " GET_SALES_ORDER
&----
*& Form GET_ITEM_DETAILS
&----
FORM GET_ITEM_DETAILS .
IF NOT ITAB_VBAK[] IS INITIAL.
SELECT VBELN
POSNR
MATNR
ARKTX
KWMENG
WERKS
LGORT
NETPR
FROM VBAP
INTO TABLE ITAB_VBAP
FOR ALL ENTRIES IN ITAB_VBAK
WHERE VBELN = ITAB_VBAK-VBELN
AND MATNR IN S_MATNR.
IF SY-SUBRC <> 0.
MESSAGE I000 WITH 'NO ITEM DETAILS'.
GV_STOP = 'X'.
STOP.
ENDIF.
ENDIF.
ENDFORM. " GET_ITEM_DETAILS
&----
*& Form GET_SHIP_TO_DETAILS
&----
FORM GET_SHIP_TO_DETAILS .
DATA: LV_COUNT TYPE I VALUE 0.
IF NOT ITAB_VBAP[] IS INITIAL.
SELECT VBELN
POSNR
KUNNR
INTO TABLE ITAB_VBPA
FROM VBPA
FOR ALL ENTRIES IN ITAB_VBAP
WHERE VBELN = ITAB_VBAP-VBELN
AND ( POSNR = ITAB_VBAP-POSNR
OR POSNR = '000000' )
AND PARVW = 'WE'.
IF SY-SUBRC <> 0.
MESSAGE I000 WITH 'No Ship-to Partner found'.
ENDIF.
SORT ITAB_VBPA BY VBELN POSNR DESCENDING .
LOOP AT ITAB_VBPA.
ADD 1 TO LV_COUNT.
AT END OF POSNR.
IF ( LV_COUNT GT 1 AND ITAB_VBPA-POSNR = '000000' ).
DELETE ITAB_VBPA INDEX SY-TABIX.
CLEAR LV_COUNT.
ELSEIF ( LV_COUNT EQ 1 AND ITAB_VBPA-POSNR = '000000' ).
CLEAR: ITAB_VBAP,
LV_COUNT.
READ TABLE ITAB_VBAP WITH KEY VBELN = ITAB_VBPA-VBELN.
IF SY-SUBRC = 0.
ITAB_VBAP-POSNR = '000000'.
MODIFY ITAB_VBAP INDEX SY-TABIX.
ENDIF.
ENDIF.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " GET_SHIP_TO_DETAILS
&----
*& Form GET_PURCHASE_ORDER_DETAILS
&----
FORM GET_PURCHASE_ORDER_DETAILS .
DATA: LV_COUNT TYPE I VALUE 0.
IF NOT ITAB_VBAP[] IS INITIAL.
SELECT VBELN
POSNR
BSTKD
BSARK
FROM VBKD
INTO TABLE ITAB_VBKD
FOR ALL ENTRIES IN ITAB_VBAP
WHERE VBELN = ITAB_VBAP-VBELN
AND ( POSNR = ITAB_VBAP-POSNR
OR POSNR = '000000' )
.
IF SY-SUBRC <> 0.
MESSAGE I000 WITH 'No Purchase Order Found'.
ENDIF.
SORT ITAB_VBKD BY VBELN POSNR.
LOOP AT ITAB_VBKD.
ADD 1 TO LV_COUNT.
AT END OF POSNR.
IF ( LV_COUNT GT 1 AND ITAB_VBKD-POSNR = '000000' ).
DELETE ITAB_VBKD INDEX SY-TABIX.
CLEAR LV_COUNT.
ELSEIF ( LV_COUNT EQ 1 AND ITAB_VBKD-POSNR = '000000' ).
CLEAR: ITAB_VBAP,
LV_COUNT.
READ TABLE ITAB_VBAP WITH KEY VBELN = ITAB_VBKD-VBELN.
IF SY-SUBRC = 0.
ITAB_VBAP-POSNR = '000000'.
MODIFY ITAB_VBAP INDEX SY-TABIX.
ENDIF.
ENDIF.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " GET_PURCHASE_ORDER_DETAILS
&----
*& Form POPULATE_FINAL_TABLE
&----
FORM POPULATE_FINAL_TABLE .
LOOP AT ITAB_VBAP.
CLEAR ITAB_FINAL.
MOVE: ITAB_VBAP-VBELN TO ITAB_FINAL-VBELN,
ITAB_VBAP-POSNR TO ITAB_FINAL-POSNR,
ITAB_VBAP-MATNR TO ITAB_FINAL-MATNR,
ITAB_VBAP-ARKTX TO ITAB_FINAL-ARKTX,
ITAB_VBAP-KWMENG TO ITAB_FINAL-KWMENG,
ITAB_VBAP-WERKS TO ITAB_FINAL-WERKS,
ITAB_VBAP-LGORT TO ITAB_FINAL-LGORT,
ITAB_VBAP-NETPR TO ITAB_FINAL-NETPR.
APPEND ITAB_FINAL.
ENDLOOP.
SORT ITAB_FINAL BY VBELN.
LOOP AT ITAB_FINAL.
READ TABLE ITAB_VBAK WITH KEY VBELN = ITAB_FINAL-VBELN BINARY SEARCH
.
MOVE: ITAB_VBAK-KUNNR TO ITAB_FINAL-KUNNR,
ITAB_VBAK-VKORG TO ITAB_FINAL-VKORG,
ITAB_VBAK-VTWEG TO ITAB_FINAL-VTWEG,
ITAB_VBAK-SPART TO ITAB_FINAL-SPART,
ITAB_VBAK-AUART TO ITAB_FINAL-AUART,
ITAB_VBAK-AUDAT TO ITAB_FINAL-AUDAT.
READ TABLE ITAB_VBPA WITH KEY VBELN = ITAB_FINAL-VBELN BINARY SEARCH
.
MOVE: ITAB_VBPA-SHIPTO TO ITAB_FINAL-SHIPTO.
READ TABLE ITAB_VBKD WITH KEY VBELN = ITAB_FINAL-VBELN BINARY SEARCH
.
MOVE: ITAB_VBKD-BSARK TO ITAB_FINAL-BSARK ,
ITAB_VBKD-BSTKD TO ITAB_FINAL-BSTKD.
MODIFY ITAB_FINAL.
ENDLOOP.
ENDFORM. " POPULATE_FINAL_TABLE
&----
*& Form POPULATE_RESULT
&----
*FORM populate_result .
*
*
SORT itab_final BY kunnr.
LOOP AT itab_final.
*
AT NEW kunnr.
FORMAT INVERSE ON.
WRITE:/ '|', 10 'Sold-to-party--> ' COLOR 4, itab_final-kunnr
COLOR 5, 303 '|'.
WRITE:/ '|', 303 '|'.
ENDAT.
*
FORMAT INVERSE OFF.
FORMAT COLOR 4.
WRITE:/ '|',
itab_final-vbeln HOTSPOT ON, 13 '|',
14 itab_final-posnr, 30 '|',
31 itab_final-vkorg, 42 '|',
43 itab_final-vtweg, 57 '|',
58 itab_final-spart, 68 '|',
69 itab_final-auart, 85 '|',
86 itab_final-matnr, 104 '|',
105 itab_final-arktx, 145 '|',
146 itab_final-audat, 162 '|',
163 itab_final-kwmeng LEFT-JUSTIFIED, 178 '|',
179 itab_final-werks, 186 '|',
187 itab_final-lgort, 197 '|',
198 itab_final-bstkd, 215 '|',
216 itab_final-bsark, 235 '|',
236 itab_final-kunnr, 251 '|',
252 itab_final-shipto, 262 '|',
263 itab_final-netpr, 274 '|',
275 itab_final-netwr, 303 '|'.
HIDE itab_final-vbeln.
AT END OF kunnr.
ULINE.
SUM.
*
WRITE:/ '|',
155 'Total ' COLOR 3 , 162 '|',
163 itab_final-kwmeng LEFT-JUSTIFIED, 178 '|' ,262 '|',
263 itab_final-netpr, 274 '|',
275 itab_final-netpr,
303 '|'.
ULINE.
NEW-PAGE.
*
ENDAT.
*
ENDLOOP.
*
*
*
*ENDFORM. " POPULATE_RESULT
**&----
*
**& Form HEADER
**&----
*
*FORM header .
ULINE.
WRITE: 50 'SALES ORDER REPORT' COLOR 7.
ULINE.
FORMAT COLOR 7.
WRITE: (11) '| Sales Doc' ,
13(16) '| Sales Doc Item',
30(11) '| Sales Org',
42(14) '| Dist Channel',
57(10) '| Division',
68(16) '| Sales Doc Type',
85(18) '| Material',
104(40) '| Sales Order Item',
145(16) '| Sales Doc Date',
162(15) '| Quantity',
178(7) '| Plant',
186(10) '| Location',
197(17) '| Cust Pur Ord No',
215(19) '| Cust Pur Ord type',
235(15) '| Sold to Party',
251(10) '| Customer',
262(11) '| Net Price',
274 '| Net value in Cust Currency |'.
*
ULINE.
*ENDFORM. " HEADER
**&----
*
**& Form FOOTER
**&----
*
*FORM footer .
*
*
*ENDFORM. " FOOTER
*
&----
*& Form GET_CONDITION_ITEM_DETAILS
&----
*FORM get_condition_item_details .
IF sy-lsind = 1 AND v_field = 'ITAB_FINAL-VBELN'.
WRITE:/ sy-uline(94).
FORMAT COLOR 7.
WRITE:/ '| No. of Doc condition',
23(20) '| Condition Item No.',
44(16) '| Condition Type',
61(13) '| Rate',
75 '| Condition Value |'.
WRITE:/ sy-uline(94).
*
PERFORM get_text.
*
FORMAT COLOR 4.
LOOP AT itab_konv.
WRITE:/ '|',
itab_konv-knumv, 23 '|',
24 itab_konv-kposn, 44 '|',
45 itab_konv-kschl HOTSPOT ON, 61 '|' ,
62 itab_konv-kbetr, 75 '|',
76 itab_konv-kwert, 94 '|'.
HIDE itab_konv-kschl.
ENDLOOP.
WRITE:/ sy-uline(94).
*
ENDIF.
*ENDFORM. " GET_CONDITION_ITEM_DETAILS
&----
*& Form GET_TEXT
&----
**FORM get_text .
SELECT kschl
vtext
FROM t685t
INTO TABLE itab_t685t
FOR ALL ENTRIES IN itab_konv
WHERE kschl = itab_konv-kschl
AND spras = sy-langu
AND kvewe = 'A'
AND kappl = 'V'.
SORT itab_konv BY kschl.
SORT itab_t685t BY kschl.
**
LOOP AT itab_konv.
READ TABLE itab_t685t WITH KEY kschl = itab_konv-kschl BINARY
**search
.
itab_konv-vtext = itab_t685t-vtext.
MODIFY itab_konv.
ENDLOOP.
**ENDFORM. " GET_TEXT
***&----
**
***& Form GET_SECOND_LIST
***&----
**
**FORM get_second_list .
CLEAR v_field.
GET CURSOR FIELD v_field.
**
IF sy-lsind = 2 AND v_field = 'ITAB_KONV-KSCHL'.
FORMAT COLOR 7.
WRITE:/ sy-uline(75).
WRITE:/ '| Condition Item No.',
21(20) '| Name',
42(13) '| Rate',
56 '| Condition Value |'.
WRITE:/ sy-uline(75).
LOOP AT itab_konv WHERE kschl = itab_konv-kschl.
FORMAT COLOR 4.
WRITE:/ '|', itab_konv-kschl, 21 '|',
22 itab_konv-vtext, 42 '|',
43 itab_konv-kbetr, 56 '|',
57 itab_konv-kwert, 75 '|'.
WRITE:/ sy-uline(75).
ENDLOOP.
ENDIF.
**ENDFORM. " GET_SECOND_LIST
&----
*& Form VALIDATE_VBELN
&----
FORM VALIDATE_VBELN .
IF NOT S_VBELN IS INITIAL.
SELECT SINGLE VBELN
FROM VBAK
INTO VBAK
WHERE VBELN IN S_VBELN.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'INVALID SALES DOCUMENT NO'.
ENDIF.
ENDIF.
ENDFORM. " VALIDATE_VBELN
&----
*& Form VALIDATE_COMBINATION
&----
FORM VALIDATE_COMBINATION .
SELECT SINGLE VBELN
FROM VBAK
INTO VBAK
WHERE VKORG = P_VKORG
AND VTWEG = P_VTWEG
AND SPART = P_SPART
AND AUDAT IN S_AUDAT
AND VBELN IN S_VBELN
AND KUNNR IN S_KUNNR.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH 'NO SALES DOCUMENT FOR GIVEN COMBINATION'.
ENDIF.
ENDFORM. " VALIDATE_COMBINATION
*&----
**& Form DISPLAY_ALV_REPORT
*&----
*FORM DISPLAY_ALV_REPORT .
PERFORM ALV_EVENT_LIST.
PERFORM ALV_PREPARE_CATALOG.
PERFORM ALV_GRID_DISPLAY.
*
*ENDFORM. " DISPLAY_ALV_REPORT
*&----
**& Form ALV_EVENT_LIST
*&----
*FORM ALV_EVENT_LIST .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = IT_EVENT
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
CLEAR WA_EVENT.
READ TABLE IT_EVENT WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO WA_EVENT.
*
IF SY-SUBRC = 0.
WA_EVENT-FORM = 'TOP_OF_PAGE'.
MODIFY IT_EVENT FROM WA_EVENT INDEX SY-TABIX.
ENDIF.
*
CLEAR WA_EVENT.
READ TABLE IT_EVENT WITH KEY NAME = SLIS_EV_USER_COMMAND
INTO WA_EVENT.
*
IF SY-SUBRC = 0.
WA_EVENT-FORM = 'USER_COMMAND'.
MODIFY IT_EVENT FROM WA_EVENT INDEX SY-TABIX.
ENDIF.
*
*ENDFORM. " ALV_EVENT_LIST
*&----
**& Form ALV_PREPARE_CATALOG
*&----
*FORM ALV_PREPARE_CATALOG .
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = GV_REPID
I_INTERNAL_TABNAME = 'ITAB_FINAL'
I_INCLNAME = GV_REPID
I_BYPASSING_BUFFER = 'X'
I_BUFFER_ACTIVE = ' '
CHANGING
CT_FIELDCAT = IT_FIELDCAT
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
LOOP AT IT_FIELDCAT INTO WA_FIELDCAT.
CASE WA_FIELDCAT-FIELDNAME.
WHEN 'VBELN'.
WA_FIELDCAT-HOTSPOT = 'X'.
MODIFY IT_FIELDCAT FROM WA_FIELDCAT INDEX SY-TABIX.
WHEN 'KUNNR'.
WA_FIELDCAT-KEY = 'X'.
MODIFY IT_FIELDCAT FROM WA_FIELDCAT INDEX SY-TABIX.
ENDCASE.
ENDLOOP.
*ENDFORM. " ALV_PREPARE_CATALOG
*&----
**& Form ALV_GRID_DISPLAY
*&----
*FORM ALV_GRID_DISPLAY .
*
PERFORM PREPARE_HEADING_TABLE.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_BYPASSING_BUFFER = 'X'
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = GV_REPID
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_BACKGROUND_ID = ' SALES ORDER '
IT_FIELDCAT = IT_FIELDCAT[]
I_DEFAULT = 'X'
I_SAVE = 'A'
IT_EVENTS = IT_EVENT[]
TABLES
T_OUTTAB = ITAB_FINAL[]
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
*ENDFORM. " ALV_GRID_DISPLAY
*
*&----
**& Form TOP_OF_PAGE
*&----
*FORM TOP_OF_PAGE.
*
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IT_HEADING.
REFRESH IT_HEADING.
CLEAR IT_HEADING.
*ENDFORM. "TOP_OF_PAGE
*
*&----
**& Form user_command
*&----
text
*----
-->R_UCOMM text
-->RS_SELFIELD text
*----
*FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
RS_SELFIELD TYPE SLIS_SELFIELD.
*
DATA: LV_LEVEL TYPE I,
LV_INDEX TYPE SY-TABIX,
LV_KSCHL TYPE KONV-KSCHL,
LV_KPOSN TYPE KONV-KPOSN.
*
CASE RS_SELFIELD-SEL_TAB_FIELD.
WHEN 'ITAB_FINAL-VBELN'.
*
CASE R_UCOMM.
WHEN '&IC1'.
*
READ TABLE ITAB_FINAL INDEX RS_SELFIELD-TABINDEX.
SELECT SINGLE KNUMV
FROM VBAK
INTO V_KNUMV
WHERE VBELN = ITAB_FINAL-VBELN.
IF SY-SUBRC <> 0.
ENDIF.
*
SELECT KNUMV
KPOSN
KSCHL
KBETR
KWERT
FROM KONV
INTO TABLE ITAB_KONV_1
WHERE KNUMV = V_KNUMV.
*
IF SY-SUBRC = 0.
SELECT KSCHL
VTEXT
FROM T685T
INTO TABLE ITAB_T685T
FOR ALL ENTRIES IN ITAB_KONV_1
WHERE SPRAS = SY-LANGU
AND KVEWE = 'A'
AND KAPPL = 'V'
AND KSCHL = ITAB_KONV_1-KSCHL.
*
SORT ITAB_KONV_1 BY KSCHL.
SORT ITAB_T685T BY KSCHL.
*
LOOP AT ITAB_KONV_1.
LV_INDEX = SY-TABIX.
READ TABLE ITAB_T685T WITH KEY KSCHL = ITAB_KONV_1-KSCHL
BINARY SEARCH.
ITAB_KONV_1-VTEXT = ITAB_T685T-VTEXT.
MODIFY ITAB_KONV_1 INDEX LV_INDEX.
ENDLOOP.
*
ENDIF.
*
ENDCASE.
*
ITAB_KONV[] = ITAB_KONV_1[].
*
LV_LEVEL = 1.
PERFORM DISPLAY_LIST USING LV_LEVEL.
*
WHEN 'ITAB_KONV-KSCHL'.
ITAB_KONV[] = ITAB_KONV_1[].
READ TABLE ITAB_KONV INDEX RS_SELFIELD-TABINDEX.
LV_KPOSN = ITAB_KONV-KPOSN.
LV_KSCHL = ITAB_KONV-KSCHL.
DELETE ITAB_KONV WHERE ( KPOSN NE LV_KPOSN ).
DELETE ITAB_KONV WHERE ( KSCHL NE LV_KSCHL ).
LV_LEVEL = 2.
PERFORM DISPLAY_LIST USING LV_LEVEL.
ENDCASE.
*
*ENDFORM. "user_command
*&----
**& Form display_list
*&----
*FORM DISPLAY_LIST USING P_LV_LEVEL.
REFRESH IT_FIELDCAT_1.
CLEAR IT_FIELDCAT_1.
PERFORM PREPARE_CATALOG.
*
CASE P_LV_LEVEL.
WHEN 1.
CLEAR WA_FIELDCAT.
LOOP AT IT_FIELDCAT_1 INTO WA_FIELDCAT .
CASE WA_FIELDCAT-FIELDNAME.
WHEN 'KSCHL'.
WA_FIELDCAT-HOTSPOT = 'X'.
MODIFY IT_FIELDCAT_1 FROM WA_FIELDCAT INDEX SY-TABIX.
*
WHEN 'VTEXT' .
WA_FIELDCAT-NO_OUT = 'X'.
MODIFY IT_FIELDCAT_1 FROM WA_FIELDCAT INDEX SY-TABIX.
ENDCASE.
ENDLOOP.
*
WHEN 2.
CLEAR WA_FIELDCAT.
LOOP AT IT_FIELDCAT_1 INTO WA_FIELDCAT .
CASE WA_FIELDCAT-FIELDNAME.
WHEN 'KNUMV' OR 'KSCHL'.
WA_FIELDCAT-NO_OUT = 'X'.
MODIFY IT_FIELDCAT_1 FROM WA_FIELDCAT INDEX SY-TABIX.
ENDCASE.
ENDLOOP.
ENDCASE.
*
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = 'X'
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = GV_REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT =
IT_FIELDCAT = IT_FIELDCAT_1[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = 'A'
IS_VARIANT =
IT_EVENTS = IT_EVENT[]
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITAB_KONV[]
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
*ENDFORM. " display_list
*&----
**& Form PREPARE_CATALOG
*&----
*FORM PREPARE_CATALOG .
*
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = GV_REPID
I_INTERNAL_TABNAME = 'ITAB_KONV'
I_STRUCTURE_NAME =
I_CLIENT_NEVER_DISPLAY = 'X'
I_INCLNAME = GV_REPID
I_BYPASSING_BUFFER = 'X'
I_BUFFER_ACTIVE = ' '
CHANGING
CT_FIELDCAT = IT_FIELDCAT_1
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
*ENDFORM. " PREPARE_CATALOG
*&----
**& Form PREPARE_HEADING_TABLE
*&----
text
*----
*FORM PREPARE_HEADING_TABLE .
WA_LINE-TYP = 'H'.
WA_LINE-INFO = 'Intelligroup Asia Pvt Ltd.'.
APPEND WA_LINE TO IT_HEADING.
*ENDFORM. " PREPARE_HEADING_TABLE
pls reward if helpful
regards,
rekha
04-12-2008 9:36 AM
SD REPORTS
Reports: Reports consist of data, which is expected to be reveiwed or checked the transaction taken in said period. Reports are useful for analysis of decision taking for future activities.
Some of the standard reports for SD & its configuration guide is as under:
Standard SAP SD Reports:=
Statistic Group:
Purpose To capture data for Standard Reports, we require to activate Statistic Group as under:
--> Item category (Configuration)
--> Sales document type (Configuration)
--> Customer (Maintain in Master data)
--> Material (Maintain in Master data)
When you generate statistics in the logistics information system, the system uses the combination of specified statistics groups to determine the appropriate update sequence. The update sequence in turn determines for exactly which fields the statistics are generated.
Configuration:
IMG --> Logistics Information System (LIS) --> Logistics Data Warehouse --> Updating --> Updating Control --> Settings: Sales --> Statistics Groups -->
1. Maintain Statistics Groups for Customers
2. Maintain Statistics Groups for Material
3. Maintain Statistics Groups for Sales Documents
4. Assign Statistics Groups for Each Sales Document Type
5. Assign Statistics Groups for each Sales Document Item Type.....
All Standard Reports which are available are as under:
SAP Easy Access: Information Systems -> Logistics -> Sales and distribution ->
1. Customer -> Incoming orders / Returns / Sales / Credit memos / Sales activities / Customer master / Conditions / Credit Master Sheet
2. Material -> Incoming orders / Returns / Sales / Credit memos / Material master / ...
3. Sales organization -> Sales organization / Sales office / Sales employee
4. Shipping point -> Deliveries / Returns
5. SD documents -> Orders / Deliveries / Billing documents ...
& so on.
Some of the Standard reports in SD are:
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
Shipment List Planning - VT11
List of Incomplete Shipments -Try VT04/VT11/VT32
Delivery without Shipments -Use VL06O
Regards
Kiran