Help me in Cross Tab
Post Author: mak101
CA Forum: Crystal Reports
Hi,
My table has following fields;
Region,ReportMonth,ClientName,SpecialOrder1 and SpecialOrder2
I store all client information who has ordered in that month and also mark if they have ordered special items. Here is sample data.
Region ReportMonth ClientName SpecialOrder1 SpecialOrder2
1 Jan Client 1 Yes No
1 Feb Client 1 No No
1 Mar Client 1 Yes Yes
I need detail report b region and in region summary i need information like:
Jan Feb March .......
Total Orders
of Special order 1
% of special orders 1 to total
of special Order 2
% of special orders 2 to total
I have never created cross tab report, I would appreciate if someone can help me.
Thanks.
Post Author: mak101
CA Forum: Crystal Reports
Hi,
My table has following fields;
Region,ReportMonth,ClientName,SpecialOrder1 and SpecialOrder2
I store all client information who has ordered in that month and also mark if they have ordered special items. Here is sample data.
Region ReportMonth ClientName SpecialOrder1 SpecialOrder2
1 Jan Client 1 Yes No
1 Feb Client 1 No No
1 Mar Client 1 Yes Yes
I need detail report b region and in region summary i need information like:
Jan Feb March .......
Total Orders
of Special order 1
% of special orders 1 to total
of special Order 2
% of special orders 2 to total
I have never created cross tab report, I would appreciate if someone can help me.
Thanks.
Similar Messages
-
Anyone help me in cross tab report
Hi All,
this is my first time to build cross tab report in xml publisher
my code is
<?xml version="1.0"?>
<!-- Generated by Oracle Reports version 10.1.2.0.2 -->
<TEST>
<LIST_G_SUMFIXED_ASSETS_COST>
<G_SUMFIXED_ASSETS_COST>
<LIST_G_ASSET_NUMBER>
<G_ASSET_NUMBER>
<ASSET_NUMBER>2402</ASSET_NUMBER>
<DESCRIPTION>Intangible Assets </DESCRIPTION>
<LIST_G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Dec-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>1</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Nov-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>2</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Oct-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>3</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-06</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>4</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>50</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
</LIST_G_PERIOD_NAME>
</G_ASSET_NUMBER>
<G_ASSET_NUMBER>
<ASSET_NUMBER>2403</ASSET_NUMBER>
<DESCRIPTION>Lands Al-Mashail school</DESCRIPTION>
<LIST_G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Dec-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Nov-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Oct-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-06</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>1400000</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
</LIST_G_PERIOD_NAME>
</G_ASSET_NUMBER>
<G_ASSET_NUMBER>
<ASSET_NUMBER>2404</ASSET_NUMBER>
<DESCRIPTION>Buildings Um-Hany Arabic school</DESCRIPTION>
<LIST_G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Dec-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Nov-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Oct-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-06</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>109501.785</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
</LIST_G_PERIOD_NAME>
</G_ASSET_NUMBER>
<G_ASSET_NUMBER>
<ASSET_NUMBER>2405</ASSET_NUMBER>
<DESCRIPTION>Buildings Um-Hany Arabic school</DESCRIPTION>
<LIST_G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Dec-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
<G_FIXED_ASSETS_COST>
<FIXED_ASSETS_COST>2468.5</FIXED_ASSETS_COST>
</G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Nov-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Oct-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-06</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
<G_PERIOD_NAME>
<PERIOD_NAME>Sep-08</PERIOD_NAME>
<LIST_G_FIXED_ASSETS_COST>
</LIST_G_FIXED_ASSETS_COST>
</G_PERIOD_NAME>
</LIST_G_PERIOD_NAME>
</G_ASSET_NUMBER>
</LIST_G_ASSET_NUMBER>
</G_SUMFIXED_ASSETS_COST>
</LIST_G_SUMFIXED_ASSETS_COST>
<SUMSUMFIXED_ASSETS_COSTPERREPO>4548732.119</SUMSUMFIXED_ASSETS_COSTPERREPO>
</TEST>
this my code in rtf file
<?for-each-group@column: G_PERIOD_NAME; PERIOD_NAME?>
PERIOD_NAME
<?end for-each-group?>
<?for-each-group: G_ASSET_NUMBER; ASSET_NUMBER?>
<?ASSET_NUMBER?>
<?for-each-group@cell:current-group();PERIOD_NAME?>
<?sum(current-group()/FIXED_ASSETS_COST)?>
<?end for-each-group?>
<?end for-each-group?>
and this sample of output
Asset Dec-08 Nov-08 Oct-08 Sep-06 Sep-08
2402
0 0 0 0 0
2403
0 0 0 0 0
2404
0 0 0 0 0
2405
0 0 0 0 0
2406
0 0 0 0 0
2407
0 0 0 0 0
2408
0 0 0 0 0
2409
0 0 0 0 0
2410
0 0 0 0 0
2411
0 0 0 0 0
2412
0 0 0 0 0
2413
0 0 0 0 0
2414
0 0 0 0 0
2415
0 0 0 0 0
2416
0 0 0 0 0
2417
thanks in advanceThanks Vetsrini for your help but when i tried to apply your code it give me the following error
Font Dir: E:\Program Files\Oracle\XML Publisher Desktop\Template Builder for Word\fonts
Run XDO Start
RTFProcessor setLocale: en-us
FOProcessor setData: E:\Documents and Settings\Administrator\Desktop\asset report\test\New Folder\testqq.xml
FOProcessor setLocale: en-us
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.apps.xdo.common.xml.XSLT10gR1.invokeProcessXSL(XSLT10gR1.java:586)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:383)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:201)
at oracle.apps.xdo.common.xml.XSLTWrapper.transform(XSLTWrapper.java:161)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:1015)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:968)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:209)
at oracle.apps.xdo.template.FOProcessor.createFO(FOProcessor.java:1561)
at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:951)
at RTF2PDF.runRTFto(RTF2PDF.java:626)
at RTF2PDF.runXDO(RTF2PDF.java:460)
at RTF2PDF.main(RTF2PDF.java:251)
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
at oracle.xdo.parser.v2.XSLTContext.peekExprValue4Grouping(XSLTContext.java:861)
at oracle.xdo.parser.v2.XPathFunctionCall.evaluate(XPathFunctionCall.java:526)
at oracle.xdo.parser.v2.PathExpr.evaluate(XSLNodeSetExpr.java:851)
at oracle.xdo.parser.v2.XSLForEachGroup.processAction(XSLForEachGroup.java:78)
at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
at oracle.xdo.parser.v2.XSLResultElement.processAction(XSLResultElement.java:180)
at oracle.xdo.parser.v2.XSLNode.processChildren(XSLNode.java:417)
at oracle.xdo.parser.v2.XSLTemplate.processAction(XSLTemplate.java:191)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:508)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:485)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:264)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:150)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:187)
... 16 more
thanks again -
I have a cross tab that looks like the one below.
Year 08 Year 09
Product x 10 15
product y 5 10
I want to insert a variance in a third column to show that product x had a 50% increase when comparing 09 to 08 etc... I cannot figure out how to do this in Crystal 11
thanksThe problem with the cross tab report in this context is that it has no idea that it will only ever contain two columns worth of data. It can't allow comparative operations based on the two data points you've identified... because what would it do if there were 3 columns? 4?
The way I get around this (usually) is to use grouping, and summary fields to create what appears to be a cross tab, but actually isn't. You can then just use your own formulas to do the calculations, and display it however you want. This actually introduces its own world of design hurt.
it is also possible to use the grid reference formulas to create a 'display text' that goes over the default 'total' field, but it's it a bit rubbish because the display text doesn't export...
The exceedinly complex way to pull it off is to use arrays. -
Cross Tab Column Header and Embedded or Calculated Member
Hello All
I am needing some help with a Cross Tab in CR2008.
My Cross Tab look as follows:
Rows______________Columns
......................................Fiscal Year
Account Number...........Summarized Field (Value Field)
The report spans three Fiscal Years but not all accounts have three Fiscal Years worth of data so some Cross tabs start 2009, 2008, 2007, Some report 2008 and 2007, Some just 2007 (and other variations). To get my cross tab working correctly I need to create a formula that get the CurrentColumnIndex based upon the Fiscal Year. e.g. If columnd header = 2009 column index = 0.
Can anyone advise how I would go about this?
Thanks
PhillipPhillip, go to your data source, and see if you can add a new connection,
one of those options should be (Command)
if you can add a Command, then you can put the SQL in the command section.
You will need to add the Command as a data source, and remove the old
data source once the command is added, you will be able to edit it if needed. -
CROSS TAB PRINTING IN PDF PROBLEM
Post Author: peachpx
CA Forum: General
Hi,
My report uses a Cross Tab query with multiple lines for each value. Originally, I only get one line for Total In. I modified Total In to include three lines Total Into Final, Total Into Initial and Total Out. It displays fine in the report, but when I try to print from the server it opens PDF file with only one line present Total Into Final and the other two lines are cut off. Is this a BUG in CRXII or is this can be fixed with correct formatting?
Please help!Hi,
cross tab is a diagonal report , u have to make query in such a way so that it returns the all field in row and columns way i.e in diagonal form .
U have to fetch total in same manner
Rgds,
Premraj -
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 -
Help in Cross Tab!!!
Hi All,
I have a samll issue when creating a cross tab report with the format like this:
Year (Group By Year)
Quarter (repeats for every Year)
Actual Budget Short
customer name Quarter amounts
TOTAL TOTAL AMOUNTS
I have been able to create a cross tab report with only year...i am having difficulties putting in the quarters....
any help is much appreciated.
I can pass the rtf template created for the yearly data.
Thanks,
Madhavan G VHi Vetsrini,
No offence taken. I appreciate all the help i can get from this forum.
Anyways, please find the the xml & code generated.
XML:
====
<ROWSET>
<RESULTS>
<INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
<YEAR>2005</YEAR>
<QUARTER>Q1</QUARTER>
<SALES>1000</SALES>
</RESULTS>
<RESULTS>
<INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
<YEAR>2005</YEAR>
<QUARTER>Q2</QUARTER>
<SALES>2000</SALES>
</RESULTS>
<RESULTS>
<INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
<YEAR>2004</YEAR>
<QUARTER>Q1</QUARTER>
<SALES>3000</SALES>
</RESULTS>
<RESULTS>
<INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
<YEAR>2004</YEAR>
<QUARTER>Q2</QUARTER>
<SALES>3000</SALES>
</RESULTS>
</ROWSET>
Code:
====
<?variable:c297;xdoxslt:create_groups($_XDOCTX, RESULTS/node()[local-name()='YEAR' or local-name()='QUARTER'], 'YEAR;QUARTER', 'v')?><?horizontal-break-table:1?>
<?for-each@cell:$c297?>
<?for-each@cell:xdoxslt:get_groups($_XDOCTX,'v','YEAR',string(.))?>
<?end for-each?><?end for-each?>
<?for-each@column:$c297?>
<?.?>
<?for-each@column:xdoxslt:get_groups($_XDOCTX,'v','YEAR',string(.))?>
<?xdoxslt:get_groups($_XDOCTX,'v','YEAR',string(.))?>
<?.?>
<?end for-each?><?end for-each?>
<?for-each-group:RESULTS;./INDUSTRY?><?variable@incontext:G1;current-group()?>
<?INDUSTRY?>
<?for-each@cell:$c297?>
<?sum ($G1[(./YEAR=current())]/SALES)?>
<?for-each@cell:xdoxslt:get_groups($_XDOCTX,'v','YEAR',string(.))?>
<?sum ($G1[(QUARTER=current())]/SALES)?> -- Problematic part. [i get the total of quarters rather than total of quarter on a year basis)
<?end for-each?><?end for-each?>
<?sum ($G1/SALES)?>
<?end for-each-group?>
<?variable@incontext:T;.//RESULTS?>
<?for-each@cell:$c297?>
<?for-each@cell:$c297?>
<?for-each@cell:xdoxslt:get_groups($_XDOCTX,'v','YEAR',string(.))?>
<?sum ($T[(./QUARTER=current())]/SALES)?>
<?end for-each?><?end for-each?>
<?sum ($T/SALES)?>
Thanks, -
Help with formatting for Cross Tab Report Crystal 2008
This is probably a simple question. I have a cross tab report that displays sales by month for a period of 6 months. These sales columns are formatted to be numbers with no decimals. In addition to these columns, I have inserted columns that display the percentage up/down in sales over the previous month. If I try to format the percentage columns, it changes every column to then display "##,##.##%" when I need to keep the sales columns at "##,###" with no decimal or percentage sign.
1. Is there a way to change the formatting of some of the columns but not all in a cross tab report?
2. If not, can I add a function that would change these in the calculation formula of the calculated member?
I tried to add "%" but it wants it to return a number.
Here is the current code:
//The calculation formula is used in place of the summaries in Calculated Members.
// This calculation formula must return a/an Number value.
If GridValueAt (CurrentRowIndex,CurrentColumnIndex-3,CurrentSummaryIndex) = 0 then 0 else
((GridValueAt (CurrentRowIndex,CurrentColumnIndex-1,CurrentSummaryIndex) -
GridValueAt (CurrentRowIndex,CurrentColumnIndex-3,CurrentSummaryIndex)) /
GridValueAt (CurrentRowIndex,CurrentColumnIndex-3,CurrentSummaryIndex)) * 100
Any help is appreciated.
Thank you,
TobiCarl,
Thank you for your help. I did try your method but still couldn't get it to ignore the fact that it wanted a number. I changed my approach a litte and managed to solve the problem. Here is the method that I chose which managed to solve the problem. If this is a poor way to solve it, please let me know as I am always open for new ways.
Format Field > Number Tab > Customize > Currency Symbol Tab
Checked Enable Currency Symbol Fixed, changed currency symbol to %. This is the same thing that I did before which changes it for all columns.
Beside Enable Currency checkbox, I added this formula:
// This conditional formatting formula must return one of the following Currency Symbol Constants:
// crNoCurrencySymbol
// crFixedCurrencySymbol
// crFloatingCurrencySymbol
If GridRowColumnValue("InvoiceLine.TxnDate") = Date(0,0,0) then
crFixedCurrencySymbol
else
crNoCurrencySymbol
My added columns have a null date field so they take the currency format. My other columns do not so they do not take the formatting.
Thanks again for the help.
Tobi
Edited by: Tobi@TABeverage on Dec 2, 2009 3:58 PM -
Hello everyone...
Here is some quick background info on my project:
1) I am attempting to write a Crystal Report (version 10) to automatically capture crime statistics for a previous time period based on a current time period entered into the Crystal Report parameter. The current date range to automatically be captured is the previous seven weeks. For example, if a user enters the date range of June 15, 2008 - August 2, 2008, the Crystal Report will automatically gather data for the two date ranges of April 27, 2008 - June 14, 2008 (the previous date range) and June 15, 2008 - August 2, 2008 (the current date range). The purpose of this is to automatically gather crime statistics for two equal date ranges to compare crime rates.
2) I have been able to successfully construct a formula to gather the previous date range.
3) I have constructed a cross-tab but I am having difficulties formatting the cross-tab to display data as I desire.
With the background of my project now described I will move into the main problem I am experiencing. I am able to display the data for all the necessary weeks in the cross-tab; using the same date range above I am able to show data for the fourteen weeks of April 27, 2008 - August 2, 2008. However, I wish to have a single cross-tab display the grand totals for just the previous date range while having weekly totals and a grand total for the current date range.
Using the same date ranges above as an example, the date range of April 27, 2008 - June 14, 2008 will show just the grand totals for all seven weeks of that period. Conversely, I would like to have the date range of June 15, 2008 - August 2, 2008 show weekly totals as well as grand totals for all seven weeks of that period.
I would like to keep all this data in a single cross-tab due to having to put the data in another crime analysis report.
Any help you can provide is most appreciated...let me know if I can provide further info. Just so you know I am a bit of a beginner when it comes to Crystal Reports.Hello, you might try this:
1) Create a formula field in your details section with this:
Whileprintingrecords;
If (table.date >= "start date of your pre-date range" and
table.date <= "end date of your pre-date range") then 'Pre-Date'
else
if (table.date >= "your 1st week start" and table.date <= "your 1st week end") then 'Week 1'
else (if table.date >= "your 2nd week start" and table.date <= "your 2nd week end") then 'Week 2'
else .... for the 7 weeks you want a separate column.
2) create the cross-tab and put the formula field as the column.
3) I believe if you right-click on the total field to the far right and "Format Field" you can use the "Display String" option to delete the sum of the previous week's from the CurrentFieldValue and use the TOTEXT() function to display it. This will only display the sum of your current 7 weeks.
You may want to go change the "Group Options" for the column to Sort in "Specified Order" and create named groups for each of your column headings. I can explain how you would do this if you need it. -
I have a cross tab defined.
can we show levels hierarchy in cross tabs?
I have a hierarchy described. I have a cross tab such a way that,
In th description on cross tab:
If value at Level4 = 'computers' this table gives us the all sublevels under level 4 i.e.level 5
But, even level 5 has a sublevel as Level6.
I need to dsiplay even level 6 in the outcome.
Its this way:
This is my cross tab:
http://img651.imageshack.us/img651/9179/76869600.jpg
and the code in box C: <?crosstab:c547;"//SQL_ROW[level4='computers']";"level5";"sum_date{,o=a,t=t}";"price";"sum"?>
This is my current output:
http://img64.imageshack.us/img64/3011/89739442.jpg
But I need this as outcome: how do I achieve this? Please help me :
http://img834.imageshack.us/img834/84/27269357.jpgI am not clear of where to put the condition.
can anyone help me please.
This is my Cross tab:
http://img163.imageshack.us/img163/9575/78212975.jpg
This is my current out put:
http://img411.imageshack.us/img411/7033/55191078.jpg
But I need this Out put:
http://img834.imageshack.us/img834/84/27269357.jpg -
Post Author: ivanl
CA Forum: Formula
Hi,
Using XI and win XP.
I have been using excel to get the info I need, but thought it must be possible to do it right in the cross tab. I need two different cross tabs, and do not know how to do the following.
The fields I have in the dataset include:
- product.type (different products and one field "product.type = 'customer' that is the customers)
- product.balance (balance of each product for each customer)
- formula for age segmentation
What I need to input into the cross tab is to have the segmentation across the top, products for the rows and as the summary:
1) penetration rate (i.e. count of product types divided by # of customers which is product.type = customer)
2) $ per customer (product balance divided by customers)
3) $ per product (product balance divided by # of products)
Help would be awesome. I have no idea how to do this in Crystal
To date, I have set up a cross tab with segment across top, products down the rows, and as a summary using count products and sum of balances. I would input this into excel and do the calculations.
IvanHi, this may help,
http://www.chelseatech.co.nz/pubs.htm
Look down on the right side, you should see
Sample Report Files
Sales Calendar
Calendar Report
Running Totals in a Crosstab
Wrapping Crosstab
PDF Drill Down
Crosstab calculations
Hierarchical Summary in a formula
You can download an example of Crosstab Calulations from this site.
They have some newsletters that also contain CR hints. -
Cross Tab issue , Need a Help
HI Expery
In BO Webi report need to show dynamic columns in Report after transposing rows to columns.
Data in Table is like below:
Col1 Col2 Col3
101 Abc 801
101 Abc 802
101 Abc 803
101 Abc 804
101 Abc 805
102 RNM 2009
102 RNM 2010
102 RNM 2011
103 RYZ 3465
In Report It should be as
Col1 Col2 Col3 Col3 Col3 Col3 Col3
101 Abc 801 802 803 804 805
102 RNM 2009 2010 2011
103 RYZ 3465
We have tried implementing the same using cross tab , but issue is in Cross col3 grows with all values present for all records. Here, if we use cross tab we are getting result as below:
Col1 Col2 Col3 Col3 Col3 Col3 Col3 Col3 Col3 Col3 Col3
101 Abc 801 802 803 804 805 2009 2010 2011 3465
102 RNM 801 802 803 804 805 2009 2010 2011 3465
103 RYZ 801 802 803 804 805 2009 2010 2011 3465Hi Ahmed
You can use the below logic.
col1 & col2 u can keep it as columns in a cross tab. Now keep col3 as row but here you need to do one thing . Click on the formula button for col3 field and then write the following syntax in it.
= col3 IN ([Col1];[col2])
By using this calculation context it will fetch only the data which is related to the first two columns. so the extra data which u were mentioning about will got to the next row.
Regards
Shyam
Edited by: Shyam Rapeti on Jan 25, 2012 3:20 PM -
Formula/manual cross tab help
my variable name in my database is rsq01. the results for this variable are 0,1,2,3,4,5.
I need to setup a crosstab that only shows the results 1-5 and what percent of the total results they are, 0 needs to be excluded
from the crosstab and from the count that is used in figuring the percentage because 0 is actually null.
I have been told to do this I will have to make a manual cross tab using formulas.
Any suggestions/examples on how to do this? Thanks.Pretty simple actually. Just create 5 formulas...
//Formula 1
Global NumberVar rsq01;
IF rsq01= 1 THEN {TableName.FieldName} ELSE 0
//Formula 2
Global NumberVar rsq01;
IF rsq01 = 2 THEN {TableName.FieldName} ELSE 0
//Formula 3
Global NumberVar rsq01;
IF rsq01= 3 THEN {TableName.FieldName} ELSE 0
//Formula 4
Global NumberVar rsq01;
IF rsq01= 4 THEN {TableName.FieldName} ELSE 0
//Formula 5
Global NumberVar rsq01;
IF rsq01= 5 THEN {TableName.FieldName} ELSE 0
Then group by the appropriate field, sum each of the formulas and hide the details.
HTH,
Jason -
Need Help Trying to Populate Cross Tab in SAP BO WEBI
Hi,
I know in MS Excel I can Drop Data into the Row and Column Label and get the following Cross Tab:
HouseA HouseB HouseC
Elevator Bank One 1
Elevator Bank Two 1
Elevator Bank Three 1
I truly how this makes sense and if it doesn't, I understand and will keep looking.
I need in SAP WEBI to be able to do the same thing.
I have the Cross Tab created in Webi, but can't see how to populate the Rows of Elevator Banks to display which houses have Elevator banks.
I want to show Elevator Bank 1 is in House A, Elevator Bank Two is in House B as well as Eleveaotr Bank Three begin in House B
This is just an example.
Trying to Populate the Webi Cross Tab is driving me crazy.
I have the Lay out but can't populate the data.
The data contact is Alpha Characters, but I want just the Numeric Values
When I go to MS Excel 2007 and Pivot this, I drop down the Eleveators into the Rows and Drop the Houses into the Column as well as the Value and the numerical values populate for me.
Can't for the life of me figure out how it works in SAP WEBI
Again, I hope this makes sense and if not, I'll keep looking.Issue resolved.
I needed to created a message for HouseA, B and C which provided the item count needed
Something like the following:
Measure One
Occupied: =Count([Elevator Bank One]) Where ([House A]="Occupied")
Measure Two
Vacant: =Count([Elevator Bank Two]) Where ([HOUSE B]="Vacant")
Measure Three
Unknown: =Count([Elevator Bank Three]) Where ([HOUSE C)]="UNKNOWN") -
Help on conditionally Formatting Field in a Cross Tab
Hi all,
I like to conditionally format a number field in a cross tab, ie. on a certain column the number should show 2 decimal places, otherwise no decimal places. I have tried a formula in the Decimals of the Format Field, If {Command.COL_TITLE}= "G"
Then
2
else
0.
Column G is the one that is to display the number in 2 decimal places. The formula runs, but it never {Command.COL_TITLE}= "G" is never true, ever. COL_TITLE is the columns of the Cross Tab.
Any ideas ?
Thanks
AustinAustin,
If you are trying to format a column then try using the GridRowColumn function.
In the Customize Style tab highlight the column field and check what the alias for formula is. Then format the decimal places for the summarized field with a formula similar to the following;
If GridRowColumn("Alias for formula value") = "G" then 2 else 0
Maybe you are looking for
-
Types of batteries compatible with Magic Mouse
Hi There, Recently I bought a magic mouse, and till now it has been amazing. But as all users, I too face serious battery drain issue with magic mouse, but I think its worth its usage . So I thought to switch to couple of rechargeable batteries for m
-
Forcing Screen Shared Windows to Appear in a Secondary Display
I have a 2009 Mac Mini supporting dual displays (extended desktop mode). The second display is used for "screen sharing" a second mac mini on my network located in a different part of the house. Right now, each time I open screen sharing, I have drag
-
Did anyone try to cluster BEA Portal 7.0 sp1
Hi, Am trying to cluster BEA Portal sp1 ,everything goes fine but when i try to access the portal on both the servers on the second server i get a Portal Null State Exception .The App works fine on the Primary Server ,but shows bizarre behaviour on t
-
Dynamic change of wage type texts on salary slip
Hi Gurus. Maybe someone can help with a request. I want to do following. If someone input a wage type e.g. 6666 in Infotype 0015 I want to open a new input-field. In this input field the user should enter a text. In the payroll run I want to change t
-
PXE-E51: No DHCP or Proxy DHCP offers were received
Ok so I'm new to this and decided hey lets have a go. I got it all working great and then all of a sudden after a server reboot I got this: PXE-E51: No DHCP or Proxy DHCP offers were received My DHCP,DNS,AD and WDS are all on the same box, I spent ho