I have a series of very small positive and negative values stored in oracle which I am attempting to display in crystal reports. Crystal is displaying all the values as 0. However if I turn the max decimal places on I will see some values as 0.00...00XY.
I would like these values simply displayed as scientific notation with something like 1.2E-12.
It seems crystal automatically converts very large values to SN, but not very small values?
This is not possible so I went and created a view instead for each needed table. Kind of a dumb solution, but it seems the only way possible.
Related
When connecting to a data source and importing data into Tableau decimals are limited to 16 places. I have large decimals that are being multiplied by millions of products so these rounding errors are affecting my end calculations.
I made sure the data type is coming in as Number (decimal).
I would like the data to be imported into Tableau un-rounded.
Tableau, like Excel, uses floating point precision for its numbering system.
This means that Tableau will only provide 15 digits of precision for numbers.
If this were for display purposes, I would suggest bringing the numbers in as strings. See this similar answer. However, because mathematical operations are being performed, the precision is unavoidable.
If possible:
Perform mathematical operations elsewhere. For example, a custom SQL query that will bring the table to Tableau with operations already complete.
Try to operate in a smaller scale - instead of multiplying by millions, multiply by hundreds/thousands and change the name of the field to represent the scale. (ie: 'thousands of millions' instead of billions.) Something like this perhaps.
This seems pretty simple, but I can't seem to find a way to do this.
I need to multiply all rows in a chart - or all columns, whichever is easiest. AKA. I am looking for something like the product() function in Excel.
Any ideas on how to accomplish this?
EDIT: Row values may change, so this needs to be a dynamic calculation. Like a function to aggregate all values into a product of the values.
A calculated field can be created with: sum([Sales])*PREVIOUS_VALUE(1)
This gives the running product. Then, that field can be inserted into the table.
You can certainly create a calculated field that will multiply various columns together. Something along the lines of [Column1] * [Column2] * [Column3] will generate a new calculated measure that is the product of all three columns.
That being said, if you're doing that much data manipulation within Tableau, you should probably be giving some hard thought as to why that's necessary. While calculations are certainly possible and new Tableau 9 features such as level of detail functions make doing calcs on measures not present in your viz easier, Tableau is primarily a data presentation layer. Data manipulation apart from simple calcs and pivot/unpivot operations should be done upstream. Doing advanced manipulations within Tableau, while sometimes/often possible, can be very hard to debug and reproduce.
I have a spreadsheet containing both real and complex numbers. Some of them are like
0.48686
while others are like
4.85609+j3.24184
I am trying to round them, in order to have only two decimal places.
While Format > Cells works on the real numbers, it doesn't on the complex ones, because LibreOffice interprets them as a string.
I have looked up in google, but couldn't find anyone with the same problem.
I wanted to know if there was anyone who had already developed a macro for that, before trying to do it myself.
You could round the complex number by combining the ROUND() and the COMPLEX() functions:
A3 has the formula
=COMPLEX(A1;A2)
while A4 has
=COMPLEX( ROUND(A1;2) ; ROUND(A2;2) )
(adapting a solution from a german ms office forum to OOo.Calc / LO Calc)
Good Morning!
I am working in Crystal Reports 2008 & have a report template that I'd like to use with various dynamic parameters (called in a downstream application).
My data can vary from being on a scale of 0-1 to a scale of 1,000-10,000.
I'd like to display it with 3 significant figures so when the report pulls in a dataset that
looks like this --> displays like this
0.76895 --> 0.769
0.6672 --> 0.667
1.0335 --> 1.03
but when the data set
looks like this --> displays like this
12,125.65 --> 12,100
956.35 --> 956
4,352.22 --> 4,350
My current work around is to make two templates-- one to use with my small value data, set to display 3 decimal places; and another to use with my large value data, set to display no decimal places.
I was wondering if there was a way to set significant figures displayed rather than decimal points?
Oh! I would do it in SQL first and pass it in as a string but I need these as numeric values so I can summarize them elsewhere in the report. Thanks.
If you right-click on your numeric field and choose format, Customize..under the number tab you get a bunch of choices to set the decimal separator, how many decimals to display, etc. choosing the formula button next to Decimals, you could put in a formula that looks at the amount of digits after the decimal dot and then either set the decimals to 2 if there are more than 3 decimals, and to zero decimals if there are 2 decimals. They key here is to get the order right. You want to check for the 2 decimals first and then for 3 or more decimals. If you do it the other way around the formula will display everything without decimals.
Hope that helps,
Chris
Use something like this.
ToNumber(Totext(<<DatabaseField>>,0,""))
Friends,
This is the formula in the crystal reports 9.
cdbl({nrconsolidated.collamt})/100000.000
nrconsolidated table is having 9 records.
in that one record's collamt value is 154250.
but in the crystal reports output its showing as 1.543 instead of 1.542.
i want only 3 decimal points.i dont know where the mistake is coming from?
in the crystal reports, i clicked on that collamt field and checked the data by seeing the browseData option...its showing as 154250.
how can i solve this issue? its showing the correct value in 4 decimal points but i want only 3 decimal points.
thanks
The below code will truncate the result after the calculation has been performed, and output it to 3 decimal places. This works for Crystal Syntax and should for Basic as well - I believe it is common amongst both.
truncate(cdbl({nrconsolidated.collamt})/100000.000,3)
On the field set the decimals 1.000 and rounding 0.001 will display what you want.