Dynamic sorting in Cross Tab Report

I have 2 cross tabs in a report with element linking that filters data in 2nd report when I click on values in the first. I'd like a way to be able to sort the results in the 2nd cross tab in ascending or descending order dynamically.
Please see image below (click image for better quality) for a detailed representation of the problem.
Is this possible?

Right click on crosstab and go to Crosstab Expert and in the columns click on "group options" button and in the options tab select "Use a formula as sort order" and write the condition like this
if {?Parameter}="Ascending" then
crAscendingOrder
else
crDescendingOrder
Hope this helps!
Raghavendra

Similar Messages

  • Sort in Cross-Tab report

    I have a cross-tab report that lists dates as headers and employees as rows. The data at every cell shows the qty (it is like timesheet report). The totals are shown for every row and column. The report layout looks something like this:
    ----------- <date> <date> <date> .... <Total>
    <name> <qty> <qty> <qty> <qty>
    <name> <qty> <qty> <qty> <qty>
    <name> <qty> <qty> <qty> <qty>
    <Total> <qty> <qty> <qty> <qty>
    The report definition looks like this (I numbered the columns to make it easier to write about them):
    01: <?horizontal-break-table:1?>
    02: <?for-each-group@column:EMPLOYEE_TIME;./TRANSACTION_DATE?><?sort:TRANSACTION_DATE;'ascending';data-type='date'?>
    03: <?TRANSACTION_DATE?>
    04: <?end for-each-group?>
    05: <?for-each-group:EMPLOYEE_TIME;./EMPLOYEE_NAME?><?sort:EMPLOYEE_NAME?><?variable@incontext:G1;current-group()?>
    06: <?EMPLOYEE_NAME?>
    07: <?for-each-group@cell://EMPLOYEE_TIME;./TRANSACTION_DATE?>
    08: <?sum ($G1[(./TRANSACTION_DATE=current()/TRANSACTION_DATE)]/TRANSACTION_QTY)?>
    09: <?end for-each-group?>
    10: <?sum ($G1/TRANSACTION_QTY)?>
    11: <?end for-each-group?>
    12: <?variable@incontext:T;.//EMPLOYEE_TIME?>
    13: <?for-each-group@cell://EMPLOYEE_TIME;./TRANSACTION_DATE?>
    14: <?sum (current-group()/TRANSACTION_QTY)?>
    15: <?end for-each-group?>
    16: <?sum ($T/TRANSACTION_QTY)?>
    The XML data is not sorted in any way and the report sorts it by employee and date. As you see at the line 02 I applied the sort by the transaction date. The sort works as expected, however the actual QTY are not showing at correct cells. If I remove sort it works fine but the dates are in random order. I suspect it is because I sort transaction date at header level and the QTY is not aware about it. I tried to apply the sort at line 07 but it does not help.
    Does anyone has any idea how to get this report to display data correctly?

    I have a SR which has associated bug 6131270.
    Here is the latest from my SR:
    UPDATE
    =======
    Hi Tomas,
    The bug has been updated. Development has recommended
    "You also need the patch from bug 4332399 to solve the java.util.EmptyStackException. "
    Please review above bug if you have access.
    Please consider applying Patch 4332399 - XSL:SORT FAILED IN A 2 LEVEL XSL:FOR-EACH-GROUP CASE
    Backport is included in patch 5840358 for EBS customers.

  • Sorting by date in columns cross tab report.

    Hi all,
    I am working on a cross tab report in BI Publisher in which columns are generated dynamically in a pivot table depicting months as Jan 09 , Feb 09.... but data type is char.When displayed in pdf, columns are generated sorted alphabetically.
    How can I have them sorted by date in final pdf?
    or
    How can I stop the columns being sorted in pivot table at template level?
    Thanks.
    Edited by: user9061488 on Jul 21, 2010 1:13 AM

    You need to get a extra column in the query just for sorting purpose, which will have month number in it or YYYYMMDD. format, so that , it can be used in only for sorting.
    with JAN 09, FEB 09 , we can do it, but it will be little complex

  • Dynamically color to each column in Cross-tab report

    Hello All,
    I am a newbie in Crystal report,from last few weeks, i am working on cross tab crystal report.i have a requirement to show color dynamically for each column.i am adding an attachment how i want it. i tried dynamic coloring using object field formula but it is showing red color to all data.i want red color data when in 2nd  cross tab report data is beyond upper or lower limit in first cross tab table. it will be very helpful if somebody will give me any clue on this.... i read so many articles now it seem like impossible for me..:(
    i am using visual studio 2010 and sap crystal report version 13.0.0.99 for visual studio 2010.

    Hello Manish,
    I have attached a sample report that does this. You will need to remove the .txt extension from the attached file to open it as an .rpt file.
    Please right click on one of the value fields of the first cross tab in the report > Format Field > Common > Suppress if Duplicated conditional formula.
    The nested formula is as follows;
    numbervar array l;
    numbervar array u;
    numbervar x:=CurrentColumnIndex;
    if GridRowColumnValue ('@limit') = 'lower limit' then
    (redim preserve l[x];
    l[x]:= tonumber(CurrentFieldValue))
    else if GridRowColumnValue ('@limit') = 'upper limit' then
    (redim preserve u[x];
    u[x]:= tonumber(CurrentFieldValue));
    false
    So it assigns each lower and upper limit value for each client (in the sample it is country) to an array using the cross tabs column index to index the array and it ends in False as we don't actually want it to suppress if duplicated. This nested formula is just used to generate the arrays of upper and lower values.
    In the second cross tab if you again right click on one of the value fields > Format Field > Font > Color you will see the following conditional formula;
    numbervar array l;
    numbervar array u;
    numbervar x;
    if not(tonumber(CurrentFieldValue) in l[CurrentColumnIndex] to u[CurrentColumnIndex]) then
    crred
    else
    crblack
    So this compaes the current field value to range generated by the 2 arrays and assigns a color based on whether or not it is in the range.
    Regards,
    Graham

  • SORTING FOR THE CALCULATION FIELD IN CROSS TAB REPORT

    LIST_G_AUCTION_TITLE>
    <G_AUCTION_TITLE>
    <BID_NUMBER>5002</BID_NUMBER>
    <AUCTION_TITLE>E2E-01 Construction RFQ</AUCTION_TITLE>
    <ITEM_NUMBER>C2631</ITEM_NUMBER>
    <ITEM_DESCRIPTION>4G000,000,0STRUC,X,SPECIAL STRUCTURE</ITEM_DESCRIPTION>
    <ESTIMATED_QTY>1</ESTIMATED_QTY>
    <UNIT>LS</UNIT>
    <QUOTE_PRICE>400</QUOTE_PRICE>
    <ESTIMATED_QUOTE_PRICE>400</ESTIMATED_QUOTE_PRICE>
    <SUPPLIER>X - L CONTRACTING</SUPPLIER>
    my xml data is in this format, i created a cross tab report for ITEM_DESCRIPTION as row and SUPPLIER as column and calculated a sum(ESTIMATED_QUOTE_PRICE)
    for all the ITEM_DESCRIPTION for every SUPPLIER in templete . now i need to sort the data by sum(ESTIMATED_QUOTE_PRICE) from lowest to higest from left to right , that is supplier with lowest sum(ESTIMATED_QUOTE_PRICE) should display first from left to right.
    can any one help thanks in advance.

    thank you tim , for asking i got the solution. it is actually in template builder i was asking about. xml template builder

  • Unable to create cross tab report with multiple level dynamic columns

    Hi Gurus,
    We are trying to develope group above cross tab report with BI Publisher.
    i am unable to achieve multiple level columns dynamically.Using cross tab wizard i can achieve single level measure column ,but not the second level column.
    Output should look like this:
    Country1
    Region1 Region2 Region3 --(level1 column)
    d1 d2 d3 d1 d2 d3 d1 d2 d3 -- (level2 column)
    Row1 10 20 30 70 80 90 40 70 90 --data
    Row2 21 24 54 65 23 64 64 76 87
    Here regions and d1 d2 d3 may vary based on xml data.Also we have page break on country.
    Thanks,
    Mahesh

    Hi kavipriya,
    Any update on this.I have set the rtf and xml to ur gmail id.
    Thanks,
    mahesh

  • Issue in developing cross tab report with wizard in 10.1.3.2.1

    Hi Gurus,
    We are trying to develope group above cross tab report with wizard in BI Publisher 10.1.3.2.1 .
    i am unable to achieve multiple level columns dynamically.Using cross tab wizard i can achieve single level measure column ,but not the second level column.
    Output should look like this:
    Country1
    Region1 Region2 Region3 --(level1 column)
    d1 d2 d3 d1 d2 d3 d1 d2 d3 -- (level2 column)
    Row1 10 20 30 70 80 90 40 70 90 --data
    Row2 21 24 54 65 23 64 64 76 87 --data
    Here Regions and d1 d2 d3 may vary based on xml data.Also we have page break on country.
    Haven't get any solution till now.
    Also unable to achieve under line and overline on data for total row.
    Need help urgently in this issue.
    Thanks,
    Mahesh
    Edited by: user13450806 on Jan 7, 2011 12:43 AM

    Hi Gurus,
    I am still waiting for some one to help me in this issue.
    It is very urgent for me to solve this. Did not get any help yet.
    --Mahesh                                                                                                                                                                                                                                                                                                       

  • Restricting data in cross tab report

    Hi
    I am creating a cross tab report.In that I want to restrict the column dynamically.The column depends upon the parameter field.
    say for example if i enter the parameter as 2007,it should display field from 2004-2007 only rather than displaying all years.
    Thanks in Advance,
    Eswari

    Hi,
    You can use a formula. e.g
    < Basic format>
    Select case year({Command.tradeDate})
        case 2005 to 2007
            formula = 1
        Case else
            formula = 0
    end select
    Then on the crosstab column group options, choose "specified order" and on the "Other" tab choose "Discard all others"
    Hope this helps
    Regards
    Dotun.

  • Row Headers in Cross Tab Report -Crystal Report XI

    I am trying to create a cross tab report. The report has 4 rows and the columns get generated based on the value of a database field.
    I have 2 questions
    Question 1 : I want the rows to have headers. I insert text objects in the report and when I run the report in crystal, the headers are displaying as required. But when I export to excel, the headers are displayed after the data. How can I create row headers and get them exported to excel as row headers.
    Question 2: I am creating the column based on a database field. The field is of text data type. The sorting for this filed is 1. abc ,10. abc , 11.abc , 2.abc , 3.abc ; etc where abc is a text string. How can I sort the columns so that the columns appear as 1.abc, 2.abc, 3.abc etc.
    I tried using the specified order sorting, but when I check the list of values that it creates to select the values, it is truncating the values. I can only see part of the values from the database.
    Please Help!!!

    I don't have Crystal in front of me so I will try to do this from memory.  If you right click on a report object, there is option on one of the tabs (I think it is General) that says Display String with a corresponding X button.  If you click on that, then you can enter a text expression that overrides the actual value of the report object.
    In your case, if you want to add a static header text to the row data, you could try something like the following:
    if Gender = "M"
         then "Mr. " + CurrentFieldValue
         else "Ms. " + CurrentFieldValue
    where Gender is a field object in the report and CurrentFieldValue is the data object specified for rows in the cross-tab.
    If you wanted to put header on the previous line, you could try something like this:
    "Account ID" + chr(13) + CurrentFieldValue
    where CurrentFieldValue is the account ID string.
    Fuskie
    Who expects this looks nothing like your actual report but hopefully it works as an example...

  • Problem with Cross-tab report (RTF Template) null values, current-group()

    Hi, experts!
    I generate Cross-tab report using RTF Tamlpate and I have problem with grouping.
    My XML file have to be with one group only because I want to using dynamic regrouping inside the RTF template.
    Here is my data structure (XML file):(Look the images for details)
    http://img156.imageshack.us/img156/3997/xmlstructureay9.jpg
    =======================
    WITH GROUPS
    =======================
    Here is my RTF template:
    http://img151.imageshack.us/img151/2951/resultcrosstabbycustomehf8.jpg
    When I'm using grouping and I want to have for each group cross-tab report I have the following problem: (Look the images for details)
    http://img156.imageshack.us/img156/8786/resultcrosstabbycustomect9.jpg
    And this is my code I'm using inside the RTF template with groups:(Look the images for details)
    http://img156.imageshack.us/img156/4253/fieldbrowserxb7.jpg
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    =======================
    WITHOUT GROUPS
    =======================
    Here is my RTF template:
    http://img151.imageshack.us/img151/9545/resultcrosstabwithoutgrzg7.jpg
    When I generate one cross-tab there is no problem: (Look the images for details)
    http://img156.imageshack.us/img156/7030/resultcrosstabwithoutgrsr1.jpg
    This is my code I'm using inside the RTF template WITHOUT groups:(Look the images for details)
    http://img151.imageshack.us/img151/7030/fieldbrowserwithoutgrours8.jpg
    Can someone give me a hand to deal with this?
    Thank you!

    Pitson,
    better to ask this question in the BI Publisher Forum than here in the Oracle Reports Forum:
    BI Publisher
    Regards
    Rainer

  • Problem with Cross-tab report (RTF Template)

    Hi, experts!
    I generate Cross-tab report using RTF Tamlpate and I have problem with grouping.
    My XML file have to be with one group only because I want to using dynamic regrouping inside the RTF template.
    Here is my data structure (XML file):(Look the images for details)
    http://img156.imageshack.us/img156/3997/xmlstructureay9.jpg
    =======================
    WITH GROUPS
    =======================
    Here is my RTF template:
    http://img151.imageshack.us/img151/2951/resultcrosstabbycustomehf8.jpg
    When I'm using grouping and I want to have for each group cross-tab report I have the following problem: (Look the images for details)
    http://img156.imageshack.us/img156/8786/resultcrosstabbycustomect9.jpg
    And this is my code I'm using inside the RTF template with groups:(Look the images for details)
    http://img156.imageshack.us/img156/4253/fieldbrowserxb7.jpg
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    =======================
    WITHOUT GROUPS
    =======================
    Here is my RTF template:
    http://img151.imageshack.us/img151/9545/resultcrosstabwithoutgrzg7.jpg
    When I generate one cross-tab there is no problem: (Look the images for details)
    http://img156.imageshack.us/img156/7030/resultcrosstabwithoutgrsr1.jpg
    This is my code I'm using inside the RTF template WITHOUT groups:(Look the images for details)
    http://img151.imageshack.us/img151/7030/fieldbrowserwithoutgrours8.jpg
    Can someone give me a hand to deal with this?
    Thank you!

    Pitson,
    better to ask this question in the BI Publisher Forum than here in the Oracle Reports Forum:
    BI Publisher
    Regards
    Rainer

  • Cross tab reporting in Crystal 8.5

    Post Author: KPetrey
    CA Forum: General
    I am trying to create a cross tab report for some data that will have varying number of columns.I am running into a problem where some situations are producing 25 or more columns.  This results in the crossing over to a second page.My end-users are going to dislike this very much.  I am trying to duplicate a report they had with their previous software system and it did not cross pages.  All data stayed on one page. My questions are as follows:Is there a way to make the cross tab wrap so that data does not cross to second page?Is there a different way to do what I need other than cross tab?What I am trying to do is list a column for each store that will show the qty of a product that is ordered for it....the number of stores will vary depending on my end-users setup. Any help would be greatly appreciated.Thanks

    Post Author: wapper
    CA Forum: General
    Crosstab is designed to grow wide-wise if the number of columns increases. How can you avoid splitting pages if the number of columns will reach, for example, 50?
    You should probably first make a decision, whether your report must be fixed-column or variable-column. If you stick to fix-column, you can design the report to accommodate theoretical maximum of columns, and imitate dynamic columns by using groups, formulas and hiding columns not in use at run time. Pain in the a** with 25+ columns but still doable. Drawback - if actual data will exceed the maximum number of columns, you are out of luck. Or you could stay with crosstab to keep support for variable number of columns, using small font and "Show Cell Margins" option to squeeze as many columns as is actually possible before falling over to the second page. I would prefer the latter if you ask me.
    Wapper

  • Sorting a cross tab total

    I am a newcomer (user) to Discoverer so would appreciate some help.
    I have written a cross tab report which shows my sales people in the rows and different sales catagories in the columns. I have then put a total on my rows (total for each sales person) which works fine.
    I then want to sort my sales people by their "total sales" ie my calculation.
    Looking in the sort functionality I appear to only be able to sort the sales people by each of the actual columns of data which come back in the report (ie the sales categories - cat 1 or 2 as below)
    E.g
    Cat 1 Cat 2 Total
    Sales Man 1 10 15 25
    Sales Man 2 15 30 45
    I want to sort so that the 45 is viewed and Sales Man 2 is sorted to the top.
    Help?
    Ed

    Hi,
    Sorting a crosstab how you want is always difficult. If you only ever want two categories as column headers then it will be easier to use a table report and decode out the categories and sort by the total.
    Otherwise you will have to use a analytic sum with a partition to calculate the total for each sales in a calculation and then include that calculation as a dimension. You will then be able to sort the crosstab using this dimension and if necessary hide the content of the field using formatting.
    Rod West

  • Cross tab report: handle null elements

    hi
    i have a cross tab report if there are null elements in the column(vertical group) the excel sheet format is not right. also if the some horizontal column elements have 1 column and some other have max 24 columns. how to handle this. please help
    COL1 COL2 ...........COL24 ARE dynamic. For row 100 there 24 rows and for row 200 there will be one row. when i group by col it is also gouping the null colum into a separate column so i get extra col25 which is basically null
    h1   h2   h3   h4  col1 col2 col3 col4 col4 ..............col24  
    100  1     2     3    10  20    30   40   50  ...............240
    200  1     2     3                            ...............    
    300  1     2     3                            ...............       
    400  1     2     3    10  20    30   40   50  ...............240
    500  1     2     3    10  20    30   40   50  ...............240
    600  1     2     3                             ...............       pleas help.Thanks

    send me the template and xml data to [email protected]

  • Cross tab reports in application express

    Hi,
    Can a cross tab report be generated with the help of Oracle Application Express?
    Lavina

    Lavina - you can cheat and create a very simple report like this:
    Use a PL/SQL dynamic region. Within your PL/SQL, query the database to get the data in rows rather than columns (which is normally much easier and allows the number of items to be dynamic) and set a cursor on the result.
    Start an HTML TABLE block, loop through the cursor once for each column of the resultset and output each row as a table column (i.e. 'sideways', with td tags rather than tr tags, or th tags for the first). You can also put in CSS formatting etc., then close off the table at the end. The idea here is that you build up an HTML table with your data in the cells, and pass it back to the browser using an htp.p() call.
    It's a bit crude, and you don't get any of the APEX stuff that goes with the report, but it's OK for very simple reports. We use this technique for creating reports that show the data that was used to generate charts.
    John.

Maybe you are looking for

  • Problem with RSS feeds in AppleMail

    If anyone can help, I would greatly appreciate it. I have several RSS feeds that come in through AppleMail. Every so often, it stops receiving all of the feeds (I get an explanation point next to the the RSS header). After a day or so, it will start

  • Why is the wi-fi so slow??

    Why is the wi-fi so slow on the time capsule??? Brand new bought last week? help? running about 13 devices on more than one network. Help please..

  • Include Master Page Items in Table of Contents

    I am building a table of contents in InDesign CS3. I've got paragraph style applied to my section heading and well as section subheadings. However, my sections headings are located on Master Pages (as they are repeating on several pages), and my sect

  • HT1446 Battery in Macbook Pro Retina

    I have a new, barely used Macbook Pro retina.  Although I have barely used it the battery is now very low and although I have plugged it into the mains to recharge it, it will not start up and just shows the battery charging symbol.  Is this correct,

  • NoSuchMethodError: method trim(J)V not found when calling loadDataFromInputStream

         Hi, I4m trying to put data on a ORDImage field using java but, when I call the method loadDataFromInputStream I got the message: Exception in thread "main" java.lang.NoSuchMethodError: oracle.sql.BLOB: method trim(J)V not found.      Does anyone