Setting Parameter Values
Hi
RB11.03 Enterprise, Delphi 2007
I have a cross report that has a mandatory autosearch criteria that is
linked to a parameter. Due to the size of the data I need to ensure that a
citeria is always entered even when designing the report. I therefore use a
test value which I want to remove when the autosearch dialog is presented.
Historically I have used AutoSearchCriteriaByName.value to set this. Now
that I have a parameter as well I am no longer able to clear the test value
I have set. The user can change the test value to another value but I want
them to see a blank value to start with.
I am using the following rap code but with no success.
procedure ReportBeforeAutoSearchDialogCreate;
begin
Report.AutoSearchCriteriaByName('Usage', 'CustomerNo').Value := '';
Report.Parameters.ItemsByIndex[0].value := '';
Report.Parameters.ItemsByIndex[0].AutoSearchSettings.SearchExpression :=
'';
end;
Anyone have any suggestions how I can remove the test value using code.
Regards
Tim Murfitt
RB11.03 Enterprise, Delphi 2007
I have a cross report that has a mandatory autosearch criteria that is
linked to a parameter. Due to the size of the data I need to ensure that a
citeria is always entered even when designing the report. I therefore use a
test value which I want to remove when the autosearch dialog is presented.
Historically I have used AutoSearchCriteriaByName.value to set this. Now
that I have a parameter as well I am no longer able to clear the test value
I have set. The user can change the test value to another value but I want
them to see a blank value to start with.
I am using the following rap code but with no success.
procedure ReportBeforeAutoSearchDialogCreate;
begin
Report.AutoSearchCriteriaByName('Usage', 'CustomerNo').Value := '';
Report.Parameters.ItemsByIndex[0].value := '';
Report.Parameters.ItemsByIndex[0].AutoSearchSettings.SearchExpression :=
'';
end;
Anyone have any suggestions how I can remove the test value using code.
Regards
Tim Murfitt
This discussion has been closed.
Comments
My guess would be that this is a timing issue. The AutoSearch Criteria has
already been created by the time the BeforeAutoSearchDialogCreate event is
called. Try moving your code to an earlier event such as
OnInitializeParameters or BeforeOpenDatapipelines
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Tried both of them but still cannot get the criteria to clear. Any other
suggestions.
Regards
Tim
You are correct. The InitializeParameters event fires too late to assign
the parameter values however it can be used to assign the search expression
of an AutoSearch Field. There is a patch available that allows the
SearchExpression of the Parameter to alter the SearchExpression of the
AutoSearch Field. This way the following code will work...
Report.Parameters.ItemsByIndex[0].AutoSearchSettings.SearchExpression := '';
Please contact support@digital-metaphors.com for the patch.
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com