Customer wise Total order qnty,dispatched qnty & qnty for despatch

Hi all,
How to check customer wise,for individual material, Total sales order quatity,dispatched qnty & qnty available for dispatch in a single report,
As tryed in MB52, it will show against S.O wise qnty availble for disptach, & VA05 will show order qnty with partial delivery(but not qnty).
Can we get the above in single report?

Hello Pawar,
There is no standard reports available as far as i know to check customer wise,for individual material, Total sales order quatity,dispatched qnty & qnty available for dispatch in a single report.
But in the T-code "MC18", you can do the confirugation for the field catalog.
Steps for setting up a Field Catalog -
1. Specify a name and a description for the field catalog you want to create in the field Field catalog.
2. Assign the field catalog to an application.
3. Define the catalog category.
4. Press ENTER.
You branch to the maintenance screen of the individual fields of the catalogs.
5. Depending on the catalog category you have chosen, select Edit -> Characteristics or Key figures or Date.
Two dialog boxes are displayed for selecting the fields.One dialog box lists the fields you have already selected. Choose Selection list to select further fields.If you have not yet selected any fields, the second dialog box is displayed at the same time.The second dialog box consists of two lists. The list on the right contains all source tables from which you can select fields for the field catalogs. In this case, only the source tables valid for the selected application are displayed.
6. If you want to display the fields of a certain source table, you can select this by double-clicking on it.
The list on the left shows the fields of the selected source table.
7. If you want to copy a field from the list into your field catalog, position the cursor on the corresponding field name and choose Copy.
The selected field is marked and copied into the list of the already selected fields.
Note
When you select the source tables and fields, the respective descriptions are displayed.
You can use the Switch display function to display the technical names (table and field names from the Data Dictionary).
8. Press Copy + close to branch to the list of the selected fields.
You can now also edit this list, i.e. you can change the sequence in which the fields appear, delete fields from the list or add new fields from the source tables.
9. The sequence of the selected characteristics can be changed as follows:
a) Select the characteristic, or a block of characteristics that is to be moved. The selection can be made using the icon Select/Deselect or Select block, or with a double click. The icon move is displayed.
b) Position your cursor on a different characteristic and choose the icon Move.
The characteristic or block of characteristics you initially selected will now be inserted above the second selected characteristic.
10. To copy the selected fields to your field catalog, choose Copy.
11. Save the field catalog.
12.Then Define the updated rules.
Regards,
SARTHAK.

