Grand totals across hierarchy

What's the best way to calculate a grand total across a hierarchy (using hierarchical grouping)?

Hi Mike,
just a thought: Your aim is to have something like Total Sales (actual year) / Total Sales(previous year) displayed in your report. This is a total summary calculated upon a certain key figure which is included in the query.
The partial summaries of your key figure are delivered correctly from your SAP system in CR for each hierarchy level. Since a total summary is not delivered the problem is now that you do not have access to the sums for the sales of the previous year in your query. This way you could sum up in CR the sales for the actual and the previous year and calculate the total percentage manually at the end.
Assuming now that you do have the partial sums of the sales for the actual year in your query though, you can indirectly calculate the partial sums for the previous year :
Sales(previous year)@HieracrhyLevel X = Sales(actual year)@HierarchyLevel X / Percentage Key Figure@Hierarchy Level X.
All you have to do now is to pick up a specific hierarchy level (you know how to do this) and sum up the calculated sales from previous year and do your percentage calculation based on the total sums  at the end.
Hopefully you do have the sales of the actual year in your query as a separate key figure.
Regards,
Stratos

Similar Messages

  • Can we get subtotal and grand total by own calculation in a hierarchy ALV?

    Can we get subtotal and grand total by own calculation in a hierarchy ALV? I can get them by setting DO_SUM = 'X' by standard summation, but now I need to do my own summation on subtotal and total, can I?

    Can we get subtotal and grand total by own calculation in a hierarchy ALV? I can get them by setting DO_SUM = 'X' by standard summation, but now I need to do my own summation on subtotal and total, can I?

  • Presentation Hierarchy Grand Total Values

    Hi,
    We have the following scenario,
    Hierarchy Product A is created for Dimension Product A
    Hierarchy Product B is created for Dimention Product B
    Fact Product Measures is joined to Store Dimension , Dimension Product A, Dimention Product B and Fiscal Calendar
    Dimension Product A contains subset of Products that are existing at Fact
    Dimention Product B contains subset of Products that are existing at Fact
    and some products can exists both at Dimension Product A and Dimension Product B
    The issue we are facing is, when ever report is created using One of the Product Hierarchy and Fact. Product Sales (default aggregation is sum),
    the grand total level is showing sum of all Product Sales. It is not limiting to Products that are in Product Hierarchy selected in the report.
    But the sub levels are limiting based on selected Product Hierarchy which is causing not matching the roll up amount to grand total.
    Is it possible to limit the grand total level value of Presentation Hierarchy based on selected Product Hierarchy.
    Does anyone face similar issue.
    Thanks in Advance

    is your summary and detail reports hitting different facts, like summary hitting aggregate and detail report hitting it's corresponding detail level fact..?
    if then,
    From Front-end:
    Fix the filter values in detail report that are passing from master report then try delete each columns then check the grand total. If you found your values is matching by deleting particular column then you need to investigate what is the issue around with that dimension table..
    From Database side:
    1. check first aggregate table has proper aggregate data of it's detail..
    2. Take the detail report obiee generated query and try to comment each dimension table and it's corresponding joins to the facts, (before, this delete all the dimensional columns and other measures from select statement and put only that measure where you are getting wrong value, so that you need not to comment all the select and group by columns which saves your time.. ). Need to check by commenting each dimensional wid and it's table from clause, if you found that values is matching then there is some problem with wid columns data population in your ETL.
    Is that BI-Apps project?
    btw, whtz ur name?

  • Grand Total in Dimension Hierarchy

    Hello,
    I still have problem to get the correct Grand total. The Dimension "Project" goes down to Level 4  (some projects only to Level 3). First I solved summing up a calculated measure  with Isleaf() or SUM (currentmember.children).
    Then the grand total always summed up all members and not those which where filtered in Excel. Here i found the current solution with VisualTotals().  But now i still the problem that when expanding sublevels in excel the Grand total is wrong
    again:
    CREATE MEMBER CURRENTCUBE.[Measures].[Prognosekosten] AS
    CASE
    WHEN IsLeaf([Projekt].[Projekt Hierarchie].currentmember)
    THEN ...calculation....
    WHEN [Projekt].[Projekt Hierarchie].currentmember is [Projekt].[Projekt Hierarchie].[ALL]
    THEN sum(except(  VisualTotals(axis(0)), [Projekt].[Projekt Hierarchie].[All]), [Measures].[Prognosekosten])
    ELSE Sum([Projekt].[Projekt Hierarchie].currentmember.children, [Measures].[Prognosekosten])
    END

    Hi Wolfgang,
    According to your description, you create calculated member to calculate the grand total, now the problem is that the grand total is incorrect when you filter the data in Microsoft Excel, right? In this case, please refer to the links below which might helpful
    for you.
    http://wildwordz.wordpress.com/2008/11/21/not-so-grand-totals-in-ssas-cubes/
    http://vnu10.blogspot.com/2011/01/mdx-grand-total-sub-total.html
    Regards,
    Charlie Liao
    TechNet Community Support

  • Grand total of 2 measures in pivot table

    Hi,
    I have a requirement to show in a pivot table in which there are 2 measures - Male_count and Female_count. In the column I have Age_group such as 20-30,30-40 etc. In the row I have grade like assistant, manager etc. The requirement is to show column subtotals - total male count & total female count as well the total no. of employees (F+M) across all age groups. Using the column total I get only the sub total part. How can i get the total part?
    Look forward to your inputs.
    Regards,
    J

    Grade
    25 and under
    26-40
    40-55
    55 and above
    Subtotal
    Grand total
    F
    M
    F
    M
    F
    M
    F
    M
    F
    M
    Manager
    0
    1
    1
    1
    2
    2
    3
    4
    7
    8
    14
    Assistant
    0
    1
    1
    1
    2
    2
    3
    4
    7
    8
    14
    Developer
    0
    1
    1
    1
    2
    2
    3
    4
    7
    8
    14
    Using OBIEE pivot features I am able to obtain upto the Subtotal but I am not getting the Grand total.
    Hope this pivot gives an idea of what I am trying to implement.
    Thank you.

  • Wrong Grand Total in 11g

    Please list out the solutions available to solve the Grand total issue.
    These are the problems Im facing.
    If I enable Grand total I find some rows missing in the report.
    sometimes if i apply any calculations in report(fx) grand total is wrong and again some rows missing.
    These same issues I faced in BISE1 and it is still continuing.
    Any solutions?

    Hi sneha,
    sometimes if i apply any calculations in report(fx) grand total is wrong and again some rows missing.Strange behaviour of missing rows,dint come across this......tell us the exact problem
    These same issues I faced in BISE1 and it is still continuing.How did you solve this issue in BISE1.
    By,
    KK

  • XML Publisher - Multi Level group totals, subtotals and grand totals

    Hi Experts,
    I have a question in BI Publisher report in R12 Projects. The report has the following information: Project Parent Org -> Project Org -> Supervisor name(An employee who might be owning multiple projects)  -> Project -> Task -> Expenditure and Revenue amounts.
    I am able to generate the RTF report considering the above hierarchy. I am able to list Expenditure, Revenue, profit margin and few other calculated fields in the report.
    Now, user is looking for the total of the amount at various levels:
    Task Level
    Project Level
    Supervisor Level
    Project Org level
    Parent Org level
    In my Data Definition, I have data something like this:
    <group name="G_PROJECT_DETAILS"  source="Q_PROJECT_DETAILS">
      <element name="PROJECT_TYPE"             value="PROJECT_TYPE"/>
      <element name="AREA"                     value="AREA"/>
      <element name="PARENT_ORG"                value="PARENT_ORG"/>
      <group name="G_SUPERVISOR_DETAILS"   source="Q_PROJECT_DETAILS">
      <element name="CHILD_ORG"                 value="CHILD_ORG"/>
      <element name="SUPERVISOR"           value="SUPERVISOR"/>
      <group name="G_DETAILS"  source="Q_PROJECT_DETAILS">
      <element name="PROJECT_TYPE"              value="PROJECT_TYPE"/>
      <element name="PRJ_NUMBER"                value="PRJ_NUMBER"/>
      <element name="CREW"                      value="CREW"/>
      <element name="TOTAL_REVENUE_YTD"         value="G_REVENUE_DETAILS.TOTAL_REVENUE_YTD_C"       function="SUM()"/>
      <element name="TOTAL_DIRECT_COST_YTD"     value="G_EXPENDITURE_DETAILS.TOTAL_DIRECT_COST_YTD_C"    function="SUM()"/>
      <element name="HOUR_YTD"                  value="G_EXPENDITURE_DETAILS.HOUR_YTD_C"       function="SUM()"/>
      <group name="G_REVENUE_DETAILS"  source="Q_REVENUE_DETAILS">
      <element name="TOTAL_REVENUE_YTD_C"         datatype="NUMBER" value="TOTAL_REVENUE_YTD"/>
      </group>
      <group name="G_EXPENDITURE_DETAILS"  source="Q_EXPENDITURE_DETAILS">
      <element name="TOTAL_DIRECT_COST_YTD_C"     datatype="NUMBER" value="TOTAL_DIRECT_COST_YTD"/>
      <element name="HOUR_YTD_C"                  datatype="NUMBER" value="HOUR_YTD" />
      </group>
      </group>
      </group>
    </group>
    I am trying to calculate SUM for 'TOTAL_REVENUE_YTD', 'TOTAL_DIRECT_COST_YTD' fields at a higher level (i.e. Child and Parent Org level containing multiple projects). I tried accessing them like
      <element name="TOTAL_REVENUE_YTD_C"         value="G_DETAILS.TOTAL_REVENUE_YTD"       function="SUM()"/>
      <element name="TOTAL_DIRECT_COST_YTD_C"     value="G_DETAILS.TOTAL_DIRECT_COST_YTD"    function="SUM()"/>
    using the group name G_DETAILS. But, I am not able to get the sum of all entries (i.e. grand child of current group). I also tried using SUM() with <group1>.<group2>.elementname to get grand-total of all grand child. But, its not working.
    Please suggest how to calculate totals for grand-child.
    Thanks in advance
    Rathnam

    Try by creating a formula like this :
    Whileprintingrecords;
    Col1 + Col2 + Col3 + Col4

  • Valid Scrypt for Grand Total

    I have created an expanding table, using the following link:
    http://forms.stefcameron.com/2009/02/25/expandable-table-with-totals/
    (instructions shown below)
    However, I have been unsuccessful with the Grand Total value. As shown in the picture below, the rest of the totals show but the Grand Total remains blank. I must include the Installation fee (marked by the check box)
    This is the last step needed to complete my form, I would really appreciate all the help i can receive.
    Thank you!

    Row1[x] (where x is an integer) is the name and subscript for your rows. In the example, Stef (if that's his real name) used Item as the name for his rows. In your form, you are using Row1. So, each row is named Row1[0], Row1[1], Row1[2], etc... Inside of each Row1, you have a text field called "Total." Since you're using formCalc, you are summing the total of those rows using Row1[*].Total. So, if you haven't changed anything else, you should (at the very least) be able to sum the rows in the grand total box using
    $.rawValue = Sum(Row1[*].Total)
    Now, the checkbox is a different story. The checkbox has an "on" value and an "off" value. We can use that in formCalc to more easily add it to the value that we're going to get for the grand total. If you set the "on" value to 300 (I included an illustration of that in my first picture), then you can use the name of the checkbox to get your total. If the checkbox is checked or "on", then the on value (300 in my example) gets added to the total, and if it's unchecked or "off", then the off value (0 in my example) gets added. The checkbox also has to have it's name correct. In my example it's called CheckBox1, in your code you have Installation. So, whatever you named the checkbox needs to go at the end of the formula we're using like so.
    $.rawValue = Sum(Row1[*].Total) + Installation
    If you named your checkbox something else, then you'll need to change the word "Installation" to whatever the checkbox is named. (The name is in the hierarchy tree.)

  • OBIEE 10g - Unable to see data in the report view with grand total applied

    Hi,
    We're facing with a strange issue.
    We're working on a report view.
    We're able to see data when Grand total is not applied on the report. The moment Grand Total is applied, it's showing either an empty table with NULL values or "No Results" page.
    Please help.
    Thanks in advance.
    -Rama

    Hi Dpk,
    Thanks for your reply.
    I included it in the instanceconfig.xml, but the issue still exists.
    Couple of Observations
    #1 - We noticed this issue when we drill down to the level which has really sparse data.
    It works fine when we look at the enterprise wide report.
    #2 - Works fine with few dimensional attributes and facts on the report
    When we add a fact that doesn't have any value at that level, the issue starts to appear.
    Thanks in advance.
    -Rama

  • % is not getting correctly for the Grand Total Row in OBI10g

    Hi,We have a report in table view with the following structure.
    Name     Target     Act     %Ach
    ABC     100     50     50
    XYZ     200     10     5
    Total     300     60     27.5
    The value for the %Ach Total row should be 20% but in the report it is showing as 27.5.
    any one observed this ,how to correct this??
    Thanks

    Hi,
    To get grand total correctly..configure instanceconfig.xml and put..
    <ReportAggregateEnabled>true</ReportAggregateEnabled> between <serverinstace>..
    refer..
    http://obiee101.blogspot.com/2009/09/obiee-grand-totals-with-calculated.html
    Hope it solves ur problem

  • Urgent:Grand total in hierarchical alv

    I am printing a hierarchical alv with subtotals. I want to print the grand total for the whole numeric columns ...
    Can anyone explain me how i can do this.
    Thanks and regards,
    Subhakar

    Hi,
    In this case you not only require the totals but the subtotals also.
    For achieving this output you will have to sort the alv on the first column and also give subtotals there.
    use
    data: SORTF TYPE SLIS_SORTINFO_ALV,
             TSORT TYPE SLIS_T_SORTINFO_ALV.
    in the function module reuse_alv_grid_display give
    it_sort = tsort.
    eg:
    FORM ALV_SHOW.
      LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
      LAYOUT-BOX_TABNAME = 'IT_DISPLAY'.
      LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.
      LAYOUT-ZEBRA = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM        = SY-REPID
         I_CALLBACK_USER_COMMAND   = 'USER_COMMAND'
          IS_LAYOUT                 = LAYOUT
          IT_FIELDCAT               = TCATALOG
          IS_VARIANT                = VAR1
          I_SAVE                    = 'A'
          IT_SORT                   = TSORT
          IT_EVENTS                 = TEVENT[]
        TABLES
          T_OUTTAB                  = IT_DISPLAY.
    ENDFORM .                    "ALV_SHOW
    and write a subroutine for sort...
    form sort.
    CLEAR SORTF.
      SORTF-spos = 1.
      SORTF-fieldname = 'column_1'.
      SORTF-tabname = 'IT_table used for display in alv'.
      SORTF-up = 'X'.
      SORTF-subtot = 'X'.
    APPEND SORTF TO TSORT.
    endform.
    If this doesn't help I will send you the whole source of a sample program..
    Abdullah

  • Sub total wise Grand total in ALV report

    Dear All,
    I am displaying a list of material through material group wise so for each material i want to display sub-total for stock and grand total of stock(material group wise).Here it is adding up all the stock displayed for different AUOM(alternative unit of measure ) which is for same material so i want to pick only the sub-total and sum up in my Grand total.
    How to pick only the Sub-total Results and Add in ALV List for Grand total.
    Thanks & Regards,
    Arun.
    Edited by: Arun Kumaran on Sep 24, 2008 7:46 AM

    Hi arun,
    check these links
    total and subtotal in alv
    ALV SUBTOTAL
    Regards,
    Anirban

  • Hide grand total field on ALV report, But keep the sub total fields

    Dear Experts,
    1) How to hide grand total field on ALV report, But keep the sub total fields.
    2) How to populate rate per ton & calculate total price according to the qty in delivering document.

    Dear Experts,
    1) How to hide grand total field on ALV report, But keep the sub total fields.
    2) How to populate rate per ton & calculate total price according to the qty in delivering document.

  • Alv subtotals  and grand total for a field

    Hi friends,
    I Have an internal table ITAB1
    in that i have a senario as below.
    In my GRID display iam getting values in the layou as follows
    BUKRS =  1000
    LIFNR      MATNR     STCST
    100          abc            500,00
    100          pqr             400,00
    100          xyz            200,00
                        sub total
    200         pto              700,00
    200         vbr              900,00
                        sub total
    BUKRS =  2000
    LIFNR      MATNR     STCST
    150          abc            500,00
    150          pqr             400,00
    150          xyz            200,00
                        sub total
    260         pto              700,00
    260         vbr              900,00
                        sub total
              GRAND TOTAL = 
    Now my requirement is at the end of every vendor  i need sub total for STCST field.
    and at the end of every company code i need GRAND TOTAL for STCST field.
    Its alv grid display.
    how can i do that.
    Regards,
    Priyanka.

    Check this sample code may it will help u:
    *& Report  Z_ALV_SUBTOTAL
    REPORT z_alv_subtotal.
    *& Table declaration
    TABLES: ekko.
    *& Type pool declaration
    TYPE-POOLS: slis. " Type pool for ALV
    *& Selection screen
    SELECT-OPTIONS: s_ebeln FOR ekko-ebeln.
    *& Type declaration
    * Type declaration for internal table to store EKPO data
    TYPES: BEGIN OF x_data,
           ebeln  TYPE char30,  " Document no.
           ebelp  TYPE ebelp,   " Item no
           matnr  TYPE matnr,   " Material no
           matnr1 TYPE matnr,   " Material no
           werks  TYPE werks_d, " Plant
           werks1 TYPE werks_d, " Plant
           ntgew  TYPE entge,   " Net weight
           gewe   TYPE egewe,   " Unit of weight                          
           END OF x_data.
    *& Internal table declaration
    DATA:
    * Internal table to store EKPO data
      i_ekpo TYPE STANDARD TABLE OF x_data INITIAL SIZE 0,
    * Internal table for storing field catalog information
      i_fieldcat TYPE slis_t_fieldcat_alv,
    * Internal table for Top of Page info. in ALV Display
      i_alv_top_of_page TYPE slis_t_listheader,
    * Internal table for ALV Display events
      i_events TYPE slis_t_event,
    * Internal table for storing ALV sort information
      i_sort TYPE  slis_t_sortinfo_alv,
      i_event TYPE slis_t_event.
    *& Work area declaration
    DATA:
      wa_ekko TYPE x_data,
      wa_layout     TYPE slis_layout_alv,
      wa_events         TYPE slis_alv_event,
      wa_sort TYPE slis_sortinfo_alv.
    *& Constant declaration
    CONSTANTS:
       c_header   TYPE char1
                  VALUE 'H',                    "Header in ALV
       c_item     TYPE char1
                  VALUE 'S'.
    *& Start-of-selection event
    START-OF-SELECTION.
    * Select data from ekpo
      SELECT ebeln " Doc no
             ebelp " Item
             matnr " Material*
             matnr " Material*
             werks " Plant*
             werks " Plant*
             ntgew " Quantity
             gewei " Unit
             FROM ekpo
             INTO TABLE i_ekpo
             WHERE ebeln IN s_ebeln
             AND ntgew NE '0.00'.
      IF sy-subrc = 0.
        SORT i_ekpo BY ebeln ebelp matnr .
      ENDIF.
    * To build the Page header
      PERFORM sub_build_header.
    * To prepare field catalog
      PERFORM sub_field_catalog.
    * Perform to populate the layout structure
      PERFORM sub_populate_layout.
    * Perform to populate the sort table.
      PERFORM sub_populate_sort.
    * Perform to populate ALV event
      PERFORM sub_get_event.
    END-OF-SELECTION.
    * Perform to display ALV report
      PERFORM sub_alv_report_display.
    *&      Form  sub_build_header
    *       To build the header
    *       No Parameter
    FORM sub_build_header .
    * Local data declaration
      DATA: l_system     TYPE char10 ,          "System id
            l_r_line     TYPE slis_listheader,  "Hold list header
            l_date       TYPE char10,           "Date
            l_time       TYPE char10,           "Time
            l_success_records TYPE i,           "No of success records
            l_title(300) TYPE c.                " Title
    * Title  Display
      l_r_line-typ = c_header.               " header
      l_title = 'Test report'(001).
      l_r_line-info = l_title.
      APPEND l_r_line TO i_alv_top_of_page.
      CLEAR l_r_line.
    * Run date Display
      CLEAR l_date.
      l_r_line-typ  = c_item.                " Item
      WRITE: sy-datum  TO l_date MM/DD/YYYY.
      l_r_line-key = 'Run Date :'(002).
      l_r_line-info = l_date.
      APPEND l_r_line TO i_alv_top_of_page.
      CLEAR: l_r_line,
             l_date.
    ENDFORM.                    " sub_build_header
    *&      Form  sub_field_catalog
    *       Build Field Catalog
    *       No Parameter
    FORM sub_field_catalog .
    *  Build Field Catalog
      PERFORM sub_fill_alv_field_catalog USING:
         '01' '01' 'EBELN' 'I_EKPO' 'L'
         'Doc No'(003) ' ' ' ' ' ' ' ',
         '01' '02' 'EBELP' 'I_EKPO' 'L'
         'Item No'(004) 'X' 'X' ' ' ' ',
         '01' '03' 'MATNR' 'I_EKPO' 'L'
         'Material No'(005) 'X' 'X' ' ' ' ',
         '01' '03' 'MATNR1' 'I_EKPO' 'L'
         'Material No'(005) ' ' ' ' ' ' ' ',
         '01' '04' 'WERKS' 'I_EKPO' 'L'
         'Plant'(006) 'X' 'X' ' ' ' ',
         '01' '04' 'WERKS1' 'I_EKPO' 'L'
         'Plant'(006) ' ' ' ' ' ' ' ',
         '01' '05' 'NTGEW' 'I_EKPO' 'R'
         'Net Weight'(007) ' ' ' ' 'GEWE' 'I_EKPO'.
    ENDFORM.                    " sub_field_catalog
    *&     Form  sub_fill_alv_field_catalog
    *&     For building Field Catalog
    *&     p_rowpos   Row position
    *&     p_colpos   Col position
    *&     p_fldnam   Fldname
    *&     p_tabnam   Tabname
    *&     p_justif   Justification
    *&     p_seltext  Seltext
    *&     p_out      no out
    *&     p_tech     Technical field
    *&     p_qfield   Quantity field
    *&     p_qtab     Quantity table
    FORM sub_fill_alv_field_catalog  USING  p_rowpos    TYPE sycurow
                                            p_colpos    TYPE sycucol
                                            p_fldnam    TYPE fieldname
                                            p_tabnam    TYPE tabname
                                            p_justif    TYPE char1
                                            p_seltext   TYPE dd03p-scrtext_l
                                            p_out       TYPE char1
                                            p_tech      TYPE char1
                                            p_qfield    TYPE slis_fieldname
                                            p_qtab      TYPE slis_tabname.
    * Local declaration for field catalog
      DATA: wa_lfl_fcat    TYPE  slis_fieldcat_alv.
      wa_lfl_fcat-row_pos        =  p_rowpos.     "Row
      wa_lfl_fcat-col_pos        =  p_colpos.     "Column
      wa_lfl_fcat-fieldname      =  p_fldnam.     "Field Name
      wa_lfl_fcat-tabname        =  p_tabnam.     "Internal Table Name
      wa_lfl_fcat-just           =  p_justif.     "Screen Justified
      wa_lfl_fcat-seltext_l      =  p_seltext.    "Field Text
      wa_lfl_fcat-no_out         =  p_out.        "No output
      wa_lfl_fcat-tech           =  p_tech.       "Technical field
      wa_lfl_fcat-qfieldname     =  p_qfield.     "Quantity unit
      wa_lfl_fcat-qtabname       =  p_qtab .      "Quantity table
      IF p_fldnam = 'NTGEW'.
        wa_lfl_fcat-do_sum  = 'X'.
      ENDIF.
      APPEND wa_lfl_fcat TO i_fieldcat.
      CLEAR wa_lfl_fcat.
    ENDFORM.                    " sub_fill_alv_field_catalog
    *&      Form  sub_populate_layout
    *       Populate ALV layout
    *       No Parameter
    FORM sub_populate_layout .
      CLEAR wa_layout.
      wa_layout-colwidth_optimize = 'X'." Optimization of Col width
    ENDFORM.                    " sub_populate_layout
    *&      Form  sub_populate_sort
    *       Populate ALV sort table
    *       No Parameter
    FORM sub_populate_sort .
    * Sort on material
      wa_sort-spos = '01' .
      wa_sort-fieldname = 'MATNR'.
      wa_sort-tabname = 'I_EKPO'.
      wa_sort-up = 'X'.
      wa_sort-subtot = 'X'.
      APPEND wa_sort TO i_sort .
      CLEAR wa_sort.
    * Sort on plant
      wa_sort-spos = '02'.
      wa_sort-fieldname = 'WERKS'.
      wa_sort-tabname = 'I_EKPO'.
      wa_sort-up = 'X'.
      wa_sort-subtot = 'X'.
      APPEND wa_sort TO i_sort .
      CLEAR wa_sort.
    ENDFORM.                    " sub_populate_sort
    *&      Form  sub_get_event
    *       Get ALV grid event and pass the form name to subtotal_text
    *       event
    *       No Parameter
    FORM sub_get_event .
      CONSTANTS : c_formname_subtotal_text TYPE slis_formname VALUE
    'SUBTOTAL_TEXT'.
      DATA: l_s_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type     = 4
        IMPORTING
          et_events       = i_event
        EXCEPTIONS
          list_type_wrong = 0
          OTHERS          = 0.
    * Subtotal
      READ TABLE i_event  INTO l_s_event
                        WITH KEY name = slis_ev_subtotal_text.
      IF sy-subrc = 0.
        MOVE c_formname_subtotal_text TO l_s_event-form.
        MODIFY i_event FROM l_s_event INDEX sy-tabix.
      ENDIF.
    ENDFORM.                    " sub_get_event
    *&      Form  sub_alv_report_display
    *       For ALV Report Display
    *       No Parameter
    FORM sub_alv_report_display .
      DATA: l_repid TYPE syrepid .
      l_repid = sy-repid .
    * This function module for displaying the ALV report
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program       = l_repid
          i_callback_top_of_page   = 'SUB_ALV_TOP_OF_PAGE'
          is_layout                = wa_layout
          it_fieldcat              = i_fieldcat
          it_sort = i_sort
          it_events                = i_event
          i_default                = 'X'
          i_save                   = 'A'
        TABLES
          t_outtab                 = i_ekpo
        EXCEPTIONS
          program_error            = 1
          OTHERS                   = 2.
      IF sy-subrc <> 0.
    *    MESSAGE i000 WITH 'Error in ALV report display'(055).
      ENDIF.
    ENDFORM.                    " sub_alv_report_display
    *       FORM sub_alv_top_of_page
    *       Call ALV top of page
    *       No parameter
    FORM sub_alv_top_of_page.                                   "#EC CALLED
    * To write header for the ALV
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = i_alv_top_of_page.
    ENDFORM.                    "alv_top_of_page
    *&      Form  subtotal_text
    *       Build subtotal text
    *       P_total  Total
    *       p_subtot_text Subtotal text info
    FORM subtotal_text CHANGING
                   p_total TYPE any
                   p_subtot_text TYPE slis_subtot_text.
    * Material level sub total
      IF p_subtot_text-criteria = 'MATNR'.
        p_subtot_text-display_text_for_subtotal
        = 'Material level total'(009).
      ENDIF.
    * Plant level sub total
      IF p_subtot_text-criteria = 'WERKS'.
        p_subtot_text-display_text_for_subtotal = 'Plant level total'(010).
      ENDIF.
    ENDFORM.                    "subtotal_text
    Edited by: Joyjit Ghosh on Aug 21, 2008 5:25 PM

  • Subtotal in ALV grid for a particular type and Grand total in ALV

    Hi,
    I need to have sub total for a particular type(eg: goods, services).. and grand total at end in ALV grid..
    ALV output required as below:
    Type     VAT registration number     Country      Total Gross Amounts       Total Tax Amounts       Total Amount, ex-tax
    Goods     ATU12345678     AT                  222.42      0         222.42
    Goods     NL123456789B02     NL               3,417.00      0      3,417.00
         Goods Total                    3,639.42                -         3,639.42
    Services     ATU12345678     AT               2,342.34      0      2,342.34
    Services     NL123456789B02     NL                  223.33      0         223.33
         Services Total                    2,565.67                -         2,565.67
         Grand Total                    6,205.09                -         6,205.09
    Let me as to how to achieve the above type in ALV grid...
    Regards
    Shiva

    check this link..
    Grand Totals in ALV grid disply function module
    or do like this..
    REPORT  ZALVTESTFORSUBTOTAL.
    tables:pa0008.
    type-pools:slis.
    types:begin of ty_pa0008,
          pernr like pa0008-pernr,
          begda like pa0008-begda,
          endda like pa0008-endda,
          ansal like pa0008-ansal,
          lga01 like pa0008-lga01,
          bet01 like pa0008-bet01,
          end of ty_pa0008.
    data:it_pa0008 type standard table of ty_pa0008 with header line.
    data:it_fieldcat type SLIS_T_FIELDCAT_ALV,
         wa_fieldcat type slis_fieldcat_alv,
         it_layout type slis_layout_alv,
         WA_events TYPE slis_alv_event,
         it_events TYPE slis_t_event.
    select-options:s_pernr for pa0008-pernr.
    start-of-selection.
    perform getD_data.
    perform disp_alv.
    *&      Form  getD_data
          text
    -->  p1        text
    <--  p2        text
    form getD_data .
    select pernr
           begda
           endda
           ansal
           lga01
           bet01
           from pa0008
           into table it_pa0008
           where pernr in s_pernr.
    sort it_pa0008 by pernr begda descending.
    endform.                    " getD_data
    *&      Form  disp_alv
          text
    -->  p1        text
    <--  p2        text
    form disp_alv .
    wa_fieldcat-fieldname = 'PERNR'.
    wa_FIELDCAT-REPTEXT_DDIC = 'Personnel no'.
    *WA_FIELDCAT-no_subtotals = 'X'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    wa_fieldcat-fieldname = 'BEGDA'.
    wa_FIELDCAT-REPTEXT_DDIC = 'Start date'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    wa_fieldcat-fieldname = 'ENDDA'.
    wa_FIELDCAT-REPTEXT_DDIC = 'End date'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    wa_fieldcat-fieldname = 'ANSAL'.
    wa_FIELDCAT-REPTEXT_DDIC = 'Annula salary'.
    wa_fieldcat-do_sum = 'X'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    wa_fieldcat-fieldname = 'LGA01'.
    wa_FIELDCAT-REPTEXT_DDIC = 'Wage Type'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    wa_fieldcat-fieldname = 'BET01'.
    wa_FIELDCAT-REPTEXT_DDIC = 'Amount for wagetype'.
    append wa_fieldcat to it_fieldcat.
    clear wa_fieldcat.
    DATA: sort TYPE slis_sortinfo_alv,
    it_sort TYPE slis_t_sortinfo_alv.
    sort-fieldname = 'PERNR'.
    sort-subtot = 'X'.
    SORT-UP = 'X'.
    APPEND sort TO it_sort.
    *sort-fieldname = 'BEGDA'.
    *SORT-NO_SUBTOTS = 'X'.
    *APPEND sort TO it_sort.
    IT_layout-totals_text = 'total text'.
    IT_layout-subtotals_text = 'Subtotal text'.
    *WA_EVENTS-NAME = 'SUBTOTAL TEXT'.
    *WA_EVENTS-FORM = 'SUBTOTAL TEXT'.
    *APPEND WA_EVENTS TO IT_EVENTS.
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
       I_CALLBACK_PROGRAM             = sy-repid
       IS_LAYOUT                      = it_LAYOUT
       IT_FIELDCAT                    = IT_FIELDCAT
       it_sort                        = it_sort
      it_events                      = it_events
       TABLES
        t_outtab                       = it_pa0008 .
    endform.                    " disp_alv

Maybe you are looking for

  • Running a shell script in a Cocoa-Applescript, from the Resources folder?

    Hello! I need to use a bash script, but the script must be IN the application. I placed them in the "Supporting files", but i am not able to find them using "do shell script" Thanks!

  • Slow Hierarchical Query

    Hi, I have a hierarchical query which takes 2 seconds to execute. I need to get this down to milli seconds. The table has around 8000 records. The query will never return more than 20 or so records. There is only ever 2 levels to the query. I am quit

  • Phone will no longer sync gmail account

    My gmail account stopped syncing to my phone on October 13th.  I cannot receive any emails past that date.  I've since done a hard reset on my phone, changed email user information, and tried to clean out my email account in attempts to make room for

  • No Mountain Lion and ? Bad Hard Drive ???

    Tried to install Mountain Lion and the program stated the computer has a defective hard drive. It was working fine prior to the failed install of Mountain Lion. Now I'm dead in the water. ???

  • DVCPRO HD and QuickTime Player 7.6.6 (1709) Pro

    1. A video production company gave us 500 GB of .mov files with the DVCPRO HD codec. 2. QuickTime Player 7.6.6 (1709) Pro does not read the files. It gives this error message: "The document "BEFORE-A1" could not be opened. A required codec isn't avai