SSRS Dynamic percentage column value
Hi. I have an SSRS report. Within a Tablix how do I create a percentage column that works out the result based on two other values with the table?
See below:
In the % Total Demand column how do I for each row dynamically work out the total / the value * 100
e.g. For the first row whats the % Demand for Portfolio 5.5+5.5+0.3 / 5.5 * 100 (or something along those lines)
Looking at this I guess the % Total Demand row should sit horizontally.
Thanks!
So this 10.9 is sum of all months data and whats is this 11.4 are you calculting it from SQL query or its just hardcode value.
If you your calculting 11.4 from SQL then
Sum(Fields!Expresion.Value)/Fields!Expression.Value*100
else
Sum(Fields!Expresion.Value)/11.4*100
Sachin Vashishth MCTS
Hi - 11.4 is total demand (bottom row). I should be getting 95% for first row. 10.9/11.4*100
My table values have changed slightly but I'm getting about 1400% as an answer.
Similar Messages
-
SSRS - Expression to color column value dynamically in Matrix
Hi ,
I have a matrix which looks like :
The <<Expr>> value can be 1 /0 /"-" .
The Expr value is being calculated dynamically.
The data set query I am using has a column called due_days.
In the color expression of the <<Exp>> box I am using the expression as :
=IIf(Fields!Due_Days.Value>14 and Fields!Notes_Count.Value>0,"Blue",(Iif(Sum(Fields!Notes_Count.Value)=0 ,"Red","Black")))
My requirement is if the Due_Days column value is >14 then I need to highlight the value as blue else black and if value is 0 then red. When I use the above query it is just highlighting the color blue for 1st column only. Eg: 4th row . Due days for month
of Oct and Nov is > 14 but it shows blue only for month of oct.
How can i resolve the issue?In select query i have 5 columns:
Due days(Which is difference between 2 dates) ,
Notes count (Which is just a count of notes entered or not having value 0/1 and value '-' if another column CRD is greater than the matrix month and year.)Eg: below date 11/12/2014 is greater than Oct 2014 hence Oct 2014 should have "-"
Month Name , Year , Month Nbr (last 6 months which I cross joined with the table to get counts for each month)
The matrix has year and last 6 month as column groups
Color coding should be if notes count is 0 then red ,if notes count is 1 and due_days> 14 then blue else black . When i try to use expression for color as i mentioned above, it colors only 1st colum.eg: 2nd row
Nov 2014 is blue but for jan 2014 also it should show blue as due days>14 .
Is there any way i can do that ??
Eg: data set returns value as :
Due Days CRD Month
Month_Nbr Year Notes _Count
5 2014-11-28 00:00:00.000 December 12 2014
0
5 2014-11-28 00:00:00.000 February 2 2015
0
5 2014-11-28 00:00:00.000 January 1 2015
0
5 2014-11-28 00:00:00.000 November 11 2014 1
5 2014-11-28 00:00:00.000 October 10 2014 0
5 2014-11-28 00:00:00.000 September 9 2014 0
Matrix is of the form :
YEAR
MONTH
CRD Notes_count -
Retrieving old column values from a after delete trigger dynamically
I have a single audit table for deletions
and the table structure has the following columns
1: table_name
2: column_name
3: column_value
I am writing a trigger on tables for which i want to have delete audits and i am dynamicaly
retrieving the column names but i am unable to retrieve the column value dynamically;
I tried to use the following statement but doesn't return the column value
sql_stmt:= 'select :1 from dual';
execute immediate sql_stmt into col_value using
':old.'| |v_col_name;
where v_col_name is the name of the column which i retrieve dynamically using the
dbms_sql.describe_columns procedure.
Is their any way if i can retrieve the old column values in the trigger dynamically if i already
have the column names in variables..
Thanks in advance.
nullI don't know if Kevin's tip Help Mr. Sameer, but it did help me gain access to pre-deleted row column values.
I did discover, however, that if the columns from the about-to-be-deleted row are used as inserts into another table, Oracle serves up a nasty-gram informing the user that values from the about-to-be-deleted table are unreliable.
I was able to circumvent this constraint by assigning the about-to-be-deleted column values to local PL/SQL varables, then perform the insert using the variable values.
-Bill McNamee
NHDOT
[email protected] -
How Can I get multi column values from dynamic search help?
Hi Gurus;
I'm using dynamic search help in my program.
I want to get multi column values from search help. But I dont know solution for this issue.
I'm using F4IF_INT_TABLE_VALUE_REQUEST FM.
How Can I get multi column values from dynamic search help?
Thanks.Believe it or not, the same FM worked for me in a dynpro. I will try to explain here how it works in custom screen and then you can do your work for other screens or program types. I am not going to write my actual work but will explain in general.
I have 4 fields (FLD1, FLD2, FLD3, FLD4) and i made the search based on FLD2 and when user click on a line (could be any field), then this would bring the line on to the screens.
There are like 3 steps.
You have your value_tab for my fields FLD1, FLD2, FLD3 and FLD4. This is just the data that we pass into the FM. (data: IT_VALTAB type table of ZVAL_TABLE)
Next map the screen fields into an internal table (data: It_dynpfld type table of dselc ). I also have other internal tables defined (just to keep it straight, i will be putting here) data: It_return type standard table of ddshretval.
Next step is to call the function module. Make sure you have values in IT_VALTAB.
call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
retfield = 'FLD2'
value_org = 'S'
tables
value_tab = It_VALTAB
return_tab = It_return
dynpfld_mapping = It_dynpfld
exceptions
parameter_error = 1
no_values_found = 2
others = 3.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
else.
perform get_selected_fields tables It_return.
endif.
The code within the perform GET_SELECTED_FIELDS - We need to map the result fields after user selects it. The code goes like this. This is step is to update the dynpro fields.
I need a internal table as well as a work area here. like,
data: lt_fields type table of dynpread,
la_fields type dynpread.
field-symbols: <fs_return> type ddshretval.
so fill out LT_FIELDS from the IT_RETURN table
loop at lt_return assigning <fs_return>.
la_fields-fieldname = <fs_return>-retfield.
la_fields-fieldvalue = <fs_return>-fieldval.
append la_fields to lt_fields.
clear: la_fields.
endloop.
Call the FM to update the dynpro
call function 'DYNP_VALUES_UPDATE'
exporting
dyname = sy-repid
dynumb = '1002' "This is my screen number. You could use 1000 for selection screen (hope so)
tables
dynpfields = lt_fields
exceptions
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronummer = 4
invalid_request = 5
no_fielddescription = 6
undefind_error = 7
others = 8.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
good luck -
Dynamic Lead column repeats the same value
Hi, I have a dynamic lead column with reporting groups attached to them. Also, I have date column in the data column which is also dynamic. In the layout the reporting group field shows only the first entry in the variable and repeats itself. When I enter the data and save it, data is saved in the right reporting groups...If I replace day with week(and no further changes in the layout) reporting groups show up...is it something to do with date field?
Reporting Group 01/01/2008 01/02/2008 01/03/2008
1 $100 $ 120 $ 150
1 $110 $ 130 $ 160
In the database it shows the second line reporting group as 2(which I want) but in the layout it shows up as 1.
How can I make it show the correct value. Thanks,
BulusuHi,
When any of the dynamic lead columns or data columns you select them as dynamic, automatically the Infoobject is filled by the system and it would be greyed out. Copy the same infoobject like 0FISCPER, 0FISCYEAR and paste in the Description of the layout (for that dynamic column). Then it will pick up on its own.
Otherwise if you put your own description like date, month and year etc. for all the columns or rows, as the case may be, it will give similar description.
Regards,
Ravi -
Dynamic changing column using one calumn values
Dear All,
I have one Column having values in single row as Zones|1,Zones|2,Zones|3,Zones4,Venue|Ind,Venue|eng,Country|india,Country|africa......
In report we have to take Zones, venue, country dynamically and correponding values has to be shown in the column area. Pls provide me any solution .Hi Shyamal,
The closest thing to doing this dynamically would be with a Crosstab report but it won't show you the details, only summarize on the column.
Unless you know all the possible columns you may have, you can create something like:
If {TABLE.FIELD} = "Zones" Then
Else If {TABLE.FIELD} = "1,Zones" Then
And so forth. But you will have to know each and every possible value for that column.
Good luck,
Brian -
Dynamically passing the Columns values
HI all,
I am trying a pl/sql block which which take a string and execute it dynamically. Suppose below is string
M_COL := Q'[(P_CODE=> ':DEPTNO',P_CODE_TYPE => 'STATE')]';
Now trying to execute it. using below
M_STR := 'SELECT CHK_DEPT' || M_COL || ' FROM EMP WHERE EMPNO=''7499''';
EXECUTE IMMEDIATE M_STR
INTO M_DATE;
Now what i want is M_STR vairable to executed as
SELECT CHK_DEPT(P_CODE=> DEPTNO,P_CODE_TYPE => 'STATE') FROM EMP WHERE EMPNO='7499'
instead of
SELECT CHK_DEPT(P_CODE=> 'DEPTNO',P_CODE_TYPE => 'STATE') FROM EMP WHERE EMPNO='7499'
other in other way in parameter P_CODE Column value of DEPTNO should be passed.Also note that DEPTNO column in string M_COL is Dynamic.i.e
M_COL := Q'[(P_CODE=> ':DEPTID',P_CODE_TYPE => 'STATE')]'; OR
M_COL := Q'[(P_CODE=> ':EMP_ID',P_CODE_TYPE => 'STATE')]';
Any suggestions, Please share with me.ibney
Actually you can use it by using the EMP and DEPT Table. If you Require EMP and DEPT tables structure and data, then let me know.
Function which i created is below.
CREATE OR REPLACE FUNCTION CHK_DEPT(P_CODE NUMBER,P_CODE_TYPE VARCHAR2) RETURN VARCHAR2 IS
M_NAME DEPT.DNAME%TYPE;
BEGIN
FOR I IN (SELECT DNAME FROM DEPT WHERE DEPTNO = P_CODE) LOOP
M_NAME := I.DNAME;
END LOOP;
RETURN M_NAME;
END; -
How to Update the oracle toad column value in table by using SSRS 2008
Hi Team,
How to update the oracle DB table column value by using SSRS 2008.
Can any one help me on this.
Thanks,
Manasa.
Thank You, Manasa.VHi veerapaneni,
According to your description, you want to use SSRS to update data in database table. Right?
Though Reporting Services is mostly used for rendering data, your requirement is still can be achieved technically. You need to create a really complicated stored procedure. Pass insert/delete/update and the columns we need to insert/delete/update as
parameters into the stored procedure. When we click "View Report", the stored procedure will execute so that we can execute insert/delete/update inside of the stored procedure. Please take a reference to two related articles below:
Update Tables with Reporting Services – T-SQL Tuesday #005
SQL Server: Using SQL Server Reporting Services to Manage Data
If you have any question, please feel free to ask.
Best Regards,
Simon Hou -
SSRS Compare a string value in an column
I need to show a text box that shows a message if the string values of a column on SSRS report have mixed values.
I need to compare the first three letters of a string to see if its different. If different then unhid Textbox and show a message. How can I do this in SSRS or SQL (if sql how do I feed it to SSRS)?
For example
Substring(alloy,1,3) <> Substring(alloy,1,3)
ALLOY
KZA1
KZD1 << is different
KZA2If your scope is the whole dataset then you can add a total row to the tablix outside any groups or
simply add a textbox below the tablix and apply the same principle:
=IIf(Min(Fields!Alloy.Value,"DatasetName") <> Max(Fields!Alloy.Value,"DatasetName"), "Mixed Alloy", "")
=IIf(Min(Left(Fields!Alloy.Value,3),"DatasetName") <> Max(Left(Fields!Alloy.Value,3),"DatasetName"), "Mixed Alloy", "")
This should do what you are asking. The only way that the minimum value for alloy will equal the maximum value for allow is if all values for alloy in the dataset are the same. When that happens, empty string is displayed in your text box rendering it invisible
if you set borders appropriately. Otherwise you will see "Mixed Alloy" in the text box.
"You will find a fortune, though it will not be the one you seek." -
Blind Seer, O Brother Where Art Thou
Please Mark posts as answers or helpful so that others may find the fortune they seek. -
Summing values in dynamic table columns
I'm having some difficulty figuring out how to sum column
values in dynamic tables. In other words, I have created a dynamic
table (php/mysql). One column has a list of prices, and I need to
sum the list of prices. I know this is pretty simple stuff. Can
someone direct me to an example of the appropriate code?"firalivet" <[email protected]> wrote in
message
news:go1j76$d4l$[email protected]..
> One column
> has a list of prices, and I need to sum the list of
prices. I know
> this is
> pretty simple stuff.
There are several ways to do this, but a simple way is to
create a
variable to hold a running total and add the current price to
it when
you display each row. The following is a simplified example
of the
code:
<?php $total = 0; ?>
<?>php do { // this is the start of the repeat region
?>
<tr><td><?php echo
$row_recordsetName['price']; $total +=
$row_recordsetName['price']; ?></td></tr>
<?php } while ($row_recordsetName =
mysql_fetch_array($recordsetName)); // end of repeat region
?>
<tr><td><?php echo $total;
?></td></tr>
David Powers
Adobe Community Expert, Dreamweaver
http://foundationphp.com -
Aex: dynamic url - need to pass corresponding column values to external url
Hi All,
I have created a report in which am trying to click on a column link which is a external url. In the url, part of column value needs to be passed as ID.
Example: Report
Name ID Dept Details
King FIN3413900 Finance Link
James ACC3445812 Accounts Link
So when I click on Link it should take me to the page : (See below example)
Display image for BLOB Download link in Interactive Report (For King)
Conditional regions (For James)
MessageID is no from the column ID. (FIN3413900). Hence it needs to be passed corresponding to the row clicked.
Common link is http://forums.oracle.com/forums/click.jspa?searchID=-1&messageID= (Only the number is derived directly from column ID).
I hope the requirement is clear. If any clarifications required let me know.
Please help me out with the possible solutions....Thanks in Advance....
Regards,
VinothHi,
Go to the Report Attributes of your report. The column you have defined for the column link click on the edit icon. In the Column Link section choose target URL and in the URL field enter :-
http://forums.oracle.com/forums/click.jspa?searchID=-1&messageID=#ID# Where ID is the name of the column that holds the FIN3413900.
Hope that makes sense :o)
Regards
Paul -
Re-enable column values in tabular form before submit
Hi,
I am using Apex 4.1. I have a tabular form. I created a dynamic action to disable some of the columns on page load.
It works fine and I am able to add new rows. But when I click submit, all the column values are null and it is throwing validation error.
I need to enable all the columns before submit. I invoked a javascript to enable all the fields, but still i get the validation error.
I also tried creating dynamic action to enable the values but still I get the validation error becuase the values are all null.
Please help me to resolve this issue.
Thanks
SRPer HTML standards, disabled items are not submitted. Therefore if they are disabled at the point of submit, their corresponding session state values will be null (as you discovered). Apex validates against what is is session state, not against what is on your screen, so since the values didn't get submitted (per standards for HTML disabled items) that's why Apex thinks they are null.
Before submit, re-enable the items/columns and it should work fine.
Edit: Sorry, looks like you are doing this already. But are you doing it in the right order?
How I have done it is:
1. Change the save/apply changes button (whatever is doing the submit) to call a URL.
2. Make the URL call javascript, such as:
javascript:formSave('SAVE');
3. Put a javascript function on your region or page (hypothetical example):
<script type="text/javascript">
function formSave(pRequest)
{ //Put all checking and processing prior to form save here.
var vRequest="SAVE"; //default value taken from orig. "apply changes" button
if(pRequest)
vRequest=pRequest;
enableAllCells(gMaintActionCol); //Put whatever code you have to re-enable your tabular form items here, must fire before apex.submit.
//Do the save
apex.submit(vRequest);
</script>Edited by: gti_matt on Dec 1, 2011 3:04 PM -
Function short dump - A dynamically specified column name is unknown.
Hello,
I've created BRF fuction according to the Note 1466868 - Dunning by collection strategy with BRFplus. I get short dump during simulation of function with following exception:
"A dynamically specified column name is unknown. "
Runtime Errors SAPSQL_INVALID_FIELDNAME
Exception CX_SY_DYNAMIC_OSQL_SEMANTICS
No. Ty. Program Include Line
Name
19 METHOD CL_FDT_ELEMENT================CP CL_FDT_ELEMENT================CM012 129
CL_FDT_ELEMENT=>GET_VALUES_DDIC
18 METHOD CL_FDT_ELEMENT================CP CL_FDT_ELEMENT================CM011 124
CL_FDT_ELEMENT=>GET_VALUES
17 METHOD CL_FDT_WD_RENDER_VALUE_INPUT==CP CL_FDT_WD_RENDER_VALUE_INPUT==CM00G 139
CL_FDT_WD_RENDER_VALUE_INPUT=>VALIDATE_VALUES
In my opinion there is uncorrect query.
Current version:
. SELECT FIKRS AS VALUE NAME AS TEXT FROM FMBS_BS_T
INTO CORRESPONDING FIELDS OF TABLE lt_value
WHERE LANGU EQ 'E'.
instead of:
. SELECT FM_AREA AS VALUE NAME AS TEXT FROM FMBS_BS_T
INTO CORRESPONDING FIELDS OF TABLE lt_value
WHERE LANGU EQ 'E'.
My sap version:
EHP4 FOR SAP ERP 6.0 / NW7.01
SAP_BASIS 701 0003 SAPKB70103
Do you know any note or solution to resolve this problem.
Best regards,
Jacek WitczakHi, I came back to working on "Dunning by collection strategy with BRFplus". According to your sugestions, I raised the level of components:
SAP_BASIS Level 09
SAP_ABA level 09
PI_BASIS level 09
SAP_BW level 09
But still I have the same short dump.
Shoudl we raise any other components? Maybe you know note, which resolve this problem? -
How to accessing current row report column value in Lov Query?
Hi,
which access methods (eg. bind variables, substitutions, ...) for getting the current row report column value can be used in the "Lov Query" property of a report column?
As what I know of and what I have read on the forum there are no bind variables for the report columns. For the "Link Text" property it seems that the column values exist as substitution strings (#COLUMN_NAME#). But they don't work in the Lov Query. => And would be good because of a hard parse each time the Lov query is executed.
The following post (Re: Simulating a correlated sub query in lov
is showing a solution to use package variables for temporary storage of the referenced value, but the only problem with that solution is that if a new record is added with the "Add rows to tabular form" process the package variable still contains the value from the last queried row! Is there a way (variable, APEX package, ...) to determine if the lov query is executed for a new record so that the package can return null?
I know that I could write the package in a way that the value is immediately cleared when lov_pkg.keyval is called (one time read), but then I would have to create several variables if I'm accessing the value multiple times in the query or in another query => I think an one time read solution would be very obscurely.
Thanks for your help
Patrick
http://inside-apex.blogspot.comHi Patrick,
I agree that it's a waste to continually use Ajax to go back to the server to get the contents of a dynamic select list.
There are no bind variables for any row item - but what you do have, as per my previous post, is the value of the data entered by the user in the first row. You can pass this into your application process (using get.add("VARIABLENAME", value)), which can use it to retrieve the correct LOV in your Ajax code - this will give you a "bind variable" that your process can use.
What you could do, however, is generate hidden select lists on your page - one for each possible LOV list and replace the contents of the new row's select list with the contents of the appropriate hidden select list. This is easy to do with javascript (using innerHTML functions). Obviously, though, the usefulness of this depends on the number and size of the select lists.
Even if you don't generate them to start with, you can keep a copy of any select lists returned by Ajax in the DOM for use on new rows. So, if you have retrieved a select list, you will have a copy of it in DOM which you can then copy into the new row. If you don't have the list in DOM, use Ajax to get it, store a copy of it and copy it into the new row.
Which method you use will depend on the number/size of select lists needed. If they are few in number and/or size, I would suggest generating hidden lists. If they are large, use Ajax to get them once, store them and then retrieve them from the DOM when needed.
There is another thread here where Arie recommends going to the server every time to make sure you get the most up-to-date data for the lists. If you want to follow this advice, for this reason, use get.add("VARIABLENAME", value) to pass the value to your process. If this is not an issue, you can use one of the other methods I outlined above.
Regards
Andy -
XML Publisher - Dynamic Data Columns Issue
Hi,
I am creating a amortization report where I need to show the amortization schedule for unearned revenue. Customers have signed different years of contract and I need to show the amount as per their remaining contract months. So if there are 2 month remaining in the contract then I should show the data for 2 months only and if there are 10 months then I should display 10 months. If we run the report for both customers then it should display two lines in report. For first customer the data should be only for 2 months and for second row(customer) there should be data for next 10 months. These months should be columns in the report(like excel columns, not rows). I need to display all months in columns instead of rows.
I have acheived that using Dynamic Data Columns as mentioned in the user guide. Everything is working fine except following issues -
1. How to create page level total?_
I have created page total in my template using <?add-page-total:TOTUREV;'UREV'?> and displaying using <?show-page-total:TOTUREV?> but when I run the report in excel format these page total do not display. These columns are static columns not dynamic.
If I run the report in pdf format then the static column total is displayed correctly.
2. When I run the report in excel format then report run fine and it shows all the columns properly but if I run the report in pdf format then the dynamic column are not displayed in their own columns, all the columns are overwriting each other in a single columns itself, its not expanding.
3. How do I get the total for the dynamic columns?_
I need to display the page level total for the dynamic columns also, how do I do that?
4. When I run the report in excel format the 2 decimal places of the numbers are gone(it works fine in pdf output), like 12.50 becomes 12.5 and 14.00 becomes 14. I need to maintain those 2 decimal places. I have tried using <fo:bidi-override direction="ltr" unicode-bidi="bidi-override"><?format-number:CVALUE;'999999D99'?></fo:bidi-override> but this does not solve my problem completely. It shows the values correctly in excel but then I am not able to do any calculation on those columns, looks like it converts them to text values.
Any help is really appreicated. Please let me know if you need the xml template and data file.
Regards
HiteshHi Hitesh,
Can you please upload your RTF and XML template file? I will try to spend sometime on this issue.
Cheers
Sachin
Maybe you are looking for
-
I want to cancel an itunes gift card
-
Crystal Report in InfoView is not displaying the parameter
Cheers All, We have a Crystal Report which is connected to the BEx query. We also have parameters based on variables in BEx. When we run the report directly from Crystal, everything is fine. However, when we run the report from InfoView, when I click
-
I'm getting an error message, it says components. classes (cid) is undefined
Also, when i enter an internet address, and try to go to it, nothing happens.
-
Form error depends on SQL ERROR
hi all please i want to know why this error is generated i try to create a small application with oracle forms i generate the tables in sql and the tables were created without errors but there is three tables that generate a form error when i try to
-
Why is the option to choose to edit with lightroom adjustment or edit original missing
I am currently using Lightroom 3 and Photoshop Cs4. Usually when I open file in photoshop from lightroom, I will be asked to choose to edit with lightroom adjustment or to edit original file. However, today, the options were missing, and the file dir