Similar Messages

  • Total net order value Customer wise

    Dear All,
    I want to extract total Net sales order value customer wise for developing a report. I need to know SAP table details to get Total sales order values customer wise.
    Standard report does not match my requirment.
    I need to extract details from VBAP, customer wise. Please advise me to build a logic.
    Thanks,
    sajeewa.

    You can get the Net value from VBAP-NETWR by line item & the sold to is on VBAK-KUNNR, then make a join on VBAK-VBELN & VBAP-VBELN, then group it by KUNNR to display totals by Customer.

  • Total orders in three weeks for a customer that was new three weeks ago.

    I need help figuring out the MDX to use to calculate this measure: Total orders in three weeks for customers that were new three weeks ago.   I seem to be having a brain freeze or over thinking this as usual. 
    My records have a customer, a date, a flag=1 if they are new that order.  So I have a customer dimension a date dimension and four measures: Unique_customer, date, New_customer(the Flag), Orders. 
    So the fact table would look something like this:
    Date        Cust_Key       New_Flag      Order     
    1/5/10      801                                     1           
    1/5/10      802                  1                  1
    1/5/10      803                                     1
    1/6/10       801                                    
    1
    1/6/10      804                   1                  1
    1/6/10       803                                     
    1
    1/6/10       802                                      1
    1/7/10       801                                       1
    1/7/10        802                                     
    1
    1/7/10       804                                       
    1
    And for simplicity, using days instead of weeks -
    Customer 802 has a new flag 3 days ago and on report date 1/7/10 and has three orders, one per day. So my new measure should show 3
    Customer 804 wouldn't show up until report date 1/8/10 and Customer 802 would drop off.
    So I need to know how many times, to the current report week, did a customer who was new in LAG(3) place orders. 
    Diane Blackwood

    Thing will be easy if you have New_customer_Flag in customer dimension. The New_customer_Flag
    should be 1 for all those customers who were new three weeks back.
    Assuming that the measure you have is Count_Of_Order, MDX would be
    Select [Measures].[Count_of_order] on Columns,
    [Customer_Dim].[Customer].Members on Rows
    From 
    (Select ([Date_Dim].[Week].&[201001].Lag(3): [Date_Dim].[Week].&[201001])
    on Columns
    From [OrderCube])
    Where ([Customer_Dim].[New_customer_Flag].&[1]);
    Saurabh Kamath

  • Operation wise total required hours for planned order in given date range

    Hello Experts,
    My client wants the report to check the capacity utilization of the work centers for the all planned order in particular date range.
    Is their any standard report which gives the work center wise operation wise total required hours? or which table should I use to make the customize report so that I will get total required capacity & available capacity.
    Thanks in advance for use valuable suggestions.
    Sagar

    Hi Mario,
    Thanks for your reply,
    In CM01 or CM05, we are getting requirement on weekly basis.How to get that report on daily basis? I want to give the input as a date range of the planned order.How to go for that?
    Edited by: SAGAR GOLIWAR 226 on Jul 3, 2011 8:16 AM

  • Ordering row wise totals in a column.

    Hi,
    I have a report in Pivot view having two columns namely Count and Category. I have to apply sort on these two columns-first on Count and then on Category.
    The Total Count is also calculated row wise. Now when I apply sort on count column, only the values in that column are being sorted and not according to row wise total count. But my requirement is to sort the total count row wise first and then by Category.I am unable to do so.
    Kindly provide me the solution to this problem.
    Thanks
    Ankita

    Use RunningSum() function.
    Regards,
    Rohit

  • Custom Report - Open Order

    Dear All,
    We are in a Process to Develop certain Z-Reports.
    One of the Z-Reports is Open Order Status, which includes following informations:
    Sales Office--Customer Code-Sales Order No.--Item No.Material Description-Booking Qty--Delivered QtyOpen QtySales Unit of MeasurementRate/ Unit--Total Open Value (Open Qty*Rate)
    Everything is fine, except Two columns, i.e.
    1. Delivered Qty
    2. Sales Unit of Measurement
    The Problem is:
    In Report, we are able to capture the Booking Qty (in terms of Sales Unit).
    For example: If, in Sales Order Booking qty is 20 Months, Report shows 20.000 in Column: Booking Qty.
    But, 5  Months have been delivered, then, instead of 5.000 Report shows 150.000 as in Column: Delivered Qty. Apparently, Column: Open Qty, shows -130.000 as open Qty.
    Also, instead of picking Sales Unit of Measurement as Month, System is showing DAY/ TAG in Column: Sales unit of measurement.
    My second Query is:
    Is there any way to get information from Structure, in to Program? As, I referred few Standard Program (related to Sales UoM and Delivered Qty). In Standard Program, value is getting referred to Structure (say, VBMTV, for example).
    Best Regards,
    Amit

    Hi Amit,
    I guess, you have maintained/Created UoM in CUNI.
    Sales Office(1)--Customer Code(2)-Sales Order No(3).--Item No(4).Material Description(5)-Booking Qty(6)--Delivered Qty(7)Open Qty(8)Sales Unit of Measurement(9)Rate/ Unit(10)--Total Open Value (Open Qty*Rate)(11)
    8 = 6-7
    11= 8*10 ( as you already said)
    UoM_sales, VBAP_VRKME / VBEP_WMENG ( i think it will be fine, if we take Sch.Line order qtty, rather than Item level order qtty/Booking qtty, Delivery qtty LIPSD-G_LFIMG or you can take the same from document flow table too)
    Hope you have done the same as above. or it would be helpful,how you are deriving/extracing the desired values from which tables
    How you are calculating Open Qtty?
    not sure about your second query. Trying to give some input in your first query.

  • Accounts Receivable Report: Customer Wise Ageing Analysis report -FI module

    Hi Gurus,
                 Can anyone help me in providing standard report(source code) or already done sample report(source code) for Accounts Receivable Report: Customer Wise Ageing AnalysisThis is in FI Module. Though it is FI Module we need to fetch details related to Sales Module, and the days should be <0     30     60     90     120     180     365     >365     
    It is urgent I need to deliver this report by this week end.
    Please help me . Waiting for your reply.
    Points Rewarded for help rendered and I would personally send a good gift if you can help me
    Yours Truly,
    Rajiv Christopher.
    Edited by: Rajiv Christopher on Apr 2, 2008 11:33 AM

    Hi,
    i am attaching aging report.
    see if this is useful to you.
    REPORT ZFUS0102 MESSAGE-ID OA
                    LINE-SIZE 270.
    Title:      GR/IR AGING REPORT
    Date:       January 2001
    TABLES: DISVARIANT, EKPO.
    TYPE-POOLS: SLIS.
    Tables
    TABLES:
      BSIS,
      EKKO.
    working table
    DATA:  BEGIN OF RTAB OCCURS 0,
             HKONT   LIKE BSIS-HKONT,
             ZUONR   LIKE BSIS-ZUONR,
             BUDAT   LIKE BSIS-BUDAT,
             SHKZG   LIKE BSIS-SHKZG,
             DMBTR   LIKE BSIS-DMBTR,
             PRCTR   LIKE BSIS-PRCTR,
          END OF RTAB.
    DATA: BEGIN OF WTAB OCCURS 0,
             ZUONR(2) TYPE N,
             PRCTR   LIKE BSIS-PRCTR,
             DAYS(4)  TYPE P,
             DMBTR   LIKE BSIS-DMBTR,
          END OF WTAB.
    DATA: BEGIN OF PTAB OCCURS 0,
             ZUONR(2),
             PRCTR   LIKE BSIS-PRCTR,
             AMT30   LIKE BSIS-WRBTR,
             AMT60   LIKE BSIS-WRBTR,
             AMTPL   LIKE BSIS-WRBTR,
             TOTAL   LIKE BSIS-WRBTR,
          END OF PTAB.
    PARAMETERS:  COMPANY LIKE BSIS-BUKRS OBLIGATORY,
                 ACCT    LIKE BSIS-HKONT OBLIGATORY,
                 DATE    LIKE SY-DATUM OBLIGATORY.
    SELECT-OPTIONS: S_EKORG FOR EKKO-EKORG.
    PARAMETERS: P_VARI LIKE DISVARIANT-REPORT.
    DATA: WS-AMT30 LIKE BSIS-WRBTR.
    DATA: WS-AMT60 LIKE BSIS-WRBTR.
    DATA: WS-AMTPL LIKE BSIS-WRBTR.
    DATA: TITLE(21) VALUE 'GR/IR Aging Report'.
    DATA: LIN TYPE I.
    DATA: GX_VARIANT LIKE DISVARIANT,
          G_VARIANT LIKE DISVARIANT.
    DATA:  LAYOUT   TYPE SLIS_LAYOUT_ALV,
           L_F      TYPE SLIS_T_FIELDCAT_ALV   WITH HEADER LINE,
           GROUP    TYPE SLIS_T_SP_GROUP_ALV   WITH HEADER LINE,
           COLOR    TYPE SLIS_T_SPECIALCOL_ALV WITH HEADER LINE.
    DATA:  LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
           LS_LINE TYPE SLIS_LISTHEADER,
           T_EVENTS   TYPE SLIS_T_EVENT.
    CONSTANTS: FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.
    INITIALIZATION.
      PERFORM EVENTTAB_AUFBAUEN USING T_EVENTS[].
      PERFORM VARIANT_INIT.
    Get default variant
      GX_VARIANT = G_VARIANT.
      CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
           EXPORTING
                I_SAVE     = 'A'
           CHANGING
                CS_VARIANT = GX_VARIANT
           EXCEPTIONS
                NOT_FOUND  = 2.
      IF SY-SUBRC = 0.
        P_VARI = GX_VARIANT-VARIANT.
      ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
      PERFORM VARIANT_INPUTHELP_F14.
    START-OF-SELECTION.
      LS_LINE-TYP  = 'S'.
      WRITE SY-DATUM TO LS_LINE-INFO DD/MM/YY.
      WRITE SY-UZEIT TO LS_LINE-INFO+10.
      WRITE SY-UNAME TO LS_LINE-INFO+20.
      WRITE TITLE    TO LS_LINE-INFO+30.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
      PERFORM FIELDS.
      IF NOT P_VARI IS INITIAL.
        PERFORM PAI_OF_SELECTION_SCREEN.
      ELSE.
        CALL FUNCTION 'REUSE_ALV_VARIANT_SELECT'
             EXPORTING
                  I_DIALOG            = ' '
                  I_USER_SPECIFIC     = 'A'
                  I_DEFAULT           = ' '
            I_TABNAME_HEADER    =
            I_TABNAME_ITEM      =
                  IT_DEFAULT_FIELDCAT = L_F[]
                  I_LAYOUT            = LAYOUT
             IMPORTING
            E_EXIT              =
                  ET_FIELDCAT         = L_F[]
            ET_SORT             =
            ET_FILTER           =
             CHANGING
                  CS_VARIANT          = DISVARIANT
             EXCEPTIONS
                  WRONG_INPUT         = 1
                  FC_NOT_COMPLETE     = 2
                  NOT_FOUND           = 3
                  PROGRAM_ERROR       = 4
                  OTHERS              = 5.
      ENDIF.
    Decide which tables to access.
      PERFORM MAIN_SELECT.
      MOVE TITLE  TO LAYOUT-WINDOW_TITLEBAR.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
           EXPORTING
                I_CALLBACK_PROGRAM      = 'ZFUS0102'
                I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
                IS_LAYOUT               = LAYOUT
                IT_FIELDCAT             = L_F[]
                IT_SPECIAL_GROUPS       = GROUP[]
                I_SAVE                  = 'A'
                IS_VARIANT              = G_VARIANT
                IT_EVENTS               = T_EVENTS
           TABLES
                T_OUTTAB                = PTAB
           EXCEPTIONS
                PROGRAM_ERROR           = 1
                OTHERS                  = 2.
          FORM FIELDS                                                   *
    FORM FIELDS.
      L_F-FIELDNAME     = 'ZUONR'.
      L_F-OUTPUTLEN     = 6.
      L_F-SELTEXT_L     = 'SERIES'.
      L_F-REPTEXT_DDIC  = 'SERIES'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      APPEND L_F. CLEAR L_F.
      L_F-FIELDNAME     = 'PRCTR'.
      L_F-OUTPUTLEN     = 10.
      L_F-SELTEXT_L     = 'PROFIT CTR.'.
      L_F-REPTEXT_DDIC  = 'PROFIT CTR.'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      APPEND L_F. CLEAR L_F.
      L_F-FIELDNAME     = 'AMT30'.
      L_F-SELTEXT_L     = '30 DAYS'.
      L_F-REPTEXT_DDIC  = '30 DAYS'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      L_F-REF_TABNAME   = 'BSIS'.
      L_F-REF_FIELDNAME = 'WRBTR'.
      L_F-DO_SUM        = 'X'.
      APPEND L_F. CLEAR L_F.
      L_F-FIELDNAME     = 'AMT60'.
      L_F-SELTEXT_L     = '60 DAYS'.
      L_F-REPTEXT_DDIC  = '60 DAYS'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      L_F-REF_TABNAME   = 'BSIS'.
      L_F-REF_FIELDNAME = 'WRBTR'.
      L_F-DO_SUM        = 'X'.
      APPEND L_F. CLEAR L_F.
      L_F-FIELDNAME     = 'AMTPL'.
      L_F-SELTEXT_L     = '60+ DAYS'.
      L_F-REPTEXT_DDIC  = '60+ DAYS'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      L_F-REF_TABNAME   = 'BSIS'.
      L_F-REF_FIELDNAME = 'WRBTR'.
      L_F-DO_SUM        = 'X'.
      APPEND L_F. CLEAR L_F.
      L_F-FIELDNAME     = 'TOTAL'.
      L_F-SELTEXT_L     = 'TOTAL'.
      L_F-REPTEXT_DDIC  = 'TOTAL'.
      L_F-REF_TABNAME   = 'PTAB'.
      L_F-SP_GROUP      = 'A'.
      L_F-REF_TABNAME   = 'BSIS'.
      L_F-REF_FIELDNAME = 'WRBTR'.
      L_F-DO_SUM        = 'X'.
      APPEND L_F. CLEAR L_F.
    ENDFORM.
          FORM MAIN_SELECT                                              *
    FORM MAIN_SELECT.
      SELECT HKONT ZUONR BUDAT SHKZG DMBTR PRCTR
           INTO TABLE RTAB
           FROM BSIS
           WHERE BUKRS = COMPANY
           AND   HKONT = ACCT.
      IF SY-SUBRC = 0.
        SORT RTAB.
        PERFORM PROCESS_RTAB.
        PERFORM PROCESS_WTAB.
      ENDIF.
    ENDFORM.                    " MAIN SELECT
          FORM VARIANT_INPUTHELP_F14                                    *
    FORM VARIANT_INPUTHELP_F14.
      DATA:  G_EXIT(1) TYPE C.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
           EXPORTING
                IS_VARIANT          = G_VARIANT
                I_SAVE              = 'A'  " g_save
              it_default_fieldcat =
           IMPORTING
                E_EXIT              = G_EXIT
                ES_VARIANT          = GX_VARIANT
           EXCEPTIONS
                NOT_FOUND = 2.
      IF SY-SUBRC = 2.
        MESSAGE ID SY-MSGID TYPE 'S'      NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ELSE.
        IF G_EXIT = SPACE.
          P_VARI = GX_VARIANT-VARIANT.
        ENDIF.
      ENDIF.
    ENDFORM.
          FORM USER_COMMAND                                             *
    -->  UCOMM                                                         *
    -->  SELFIELD                                                      *
    FORM USER_COMMAND USING UCOMM LIKE SY-UCOMM SELFIELD TYPE
    SLIS_SELFIELD.
      IF UCOMM EQ '&IC1'.
        IF SELFIELD-TABINDEX <= 0.
          MESSAGE S108.
          EXIT.
        ENDIF.
      IF SELFIELD-SEL_TAB_FIELD CS 'LIFNR'.
        SET PARAMETER ID 'LIF' FIELD SELFIELD-VALUE.
        CALL TRANSACTION 'XK02'.
      ELSE.
        IF SELFIELD-SEL_TAB_FIELD CS 'VEND'.
          SET PARAMETER ID 'LIF' FIELD SELFIELD-VALUE.
          CALL TRANSACTION 'FBL1'.
        ENDIF.
      ENDIF.
        CLEAR SY-UCOMM. CLEAR UCOMM.
      ENDIF.
    ENDFORM.
          FORM TOP_OF_PAGE                                              *
    FORM TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                IT_LIST_COMMENTARY = LT_TOP_OF_PAGE.
    ENDFORM.
          FORM EVENTTAB_AUFBAUEN                                        *
    -->  P_T_EVENTS                                                    *
    FORM EVENTTAB_AUFBAUEN USING P_T_EVENTS TYPE SLIS_T_EVENT.
      DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                I_LIST_TYPE = 0
           IMPORTING
                ET_EVENTS   = P_T_EVENTS.
      READ TABLE P_T_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
                                                     INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_T_EVENTS.
      ENDIF.
    ENDFORM.                               " EVENTTAB_AUFBAUEN
          FORM PAI_OF_SELECTION_SCREEN                                  *
    FORM PAI_OF_SELECTION_SCREEN.
      IF NOT P_VARI IS INITIAL.
        MOVE G_VARIANT TO GX_VARIANT.
        MOVE P_VARI TO GX_VARIANT-VARIANT.
        CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
             EXPORTING
                  I_SAVE     = 'A'  " g_save
             CHANGING
                  CS_VARIANT = GX_VARIANT.
        G_VARIANT = GX_VARIANT.
      ELSE.
        PERFORM VARIANT_INIT.
      ENDIF.
    ENDFORM.                               " PAI_OF_SELECTION_SCREEN
          FORM VARIANT_INIT                                             *
    FORM VARIANT_INIT.
      CLEAR G_VARIANT.
      G_VARIANT-REPORT = 'ZFUS0102'.
    ENDFORM.                               " VARIANT_INIT
    *&      Form  PROCESS_RTAB
          text
    -->  p1        text
    <--  p2        text
    FORM PROCESS_RTAB.
      DATA TLNS TYPE I.
      DESCRIBE TABLE S_EKORG LINES TLNS.
      LOOP AT RTAB.
        IF TLNS GT 0.
          SELECT SINGLE EKORG FROM EKKO INTO EKKO-EKORG
            WHERE EBELN = RTAB-ZUONR(10).
          CHECK EKKO-EKORG IN S_EKORG.
        ENDIF.
        IF NOT RTAB-BUDAT > DATE.
          MOVE RTAB-ZUONR(2) TO WTAB-ZUONR.
          COMPUTE WTAB-DAYS = DATE - RTAB-BUDAT.
          IF RTAB-SHKZG = 'H'.
            WTAB-DMBTR = RTAB-DMBTR * -1.
          ELSE.
            WTAB-DMBTR = RTAB-DMBTR * 1.
          ENDIF.
          MOVE RTAB-PRCTR TO WTAB-PRCTR.
          APPEND WTAB.
        ENDIF.
      ENDLOOP.
      FREE RTAB.
    ENDFORM.                    " PROCESS_RTAB
    *&      Form  PROCESS_WTAB
          text
    -->  p1        text
    <--  p2        text
    FORM PROCESS_WTAB.
      SORT WTAB BY ZUONR PRCTR DAYS.
      LOOP AT WTAB.
        PTAB-ZUONR = WTAB-ZUONR.
        PTAB-PRCTR = WTAB-PRCTR.
        AT END OF DAYS.
          SUM.
          IF WTAB-DAYS > 60.
            WS-AMTPL = WS-AMTPL + WTAB-DMBTR.
          ELSE.
            IF WTAB-DAYS > 30.
              WS-AMT60 = WS-AMT60 + WTAB-DMBTR.
            ELSE.
              WS-AMT30 = WS-AMT30 + WTAB-DMBTR.
            ENDIF.
          ENDIF.
        ENDAT.
        AT END OF PRCTR.
          PTAB-AMTPL = WS-AMTPL.
          PTAB-AMT30 = WS-AMT30.
          PTAB-AMT60 = WS-AMT60.
          COMPUTE PTAB-TOTAL = PTAB-AMTPL + PTAB-AMT30 + PTAB-AMT60.
          APPEND PTAB.
          WS-AMTPL = 0.
          WS-AMT30 = 0.
          WS-AMT60 = 0.
        ENDAT.
      ENDLOOP.
      SORT PTAB BY ZUONR PRCTR.
    ENDFORM.                    " PROCESS_WTAB
    regards,
    Sindhu

  • Customer wise Item Wise Price List History Report

    Hello Experts,
    My Customer Wants the Customer wise Item Wise Price List History Report
    Dixit Patel

    Dear Dixit,
    SELECT CardCode,ItemCode,T0.DocDate,DocNum,Price FROM RDR1 T1
    INNER JOIN ORDR T0 ON T1.DocEntry=T0.DocEntry
    ORDER BY CardCode,ItemCode,T0.DocDate DESC
    Is this will be enough?
    Best Regards,
    Hendry Wijaya

  • Employee and customer wise cost

      Hello Experts
    Below are my business scenario
    1.I want capture the employee wise cost so What  could be best way to capture  the employee wise expense in the below method
        Employee as cost center
        Employee as Vendor
        Employee as internal order
       IF anybody provide me advantages and disadvantage it will be  better understanding
    2. Another one of my requirement in my  business scenario  customer group wise  COPA report with  net profit  level
    Here GP level I will get it from my billing document(Revenue – COGS),  customer wise expenses I am going to capture through the cost center 
    finally  I want  to settle this cost to customer group (COPA)
    Is it Possible  ?
    Thanks & Regards
    Sri.

    Hi VS
    1. For employee wise expenses, you can refer the document I contributed below
    http://scn.sap.com/docs/DOC-50141
    The document explains how you can use Statistical IOs for this.. You can also name your Statistical Internal Orders as per the Employee Number, but I used a slightly different approach to be more scaleable
    2. For customer wise expenses, while you book the expenses in F-02 or FB60, you need to click on the "Prof Segment" and enter the Customer / Product details in it
    That ways you can capture the expenses at Customer level in COPA
    Br. Ajay M

  • Customer wise classification of raw and packing stock

    Hi all MM-forum members,
    I have a special requirement from Management in my company(Consumer Products-Confectionery and Biscuits) which is implementing SAP.They want to see a report for customer wise classified stock of Raw materials this is possible through Make to order configuration in PP. I require reference of customer along with stock of raw materials I want to find out if this requirement can be catered through standard reporting in SAP-MM or do we need to design customized report through ABAB.

    Hi
    If you buy material specific to customer (individual requirement not collective) in MTO scenarion then the stock you can see sales order wise in MBBS. Incase if you are not very happy with the report MBBS, then use function module "MD_STOCK_REQUIREMENTS_LIST_API" to define your own report.
    Regards
    Antony

  • Is there a Report showing PO total order quantity and value ??

    Hi
    Can we get the report in which the Purchase order and its total order quantity and total order value is displayed.
    I mean, if we execute ME2N, display list should NOT show the whole list of items listed. Instead, I want the total order value and total order quantity of the PO document.
    Are there any transaction codes available..........
    Thanks
    Maruthi

    You have create a report layout for your specific requirement. As there are different material in a PO so to get the Quantity at header level is not possible with standard variant.
    Just only workaround is use any of the reports ME2L, ME2M and ME80, ME80FN (prefer ME2N with ALV) then sort the report Purchase Document wise and then select the subtotal at Purchasing document in layout sort order option. Also select summation for Quantity and net price fields, so now you have all the subtotal at Purchase Document level.
    After that go to Settings > Define Totals Drill Down and select Purchasing document. So you have report in your required format.
    Hope this will  help you...
    Enjoyyyyyyyyyy
    Akshit

  • Item wise total quantity prob

    hi experts,
    i made an alv,which shows o/p like this:
    truckno(likp-traid)| dono(likpvbeln)|party nm(kna1-name1)|skucode(lips-arktx)| qty(lips-lfimg)
    wb03-7809         |  80000345       | msaha                      |  frooti_pet            |   40,000  cs
    wb03-7809         |  80000346      | msaha                      |  frooti_ tetra          |   20,000  cs
    wb03-7809         |  80000345       | msaha                      |  appy1 ltr             |   60,000  cs,
    but client requirement is that,
    they need item wise total ie say, frooti_pet       is assigned against dono(80000345), bt this item can also be assigned against another do say(80000389) with sum qty in it.
    they want total sum of a particular skucode(item) means  frooti_pet(item wise)  , that may be assigned in diff dono  , but duff dono may be assigned in same truck
    o/p will show,
    like
    truck no| skucode| total(partycular item wise).
    how to do it?
    thnx in advance.

    Declare the fields in the internal table in the below order.
    dono(likpvbeln)|
    skucode(lips-arktx)|
    truckno(likp-traid)|
    party nm(kna1-name1)|
    qty(lips-lfimg)
    Above the loop sort the internal table as follows.
    Sort itab by dono skucode.
    Loop at itab.
    at end of skucode.
    sum.
    here move the Quantity  to another variable.
    endat.
    endloop.
    Edited by: Poorna Chandrasekhar on Jan 23, 2009 12:07 PM

  • Discount on Total Order Value

    Hi everybody ,
    We need the Discount to be calculated automatically on the Total Order Value.
    Its a promotion.
    Useful suggestions will be rewarded.
    Thanks
    Kartik

    Hi pls follow the procedure below, Hope it will help u out
    VOFM: ON PRICING
    This note is an explanation of function "Maintain: Requirements and Formulas", which is also known as "VOFM".
    By using descriptions and examples, this note explains how the VOFM function works in the R/3 Standard System, which objects are related to it and which restrictions exist.
    Chapter 2.7 explains possible causes of errors and solutions for problems with the VOFM function.
    To provide a good overview, this note is subdivided into the following sub areas:
    1. General information
    1.1 Definition of terms
    1.2 Application areas
    1.3 A frank word on the "source code responsibility"
    2. Technology
    2.1 Introduction
    2.2 Namespaces
    2.2.1 SSCR object registration
    2.3 Structure of a VOFM object
    2.3.1 Include file with ABAP form routine
    2.3.2 Table entries in TFRM and TFRMT
    2.4 Calling VOFM objects
    2.4.1 VOFM object carrier
    2.5 Activation, generation and RV80HGEN
    2.6 Transport
    2.7 FAQs: Possible causes of errors and problems
    Technical field names are displayed in angle brackets [].
    Note that this note only explains the mode of operation of the VOFM in an R/3 Standard Core System.
    For R/3 industry solutions or Add-Ons the VOFM function displays a different behavior in subareas, however, this is not dealt with in this note.
    Additional key words
    VOFM, SAPMV80H, TFRM, TFRMT, RV80HGEN, XPRA, formulas, requirements, data transport routine, copy routine, data transfer.
    Cause and prerequisites
    1. General information
    1.1 Definition of terms
    Depending on the business processes used it may be necessary to influence the standard behavior of R/3 applications. For that purpose the VOFM function provides a corresponding environment in order to be able to develop and manage customer-specific logic simply.
    The system stores the objects generated via the VOFM in the Customizing of the respective application area
    (Pricing, message determination and so on) and its programs call the objects correspondingly.
    Also SAP delivers certain functions in the form of VOFM objects.
    Consequently, the VOFM is an exit technology as explained in more detail in Note 381348.
    1.2 Application areas
    Typical VOFM objects are requirements, formulas and data transfer routines.
    These are used in processes of the purchase order, the delivery, billing, price determination, material determination, message determination, the free goods, the pricing and of others.
    In the entries of the R/3 core menu of Transaction VOFM you can find a precise overview of the supported application areas.
    1.3 A frank word on the "source code responsibility"
    As in user exits, in VOFM objects are many fields and tables available. Thus, the use of VOFM objects is very versatile and consequently also very critical under certain circumstances. For the use of "customer-specific" VOFM objects the statements in Note 381348 regarding the responsibility for customer enhancements (Maintenance responsibility, problems during the upgrade and so on) apply. Read this note carefully before you decide on the use of customer-specific VOFM objects.
    Errors and data inconsistencies that are caused by improper application or implementation of VOFM objects are not processed by the SAP Support but exclusively within the framework of the Consulting that has to be purchased separately.
    2. Technology
    2.1 Introduction
    A VOFM object is uniquely defined via characteristics "group indicator" [GRPZE] and "group number" [GRPNO].
    Here the group indicator, technically represented by a character field of length 4, is the logical connection to the calling environment.
    Examples:
    ABED copying requirement in the order
    ADAT data transfer in the order
    PBED requirements pricing
    CASC Data transfer for sales activities
    PBEK requirements account determination
    CHRG requirements batches
    REAK archiving for orders
    VFCL Multi-dimensional scales
    You can find all defined group indicators in the allowed values of the "GRPZE" domain in the ABAP Dictionary (Transaction SE11).
    The group number can have a value from 1 to 999.
    Exceptions are group indicators "PSTK" (= group key routine pricing) and "TDAT" (= data transfer for texts). For these the system can only assign group numbers from 1 to 99.
    2.2 Namespaces
    The VOFM has separate number ranges in order to distinguish VOFM objects delivered by SAP from customer-specific VOFM objects. These number ranges are often also called "VOFM namespaces".
    However, note that this is not a "real namespace" that is protected by corresponding entries in system table "TRESC" (= reserved names for Customizing tables and Customizing objects).
    Instead, only the VOFM logic itself does the definition and check of the number ranges.
    The following list displays the customer number ranges sorted according to group indicators:
    Indicator     Name     Number range customer
    FOFU     Subsequent functions     900 - 999
    PSTK     Group key routines     50 - 99
    TDAT     Data transfer routines f. texts     50 - 99
    all other group indicators           600 - 999
    In Note 356737 you can find more information on the available VOFM number ranges.
    2.2.1 SSCR object registration
    VOFM objects are subject to SSCR registration (= SAP Software Change Registration).
    The reason for that is the necessity that every VOFM object is physically assigned to that SAP development class, from whose programs a corresponding jump into the VOFM object later occurs.
    If you use the VOFM interface the system makes the assignment automatically. An assignment of customer-specific development classes is not possible.
    2.3 Structure of a VOFM object
    A VOFM object consists of the following parts:
    Include file with ABAP form routine
    TFRM table entry
    TFRMT table entry
    2.3.1 Include file with ABAP form routine
    In the ABAP form routine the desired function is programmed.
    Example pricing value formula number 001:
    Include name : FV64A001
    Form routine : FRM_KONDI_WERT_001
    Implementation: * * Profit margin considering rebate agreements
    form frm_kondi_wert_001.
    xkwert = komp-kzwi3 - komp-wavwr.
    endform.
    Dependending on the selected group indicator, the group number and the system type (SAP or customer system), the system assigns and generates the include name and form routine name automatically.
    For this reason, standard routines delivered by SAP generally have a different structure of the include name than customer-specific routines.
    Example:
    SAP standard value formula for the pricing
    => prefix FV64A + object number with 3 places from 'SAP namespace'
    => for example FV64A001
    Customer-specific value formula for the pricing
    => prefix RV64A + object number with 3 places from 'customer namespace'
    => for example RV64A905
    2.3.2 Table entries in TFRM and TFRMT
    The entries in tables TFRM and TFRMT belonging to a VOFM object are used for the status management and assignment. The system always analyzes them if the user calls Transaction VOFM or if a generation operation occurs (for details refer to section 2.5).
    The system generates exactly one TFRM table entry per VOFM OBjekt. In this TFRM entry the following information is stored:
    Group indicator     GRPZE
    Group number     GRPNO
    Routine 'active' indicator     AKTIV_TFRM
    Application     KAPPL
    Date of the last generation     GNDAT
    Time of the last generation     GNZEI
    Examples:
    GRPZE     GRPNE     AKTIV_TFRM     KAPPL     GNDAT     GNZEI
    PBED     001     X     V     06 13 2001     09 06 39
    TDAT     001     X           06 13 2001     09 06 39
    CHRG     003     X           06 13 2001     09 06 39
    The meaning of group indicators and group numbers has already been dealt with.
    The 'active indicator' controls whether a VOFM object is 'active' or 'inactive'. Active VOFM objects have characteristic value AKTIV_TFRM = 'X', inactive objects have characteristic value AKTIV_TFRM = initial.
    VOFM objects flagged as 'active' are 'known' to the calling program logic, that means they were included in the main program of the 'calling program' and can thus be addressed and
    processed during the runtime.
    You cannot delete VOFM objects that are still 'active'. In this case you have to reset the active indicator manually before.
    The content of the 'Application' field serves to filter the relevant VOFM objects in various display functions and Customizing functions.
    Example: Condition value formula 010 'Relevant Price'. This formula has characteristic value 'MS' for the 'Application' field (= External Services Management purchasing). Therefore the object is not open for selection in the input help during the maintenance of pricing procedure SD (Transaction V/08), because this is a Customizing transaction assigned to application 'V' (= Sales and Distribution).
    Storing an application key is optional.
    The generation date and the generation time record the time of the last registration of the VOFM object (the object carrier, refer to section 2.4.1).
    In addition to the respective TFRM entry a VOFM object can have 'n' entries in table TFRMT. The entries are used for the storage of language-dependent object descriptions, which are structured as follows:
    - Language key [SPRAS]
    - Group indicator [GRPZE]
    - Group number [GRPNO]
    - Description [BEZEI]
    Examples:
    SPRAS     GRPZE     GRPNO     BEZEI
    D     PBED     001     Regulierer abweich
    E     PBED     001     Different payer
    The system supplies the language key automatically with the logon language of the user during the creation of a new VOFM object.
    The length of the object description is limited to 20 characters.
    Important! A VOFM object is only consistent if both the Include file with ABAP form routine and a corresponding TFRM table entry exist. Entries in table TFRMT are optional.
    2.4 Calling VOFM objects
    As mentioned above, VOFM objects are called directly by the application logic of R/3 standard programs. Technically this is implemented by ABAP statement 'PERFORM ... IN PROGRAM'. With the aid of this statement you can specify both the name of the subroutine and the main program dynamically (during the runtime).
    Example: Call of a condition value formula from the pricing
    if xkomv-kofrm ne 0. <<< formula reference existing?
    xkwert = xkomv-kwert. <<< act. value in work variable
    frm_kondi_wert-nr = xkomv-kofrm. <<< set up object names
    perform (frm_kondi_wert) in program saplv61a if found. <<<CALL
    xkomv-kwert = xkwert. <<
    endif.
    In the example above the subroutine is determined by the contents of variable 'FRM_KONDI_WERT'; the main program, which is to be searched for the form routine, is SAPLV61A.
    If the called routine is not known in the main program, a program termination with the title 'PERFORM_NOT_FOUND' occurs.
    Therefore some users of the VOFM technology call ABAP statement 'PERFORM ... IN PROGRAM' together with the addition 'IF FOUND', which has the effect that a jump into the form routine is only executed if this in fact exists in the main program. This does indeed prevent a program termination, however, the result of the overall process may deviate from the
    result expected by the user, because in this case the system does not execute the source code implemented in the VOFM object.
    2.4.1 VOFM 'object carrier'
    Object carriers are required to make a VOFM object 'known' in the main program of the calling program (refer to section 2.4). The object carrier is integrated in the main program of the calling program as an independent include (for example SAPLV61A, SAPMV45A and so on).
    Example: Inclusion of object carriers for word processing in SD
    documents; Program 'SAPLV45T'
    System-defined Include-files. *
    INCLUDE LV45TTOP. "Global Data
    INCLUDE LV45TDEF.
    INCLUDE LV45TUXX. "Function Modules
    INCLUDE LV45TNNN. <<< 'carrier' copy requirements for texts
    INCLUDE LV45TENN. <<< 'carrier' copy routines for texts
    Every active VOFM object (for an explanation on the active indicator refer to section 2.3.2) must be registered in the 'carrier'.
    The system writes standard VOFM objects delivered by SAP directly into the 'carrier', VOFM objects from the number range reserved for customers (refer to section 2.2 'Namespaces') are sorted into a 'sub-include' included in the carrier.
    Exactly one carrier exists per group indicator. The names of all defined object carriers are hard-coded in program MV80HF0A, form routine 'AKTIVIEREN_TRAEGER_SETZEN'.
    Here the names of the sub-include for customer-specific VOFM objects belonging to the main carrier are also defined.
    Example: Carrier object 'FV63ANNN' for the registration of condition basis formulas in the pricing (Program SAPLV61A)
    FV63ANNN
    <<< main
    carrier-include
    |-INCLUDE RV63ANNN. "User-Routinen <<< sub-include customer objects
    | |- INCLUDE RV63A910. "Customer specific
    | |- INCLUDE RV63A911. "Customer specific
    | |- INCLUDE RV63A912. "Customer specific
    | |- ...
    |- INCLUDE FV63A001. "Volume
    |- INCLUDE FV63A002. "Net value
    |- INCLUDE FV63A003. "Net Price
    |- INCLUDE FV63A004. "Net Value Plus Tax
    |- INCLUDE FV63A005. "KZWI1
    |- ...
    Because the content of the VOFM object carriers is automatically created source code, you should avoid manual changes to them.
    SAP notes, which suggest manual changes to the object carriers, are therefore also incorrect. However, if you nevertheless receive such a note to solve a problem, contact the SAP
    Support with a reference to this note.
    2.5 Activation, generation and RV80HGEN
    The 'activation' is the inclusion of an VOFM object in an object carrier. A 'deactivation' results in the removal of the VOFM object from the object carrier.
    The overall process for the creation of a current object carrier is often called 'generation'.
    Generally the activation or generation fall into three types.
    - Individual activation
    - Collective activation
    - Generation of object carriers via report RV80HGEN
    The 'individual activation' causes the registration of an individual VOFM object in the corresponding object carrier. Which object carrier is relevant is determined with the aid of the group indicator and the group number. In addition to the entry of the VOFM object in the object carrier the system writes the date and time of the generation into table TFRM (refer also to section 2.3.2).
    You can start the individual activation only manually. It is always always executed when a user selects a line within the VOFM editing interfaces and afterwards selects activity
    'Activate' from the 'Edit' menu.
    The 'collective activation' causes the registration of all VOFM objects that belong to a certain group indicator. Analog to the individual activation the system determines the relevant object carrier automatically and writes date and time into table TFRM. The 'collective activation' is a process which you can start also only manually. For this purpose, choose activity
    'Activate all' from the 'Edit' menu.
    During the generation via report RV80HGEN the system sets up the object carriers of all defined group indicators again. However, the system includes only those VOFM objects that have set the 'active' indicator in the corresponding TFRM table entry. Nonactive VOFM objects are not included in object carriers during the generation via report RV80HGEN.
    Due to the quantity of the data to be processed,
    the generation via RV80HGEN can take between 0,5 and >5 minutes (depending on the system and the constellation).
    Because the RV80HGEN is defined as 'XPRA', it is executed automatically during a system upgrade.
    You can also use this XPRA feature for the transport of VOFM objects in order to implement an automatic update of the object carriers after the import of VOFM objects into the target system (section 2.6 provides more details on the transport).
    Both the collective activation and the activation via report RV80HGEN technically revert to the program components of the individual activation. For the separate control of the individual activation types form routine AKTIVIEREN_EINZELN (Include MV80HF0A) has a 'USING' parameter, which can have the following characteristic values:
    'E' Activate individually
    'A' Activate all (= collective activation)
    ' ' Deactivate individually
    During the generation via RV80HGEN the system executes a collective activation for every group indicator sequentially, that means a call of form routine
    AKTIVIEREN_EINZELN with characteristic value 'A'.
    2.6 Transport
    If you want to transfer VOFM objects from one system (= source) into another system (= target), this is generally made with an object transport.
    As of Release 4.0, the VOFM function has a connection to the SAP 'Change and Transport System' (CTS) in order to simplify the transfer process for the user.
    By the transport connection the system automatically adds newly created or changed VOFM objects to the object list of a transport request which was selected by the user before.
    All steps necessary for the execution of a VOFM transport are described in detail in Note 22808 'Transferring formulas'. Note that steps 1-4 are only needed
    if the VOFM maintenance environment providesno automatic connection to the transport system or if you want to combine a transport request manually. In any case you must execute step 5, regardless of how the transport request was created.
    In addition to Note 22808, Note 385067 contains an overview for releases >= 4.6C regarding which sorts of tasks and object entries are required in a
    transport request (depending on the activity carried out (create/change/activate/deactivate/delete)) in order to transport a VOFM object successfully.

  • Getting Total Order Cost for each order

    I have a fact table, order lines.
    There are two dimension tables, customer & Product.
    For each order i want to display on a pivot table:
    - the cost of the line.
    -the cost of the total order. 
    Is this possible? I have been playing with ALL & All except but have not found a solution yet. some metadata is below
    CustomerID CustomerName
    1 john
    2 mary
    3 jim
    4 kevin
    ProductID ProductName Price
    1 pen 5
    2 cup 4
    3 car 7
    4 phone 3
    OrderLineID CustomerID ProductID Quantity
    1 1 2 2
    1 1 3 2
    2 2 1 4
    3 1 2 5
    3 1 2 4
    3 4 4 6
    4 4 4 6

    Hi Winston,
    Could you kindly provide an example of the output you'd expect based on the above data? Also, I've noticed that there is no OrderID column in the order line table. How would you determine which OrderLineIDs belong to a single order?
    Regards,
    Michael Amadi
    Please use the 'Mark as answer' link to mark a post that answers your question. If you find a reply helpful, please remember to vote it as helpful :)
    Website: http://www.nimblelearn.com
    Blog: http://www.nimblelearn.com/blog
    Twitter: @nimblelearn

  • Cancelling order discounts when below Customer's Minimum Order value

    I've been reading what I can find about discount conditions etc and am slightly confused as all the examples seem to relate to item line situations. We need to have a setup where all possible discounts are cancelled if the order total value is less than a given minimum order value (or threshold) related to that particular customer - and not based upon any line item value.
    We do not use Minimum Order Value as per the SAP examples given i.e. orders not accepted below the MOV and therefore surcharges added. As mentioned we use a threshold value for most customers under which discounts do not apply.
    Because of this we cannot automatically email or fax acknowledgements, and we have a massive time consuming checking operation for orders added to ensure mistakes are not made i.e. discounts applied incorrectly before the acknowledgements are sent out.
    Can anyone advise as to where I can find the path to getting a solution to this problem.
    Thanks
    Jim Jackson
    Edited by: Jim Jackson on Feb 20, 2009 9:11 AM

    I understant AMIW is Header condtion type - statistical- and has the MOV value for the specified customer.
    Maintain AMIW as Header / Line condition type.( T Code V/06)
    Create the condition reocord for AMIW with EXCLUSIVE Indicator X.(VK11)
    Then create a requirement for all the discount condition types, if the total order value = or > AMIW value then do not check the exclusion indicator( KOMP - KZNEP), ELSE check the exclusion indicator.
    ( T Code VOFM)
    During order save - automatically repirce the order in Userexit_save_document_prepare or userexit_save_document.
    If there is a partial delivery, during Invoicing if the copy control(delivery to Invoice) has carry out new pricing B, the above setting might fail. Maintain the copy control setting to copy pricing elements unchanged and redetermine taxes OR try to determine the condition values in the invoice from the order.
    Hope this helps.
    Thanks
    Sai

Maybe you are looking for