nardmoseley
Comments
-
If a TppPrintable component is being displayed in the report designer, then
its DesignControl will not be nil.
InvalidateDesignControl is protected and therefore can be called from any
TppPrintable descendant.
S… -
See RBuilder\Soruce\ppVar.pas. The TppVariable.Compute method fires the
OnCalc event. This should only be done when the report is generating.
You can try setting the TppVariable.Value property but I do not see that it
call… -
I think the columns are calculated based upon the widest text in the column.
There are some Crosstab events that can be used to modify the caption text.
See demo ct127.pas in RBuilder\Demos\Crosstab.
If you want to customi… -
See article below for how to do this with Delphi code. To use RAP code you
will need to implement a pass through functinon and call it from the
Report.OnStartPage event in RAP.
---------------------------------------… -
Below are some options for definng parameters. The issue with RAP is going
to be a timing issue. Most of the events in RAP occur after the report
engine has been initialized - the datasets have been opened. The
BeforeAutoSearchD… -
From the RBuilder.hlp topic for TppReport.Parameters:
The Delphi code syntax for accessing a parameter value is
myReport.Parameters['ParameterName'].Value
RAP code supports the above syntax, plus the followin… -
If you have RAP code that takes a long time to process, you could consider
creationg some RAP pass-through functions that performed the processing.
Then your RAP code can call the custom functions. This enables the RAP code
to … -
Have not tested this. But in theory it would seem like fewer event-handlers
would be faster. I think it is worth trying.
It could be that the data query or queries are slow as well.
--
Nard Moseley
In the Band.BeforePrint event you can set the Band.Visible property.
if {some condition} then
Report.Detail.Visible := False
else
Report.Detail.Visible := True;
--
Nard Moseley
Digital Metapho…
I would agree with Harry suggestion of creating a database view or creating
a temp table in the database that contains the combined data. Particularly
since you have many reports to perform on this data. Doing some work on the
d…
I just created a simple Crosstab report and used RAP to implement the
Crosstab.AfterCalc event. I placed a ShowMessage('AfterCalc'). The code
compiles and executes properly when I run the report.
I tested using RB 7.03....…
Try using the Report.BeforePrint event to modify Crosstab.ColumnDefs.
example:
Crosstab1.ColumnDefs[0].FieldAlias := 'Contact';
Crosstab1.ColumnDefs[0].FieldName := 'Contact';
--
Nar…
This is not a known issue. Perhaps it is related to using a Variable in a
Region that has KeepTogether set to True. Just a guess. Can you create a
simple, minimal example project that demonstrates the issue. Use
ReportBuilder, s…
Report.Parameters.ItemsByIndex[liIndex].Name
--
Nard Moseley
Digital Metaphors
http://www.digital-metaphors.com
There are no known issues with Groups in ReportBuilder 7.
ReportBuilder relies upon the data being sorted in the proper order. Your
description indicates that the data is ordered properly - perhaps double
check this.
…
1. You can use the Report.BeforeAutoSearchDialogCreate to set the
AutoSearchField search expression. You can set Report.ShowAutoSearchDialog
to False if you want to prevent the dialog from being displayed.
2. Another optio…
Thanks for feedback. We do not currently have a web page that lists the
examples, this is on our to do list...
--
Nard Moseley
Digital Metaphors
htt…
Rather than using the section in the group footer, you might try setting
Band.OutOfSpace to true.
Here is an example:
ht…
No I did not say that you cannot use RAP code.
My question to you is how would implement what you need using Delphi code?
That is the first step. Before you implement anything in RAP code, try
implementing it in Delphi cod…
1. A good place to start is RBuilder\Demos\AutoSearch.
2. Report.AutoSearch parameters are simple parameters that do not really do
anything other than collect information.
3. The Query tools in DADE enable you to def…
There are no other optios other than the ones that you mention.
--
Nard Moseley
Digital Metaphors
http://www.digital-metaphors.com
RAP was designed primarily to control the report while it is generating.
You are encountering a timing issue. If you try to set the
Report.TextFileName while the report is generating, the assigment is ignored
by the report…
I tested this in RAP.
When I implement the OnDrawCommandCreate like this it works properly
var
lDrawCommand: TppDrawCommand;
begin
lDrawCommand := TppDrawComand(aDrawCommand);
lDrawCo…
The ReportBuilder license does not permit customers to redistribute the
product.
Please note that the source code to RAP is not included with ReportBuilder.
The raIDE unit is part of RAP. ReportBuilder Enterprise 5 was the…
My suggestion to create a Delphi code example was an attempt to break down
the problem into incremental steps. What I meant was to create a simple
example report using DBDemos and try to implement a simple minimal example
that s…
1. If the subreport is traversing the detail pipeline of a master/detail
relationship then you need to also set the detail datapipeline
SkipWhenNoRecords property to False. If you are using DADE to link
DataViews, you can do thi…
I created a simple test using DBDemos. I created a query on the customer
table and added a single DBText to the report. In the DBText.OnPrint I
implemented the following RAP event-handler:
DBText1.Font.Bold := customer['C…
Check out RBuilder\Demos\Rap\Main\Rap.dpr
Demos 41 and 42 show how to dynamically create RAP event-handler code (see
rap0041.pas and rap0042.pas).
--
Nard Moseley
Digital Metaphors
Try using the TdaSQL.AvailableCriteria[] field list which contains the
available fields from the selected tables plus the calc fields. (The TdaSQL
object has separate arrays for SelectFields and CalcFields that represent
the sel…
To be more clear I should have asked whether the Data workspace of the
Report Designer was used to create the query(s) for the report. If you are
loading the report from the rbItems table, then I will assume that this is
the cas…