Suppressing levels in cross tab.
Hello All,
I have a project requirenment for one of the client and currently using CR 2008 for creating dynamic reports based on a finance database for profitabilty Analysis. I have been using lot of Web-Elements functionality in my crystal application and its going good to an extent, the only issue i have been experiencing is the dynamic change of the cross tab data based on prompts.
Its a 4 level application where in users are prompted to select a specific level outta the 4 levels, they can select either few or all. Now, the issue is, in my cross tab i have mentioned all the 4 levels in my row field and the data is displayed according to the users selection through prompts, it works fine. But however if user does not select level 3 or 4 or any one of them then the specific cross tab row is displayed empty. I have tried selecting the option suppress empty rows under customize tab but that doesnt seem to work.
I want only those levels to be displayed which are selected by users and suppress the rest, the empty rows in cross tab looks kinda odd to see. I am unable to figure out the formula string for the same.
Any help will be appreciated. Thank you
Hi
Cross tab is nothing but a tabular representation of data.
It displays zero values only when there is no data for the combination of corresponding row and column.
We can not suppress this however we can display some string like "No data for this" or something else as per requirement.
For this, do the below:
- Right click on the summary value field on the cross tab -> Format Field.
- Under Common Tab, click on X-2 for Display string. This would open the formula editor.
- Put the below formula there:
if IsNull(summary database field) then "No data for here"
else "" & currentfieldvalue;
You can change the display string as per requirement.
Hope this helps!!
Regards
Sourashree
Similar Messages
-
Problem using a conditional suppress in a cross-tab ?
is there a problem using a conditional suppress in a cross-tab on a row or summarized field in crystal XI?
I am using the following conditional suppress on a summarized field and its rows
If {@SortCode}=4 then true;
Sortcode is a group sorting formula field
the summarized field is a formula field as well.
All of the summarized fields are suppressed although the cross- tab performs correctly on @Sortcode and the summarized field when not using the condition
it seems to me to be a reporting flow issue although i've included "whileprintingrecords" and "evaluateafter" with no success.
i have also moved the cross-tab from the report header to group header and applied a conditional suppress on the group header through section expert.
this supresses the group i dont want but includes grand totals for each group and also varys the number of columns
i can't filter on sortcode because one of the grand total calculations requires those records and a subreport or second cross-tab does not contain the same number of columns
the cross-tab is necessary as a client may have columns spanning one to many pages
thanks for your helpHi I have a similar problem,
I have an clock in solution, where i have some dates with data such as, various entries for a date eg, 01/11/2010 1hr, 01/11/2010 3 hrs etc, 03/11/2010 2hrs , 05/11/2010 4.5hrs, 05/11/2010 4 hrs so i need total for each day and highlight only those days, where total is less than 4.5, including days which donu2019t have records eg 02/11/2010 & 04/11/2010, I summarise in totals using a cross tab, to get summarised output for each day as,
Totals
01/11/2010 4
03/11/2010 2
05/11/2010 8.5
in order to get the dates which didnu2019t have records, i added a dataset from Excel spreadsheet where i just have a sequential dates for the year , and use record selection to select only those dates in range which i need to display, so the result i get
01/11/2010 4
02/11/2010 0
03/11/2010 2
04/11/2010 0
05/11/2010 8.5
so far so good, all using cross tab, now i want to suppress rows which have total > 4.5 so the result should be
01/11/2010 4
02/11/2010 0
03/11/2010 2
04/11/2010 0
How can i do that? -
Re: Suppression Code in Cross tab Report
Hi All,
I am working with a cross tab report which has location descriptions as rows and dates as columns and the revenues as the summarized field.
Now I have over 7 locations without revenues and I need only 3 of them for suppose 'LOC X' 'LOC Y' 'LOC Z' to be suppressed.
How can i Suppress only those 3 locations.
Can any one help me with code please.
Thanks In Advance,
NaniNani
Can you use the "Suppress empty Rows" from the Customize Style tab in the CrossTab Expert?
Also, if your datasource is a Stored Procedure, you can filter them out there.
Edited by: Marty Reyes on Jan 3, 2011 10:52 PM -
Suppress values in Cross-Tab and Cross-Tab Chart if null
I am developing a cross-tab report that has no-values contributing to the summary in a number of cells. For instance, if I were to display the average value for the testing of particle-counts by the day of the month, and no testing was performed on a particular day, then I would hope that the cell would be blank and a plot of the cross-tab would just omit that data point. However, Crystal interprets this as a 0.00 instead of NULL, and the plot (incorrectly) includes the zero-datapoint.
I can suppress the datapoint in the cross-tab if it's zero, but that isn't correct either (as, sometimes, zero will be the correct answer). Even then, though, I cannot suppress the datapoint on the plot.
Anyone have experience with a workaround for this?
Thanks - TimBTW...I found that I can work-around the plotting issue if I convert the chart to a "Group" type (instead of cross-tab). It will then ignore the null-values. Still thinking about cross-tab displaying zero for a summary value when it is working with no data.
Suggestions? -
Cross Tab keeps suppressing rows with no data
I have a Crystal Report that is using a Cross Tab. I have 2 rows in the cross tab the first row is the Month name and the second row is the Day Number of the month, and the report will print the Month Name on the left followed by all the Calendar Day Numbers in the month.
The problem is that when there is no data for a Day Number row the entire row is not shown. So you might have day number 1, 2, 3 and then jumps to maybe 6. I found that the ones the cross tab was not showing did not contain any data. I just need the calendar day number to at least print so the days read sequentially instead of jumping to 6 or another number.
Is there any way to show the rows even if they don't contain any data?
I have right clicked and gone into the Cross Tab expert and there isn't anything checked to suppress rows. I don't understand why its still suppressing rows!
Is there a global report option that I missed that says "suppress rows when there are no records"?
Thank you all in advance,
I am using Crystal Reports XIR2 with Service Pack 4I am still not getting all rows to show up on the report. The rows that are not showing up contain no data in the cross tab but the row still needs to show.
The only reason I got it to work before was because I selected all values for the columns parameter so it brought back everything in the database that was why it was able to show all values.
I have two tables one is a date database and contains all the dates till 2012. The other is the product data which contains the product code and qty that the cross tab summarizes.
I have done a left outer join from the product data to the date database, and I am still not able to get all the dates to list for the selected time range.
I was able to get the dates to show up when I right clicked the link and modified the link properties. I chose Left Outer Join and then under Link Type I selected ">" in the database expert dialog. This brought back all the dates but the data in the report was all the same. Probably just the first record repeated all down the page.
Any ideas how to fix this problem? -
Cross-Tab - conditional suppression and formatting
I have a cross-tab report of "widgets" sold. There are $10 widgets, $20 widgets, and $50 widgets. All widgets will always cost some round dollar amount, never anything like $10.99. My report shows weekly, month-to-date, and year-to-date sales for each widget denomination by both count and total amount by state. For example:
$10 $20 $50
count amount count amount count amount
New York
Week 5 $50 4 $80 1 $50
MTD
YTD
Delaware 1 $10
etc.
I also have totals by row, along with mark-up amounts (11% of gross sales amounts) and net sales (gross - mark-up). These last 3 columns are included in my dataset, not calculated in the cross-tab.
My problem is that I can't figure out how to do 2 things:
1. the count columns for mark-up and net will always be blank, so I want to suppress the "count" column header
2. I want to display the dollar amounts for those 2 columns with 2 decimal places, but the other amounts with no decimals.
Can this be done, and if so, how?
Thanks!
PhilHi Phil,
I also found the following information under Cross-tab Help for suppressing rows or columns. I hope this is what you're looking for. Sylvie
To suppress empty rows and columns
Right-click the blank top-left area of the Cross-Tab and select Cross-Tab Expert from the shortcut menu.
The Cross-Tab Expert appears.
Click the Customize Style tab.
Select either the Suppress Empty Rows or Suppress Empty Columns check box.
Click OK.
Now, when you print the report, empty rows and/or columns will not appear.
To suppress row and column grand totals
Right-click the blank top-left area of the Cross-Tab and select Cross-Tab Expert from the shortcut menu.
The Cross-Tab Expert appears.
Click the Customize Style tab.
Select either the Suppress Row Grand Totals or Suppress Column Grand Totals check boxes.
Click OK.
To suppress subtotals and their labels
If you have more than two groups in your Cross-Tab you can suppress the subtotal and label for one of them.
Right-click the blank top-left area of the Cross-Tab and select Cross-Tab Expert from the shortcut menu.
The Cross-Tab Expert appears.
Click the Customize Style tab.
Click the field whose subtotal you want to suppress.
The Suppress Subtotal and the Suppress Label check boxes become active.
In the Group Options area, select the Suppress Subtotal check box.
Click the Suppress Label check box to suppress the label associated with subtotal.
Click OK. -
Suppressing a prior Year Month Column on Cross Tab Report
I have two cross tab report in the footer that compares orders booked against what was shipped by month. I need to suppress the columns (Month) for the prior year but keep the Totals.
I have a pdf of the reportTry to add a formula as a column in the crosstab instead of a field. Create a formula like this
if year()=year(currentdate)-1 then
year()
else
month()
This works only for two years of data, means you need to have the record selection formula like this
year()>=year(currentdate)-1 and year()=year(currentdate)
Regards,
Raghavendra -
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,
MaheshHi kavipriya,
Any update on this.I have set the rtf and xml to ur gmail id.
Thanks,
mahesh -
Suppress Columns shift Cells Lefts in Cross Tabs
Hello All
I need some help getting a cross tab report to suppress data correctly.
I have the following reporting requirement
Based upon Fiscal Year Period Selection report should start from the input period back 24 months.
Example
For the following example I use selection criteria of FY 2008 and period 11
Report should look as follows
2008
11 10 9 8 7 ....
Account Receivable 100 200 300 4000 5000 ....
Where the starting column is the input period 11
The table structure is
Account Number, FY, Key Figure Period 1, Key Figure Period 2, Key Figure Period 3 .... Key Figure Period 12
Parameters
Fiscal Year
Period
Cross Tab Format is
FY
Account Number Key Figure Period 12, Key Figure Period 11, Key Figure Period 10, ... Key Figure Period 1
When conditionally suppressing the field I am using a suppression formual
Key Figure Period 12 = {?FY}="2009" and {?Period}<"12"
Key Figure Period 11 = {?FY}="2009" and {?Period}<"11"
Key Figure Period 10 = {?FY}="2009" and {?Period}<"10"
etc.
The problems is that when I suppress I just get a blank field
2008
12 11 10 9 8 7 ....
Account Receivable 100 200 300 4000 5000 ....
What I want is a complete suppression of the column and commence the report from Period 11 as follows.
2008
11 10 9 8 7 ....
Account Receivable 100 200 300 4000 5000 ....
Can anyone provide tips on how to achieve this?
Thanks
PhillipThanks for your help. Sorry for my wording causing confusion I am new at Crystal Reports. I think I may have caused some confusion for I am actually wanting to stop the summarized data from showing, and shifting the summarized data to the left based upon a selection criteria.
Some more details
The Cross Tab has a Column heading of Fiscal Year.
The summarized values report the contents of fileds GLTO_HSL12 etc and are shown horizontaly with the label showing.
I can suppress the summarized fields so that they wont show. What I am trying to do is get the summarized fields to move to the left if based upon a selection criteria the logic I am applying is as follows
If Fiscal Year is 2009 and period is 10 then show summarized data from field GLT0_HSL10 to GLT0_HSL1 with GLT0_HSL10 being the first summarized field reported.
Currently based upon the Fiscal Year is 2009 and period is 10 example I can only blank out the summarized data for GLT0_HSL12 GLT0_HSL11 the actual format of the cross tab remains static.
Cross Tab Layout
______________________________FY2009
Summarized Data Heading_______| Period 12_____| Period 11 _____| Period 10 | ....Period 1
Row 1_______________________| GLT0_HSL12__|GLT0_HSL11__|GLT0_HSL10__|...
using suprresion formula in summarized fields I can achieve the following
______________________________FY2009
Summarized Data Heading_______| Period 12_____| Period 11 _____| Period 10 | ....Period 1
Row 1_______________________| ____________|________________|GLT0_HSL10__|...
What I want though is
______________________________FY2009
Summarized Data Heading_______| Period 10_____ | Period 9
Row 1_______________________|GLT0_HSL10__|GLT0_HSL09__|...
I hope this explains my problem alittle better.
Phillip -
Post Author: llcoolt
CA Forum: Formula
I just created a cross tab report that works beautifully, with one exception.... I want to suppress one of the column headings. How do I suppress ONE column sumary and it's heading? The heading is called "Job Cost" and is further defined as any cost code that <> ["61" to "76"], if that helps.
Thank you for all of your help.Post Author: V361
CA Forum: Formula
go to crosstab expert, you should be able to click on the fields you mentioned and just suppress them. -
Need a multi-level control break report displaying a cross-tab for each ...
I need a multi-level control break report that displays a cross-tab report for each
detail and subtotal. The individual cross-tabs are no problem. There are two issues:
1) How to get many cross-tabs (thousands) to appear in one report.
2) How to provide cross-tabs in-line on the multi-level subtotal lines.
Here is a concrete example.
Suppose the data base contains this table:
road (
id_number number, -- this is an artificial PK
city varchar2,
county varchar2,
state varchar2,
length number,
owner varchar2, -- roads may be owned by cities, counties, states, and others
surface_type varchar2 -- the surface type may be gravel, asphalt, concrete, and others
The table is populated with several million records that include every
length of road in a US city.
It is OK to suppose that all the attributes in all the records are not null.
Without the PK, there would be millions of duplicates,
which should all contribute to the summed lengths.
The report I need is like a control break report with a detail line for each
city together with subtotals for each county and state and
a grand total for the US at the end.
However, each detail and total line needs to be a cross-tab report
summing the length over the city, county, state or US
(whichever is called for at that location)
for each combination of owner and surface_type.
so the report would have the following structure:
a city cross-tab for the first city in county 1/state 1
a city cross tab for the last city in county 1/state 1
a cross-tab for count 1
a city cross tab for the first city in county 2/state 1
a city cross tab for the last city in county 2/state 1
a cross tab for state 1
a cross-tab for the US
Any suggestions will be appreciated.
This problem comes up because my client's legacy system,
which is being replaced,
already has such a report (in COBOL).
Thanks!!!
Steve
PS, I know one ugly way to do it. Namely, make a variable for each
possible combination of owner and surface. Then code an ordinary control
break report. However, I am looking for something better.Hi Jenna_Fire,
According to your description, you have a matrix contains total for each group on each level. Now your requirement is, when you click on any number (data field or total), it will go to the detail report which returns all the detail information of the people
within the group scope. For example, if you click on the total of Active users in United States, it will return the detail information of Active users in New York and Texas. Right?
In this scenario, we should set the parameter (@Country, @State, @City) allow multiple values in both main and detail report. And in Default Value (@Country, @State, @City), query out all distinct values. In the textbox which contains
those total values, when set use these parameters to run the report, we only need to pass the parameters of parent groups. For example, if we click on the total of Active users in New York, we only need to pass Country, State, Status to detail report, and
in the detail report, the City parameter will use all distinct values (Default Values) because we don't pass the City parameter. We have tested this case with sample data in our local environment. Here are steps and screenshots for your reference:
1. Create parameter Country, State, City and Status in both main report and detail report. Set both Available Value and Default Value get values from query (Create a dataset for each parameter, use "select distinct [column] from [table]" as query). Set allow
multiple values for parameter Country, State and City in both reports.
2. In corresponding textbox, pass appropriate parameters in go to report Action.
4. Filter data in detail report (in where clause or using filters).
5. Save and preview. It looks like below:
Reference:
Using Parameters to Connect to Other Reports
If you have any question, please feel free to ask.
Best Regards,
Simon Hou -
Hi,
Can we apply a break at row level. Supposing the country is column, months are row wise in cross tab and revenue is the intersection and the requirement is to put break after 3 months.Hi Sai
You can put break on crossrab column and/or row.
Just select object and apply break.
-Anuj -
BI Publisher Pivot Table or Cross Tab
Hai All,
I have a doubt in developing a Matrix report in XML. I have developed a matrix report in RDF and the output is coming fine in RDF. I have generated the XML file which looks like this. I need to develop the report which displays employee details followed by the allowance which are dynamic.
- <XXHRPRF>
- <LIST_G_SUMRESULT_VALUE>
- <G_SUMRESULT_VALUE>
- <LIST_G_EMPLOYEE_NUMBER>
- <G_EMPLOYEE_NUMBER>
<EMPLOYEE_NUMBER>100026</EMPLOYEE_NUMBER>
<PERSON_ID>80</PERSON_ID>
<NATIONALITY>USA</NATIONALITY>
<NATIONAL_IDENTIFIER />
<UNIFIED_ID />
<FULL_NAME>Thomas H Mathew</FULL_NAME>
<ORGANIZATION_NAME>Corporate Affairs</ORGANIZATION_NAME>
<PENSION_FUND_ID />
<CS_SNO>1</CS_SNO>
<CF_PENSION_CONTRIBUTION>3637.5</CF_PENSION_CONTRIBUTION>
<CP_PENSION_COMP_CONTR>10912.5</CP_PENSION_COMP_CONTR>
<CP_TOTAL_SALARY>72750</CP_TOTAL_SALARY>
<CF_TOTAL_CONTRIBUTION>14550</CF_TOTAL_CONTRIBUTION>
- <LIST_G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>1</TAG>
<ELEMENT_NAME>Basic Salary</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>39650</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>2</TAG>
<ELEMENT_NAME>Housing Allowance</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>25000</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>3</TAG>
<ELEMENT_NAME>Child allowance</ELEMENT_NAME>
<LIST_G_PERSON_ID />
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>4</TAG>
<ELEMENT_NAME>Social allowance</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>700</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>5</TAG>
<ELEMENT_NAME>Excess Allowance</ELEMENT_NAME>
<LIST_G_PERSON_ID />
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>6</TAG>
<ELEMENT_NAME>Additional</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>7400</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
</LIST_G_ELEMENT_NAME>
</G_EMPLOYEE_NUMBER>
- <G_EMPLOYEE_NUMBER>
<EMPLOYEE_NUMBER>100030</EMPLOYEE_NUMBER>
<PERSON_ID>82</PERSON_ID>
<NATIONALITY>Canada</NATIONALITY>
<NATIONAL_IDENTIFIER />
<UNIFIED_ID />
<FULL_NAME>Sara Wilson</FULL_NAME>
<ORGANIZATION_NAME>Human Resources</ORGANIZATION_NAME>
<PENSION_FUND_ID />
<CS_SNO>2</CS_SNO>
<CF_PENSION_CONTRIBUTION>1203.75</CF_PENSION_CONTRIBUTION>
<CP_PENSION_COMP_CONTR>3611.25</CP_PENSION_COMP_CONTR>
<CP_TOTAL_SALARY>316575</CP_TOTAL_SALARY>
<CF_TOTAL_CONTRIBUTION>4815</CF_TOTAL_CONTRIBUTION>
- <LIST_G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>1</TAG>
<ELEMENT_NAME>Basic Salary</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>19600</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>2</TAG>
<ELEMENT_NAME>Housing Allowance</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>22500</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>3</TAG>
<ELEMENT_NAME>Child allowance</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>600</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>4</TAG>
<ELEMENT_NAME>Social allowance</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>800</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>5</TAG>
<ELEMENT_NAME>Excess Allowance</ELEMENT_NAME>
<LIST_G_PERSON_ID />
</G_ELEMENT_NAME>
- <G_ELEMENT_NAME>
<TAG>6</TAG>
<ELEMENT_NAME>Additional</ELEMENT_NAME>
- <LIST_G_PERSON_ID>
- <G_PERSON_ID>
<RESULT_VALUE>3075</RESULT_VALUE>
</G_PERSON_ID>
</LIST_G_PERSON_ID>
</G_ELEMENT_NAME>
</LIST_G_ELEMENT_NAME>
</LIST_G_EMPLOYEE_NUMBER>
</G_SUMRESULT_VALUE>
</LIST_G_SUMRESULT_VALUE>
<CF_PERIOD>MAR-2009</CF_PERIOD>
- <XXHRPRF>
I need to develop a cross tab format in RTF using template builder. Can we get this in matrix report using the standard wizard given in template builder or else it should be done manual. If it can be done through wizard can u please explain the process.
And one more think what is the latest version of template builder available. In few cases its given as pivot table and in few its given as cross tab. I confused by that.
This seems to be basic doubt, but please guide me.
Regardsi,
I am developing cross tab report with group in BI Publisher(i.e matrix with group above report in report builder).
My req.is
Country1
region1 region2 region3 --- (level1 column)
d1 d2 d3 d1 d2 d3 d1 d2 d3 --(level2 column)
Row1 10 15 18 24 38 40 36 35 78 --data
Row2 -- -- -- --- --- -- - -- -- --
regions(level1 columns) and d1,d2,d3(level2 columns) are data depenent on XML data.
d1,d2 d3 may change in number based on data.Also we have page break on country.
We could able to achieve in report builder but in Bi Publisher we are unable to achieve the same.
Wizard in BI Publisher gives only one level of measure(region) only.
Currently we are using BI Publisher template builder version 10.1.3.2.1
Need help in this regard ASAP.
Thanks in advance. -
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. -
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
Maybe you are looking for
-
I have a laserjet 600 m602 when I change it to custom it prints so slow its going backwards is there any way around this the paper is 8 1/2 by 10 1/2 actually shorter why does it take longer
-
LCD projector to MacBook Air - I have thunderbolt, how do I connect these two machines?
I purchased an IPEVO Ziggi HD, how do I use this with LCD projector? I have MacBook Air which has thunderbolt and HDMI...
-
Service Apple Mobile Device failed to start...verify
i get this message when i try to install itunes! please help!@
-
[Polish] Typo in contact lists context menu
Hi there, I've recently found a bad looking typo in context menu, when you're in a main list view. To reproduce: 1. Go to main view. 2. Select multiple contacts at once (using the CTRL key). 3. Press right mouse button. 4. Check a translation string
-
When will a new color scheme come out? I'm going crazy with these ultra bright options!