I have a report with these parts:
ReportTitle
ColumnHeader
MasterData
ColumnFooter
ReportSummary
How can I display sum of a field in MasterData on ReportTitle?
I can see two possible ways:
Via a report variable:
Calculate the total separately.
Pass the total to the report using a report variable (and, possibly, the TfrxReport.OnGetValue event).
Via the DoublePass property of the report:
Set the TfrxReport.EngineOptions.DoublePass property to True.
Calculate the total in the report script and store it to a script variable on the first pass
Fill the memo from the variable on the second pass.
Use Engine.FinalPass in the script to detect whether it's the final (second) pass.
Define a variable for sumatory
Asign sumatory to variable on first pass of report
Show variable on second pass
Or, if the sumatory is result of a query, get this result and show it
Related
I would like to run a query using a macro and display the results in a message box. The aim is to be able to pass the value as a parameter to another form in the database. First I want to be able to see the value returned from the query. I would then like to set a temp variable to this value so I can pass it as a parameter.
I want to fill a Repeated grid with value from a checkbox.
User would select multiple items from a checkbox then hit a button to add the required number of rows and set the value of a field in each iteration according to what was checked
I would need something like a foreach checked value : run this code
I'm having a hard time finding documentation about this kind of Xforms. I did find some info about Iterate and Iterator that seems promising but i failed to make that work.
I was able to add the required number of row to my grid but then im not sure how to use xf:setvalue set the value of each row.
Any help appreciated.
I think a combination of the iterate attribute to create a loop, the xxf:split() function to get the selected values as a sequence you can iterate on, and xf:insert to create elements will do the trick. See this example, which does the following:
And here is an example which does the same, but for a form created with Form Builder. In this case, the result is as follows:
I have a problem when it comes to suming values from a repeated section. Specifically, when I have a repeated section in the orbeon builder with a control that has a value I can easily sum the values of these sections in a different control using sum($control-1) - in the calculated value. When inputing values in the form preview the sum is correct in my control with the summed value.
Unfortunately, when I add a section using the +Insert Below button in the form preview while testing the form the sum() function doesn't work anymore. In the control with this calculated value nothing is shown. Is there a different way to get the sum of values from repeated sections or is this a bug in orbeon?
Once you add a new section while testing the form the sum() function doesn't work anymore, because it adds a empty element to the node-set.
In XPath, when using the sum function, the value of each node is determined by trying to converting it to a number (number()), if there is a empty value, it's gonna convert to NaN, thus in the control with this calculated value nothing is shown by Orbeon.
A different way that would work would be to use the expression like: sum($control-1[text()]) . This way you are testing if the node has content before trying to sum it, so it's always gonna work.
I have a parent report that feeds one of the field values into a subreport. But the problem is that there this field value can include multiple records. For simplicity, assume that this field value is called color, where possible values might be orange, red, and green. I need to pass all of these value to the subreport, not just one. I have tried passing the values this way into the Color parameter of the subreport:
=Fields!Color.Value
But this doesn't work and gives me an error. I have also tried:
=join(Fields!Color.Value,",")
This also gives me an error on the subreport
I have also tried both of the above as an expression in a textbox in the parent report and I get #Error displayed on the parent report. I was able to successfully get just the first value to appear by using a similar expression and the First function. But I am not able to get all of the values to display in this textbox on the parent report? how can I do this or at least pass all of the values to this subreport?
The easy solution is if Color is already a parameter - I would pass this expression in the subreport:
=Parameters!Color.Value
If Color is not a parameter, I would add a column to the driving dataset in the parent report using a SELECT ... FOR XML to concatenate the relevant Color values together. Then you can pass that field to the subreport.
I have 3 fields, Action1, Action2 and Action3 contained in one report. Each Action field is selected from the same list of values. I would like to graph a count of these values by the value of the field and not field itself. I need one graph and not one graph per Action field. I have tried to combine the field values into an array in the details section, but the report shows the concatenated string values "Action1, Action2, Action3', as a single value in the graph. I tried to graph using "on change of", but it will only allow 2 fields and not 3. Is there a way to count these values regardless of the Action field where they are found?
I have been working with Crystal for years, but can't figure this out for whatever reason.
I was never able to find a solution to this issue inside of Crystal Reports itself. What I ended up doing was creating a stored procedure in SQL to use as the data source. In the stored procedure I basically performed a cross join such that there was only 1 Action returned per record. In CR I then was able to summarize the Action field values.