Link to home
Start Free TrialLog in
Avatar of meispisces
meispiscesFlag for India

asked on

Crystal Report: Prompt for parameter

Hi,

I made a crystal report inside VS 2005. The report has a sub-report. Now when i run a report from my .net application, there is a prompt for a parameter. The parameter that is being prompted is from sub-report. Although there are 3 parameters in main report and 1 in sub report, the one in sub report is what is being prompoted for an input.

When i supply a value to that parameter, then the report is being running succesfully.

I have done the following to avoid this;

1. Verify the database (from crystal report)

2. Set Database source location (from CR)

Attached snapshot makes clear my question in detail.

Inputs appreciated.

Thanks!!
crystal-report-parameter-prompt.png
Avatar of AndyAinscow
AndyAinscow
Flag of Switzerland image

You need to check the settings for the parameter in the subreport (compare with how you have them set for the main report).

OR
supply the required parameter when you are opening the report in the viewer
Right click on the subreport, change the subreport links, and make sure that you connect a field or another parameter from the main report to the subreport's parameter.
Avatar of meispisces

ASKER

@AndyAinscow: I have supplied the parameter when opening the report viewer by code. Not sure how to check the settings for the parameter in subreport.

@JayConverse:  I have not applied links to connect the parameter as such. Just guide me on that front, please...
ASKER CERTIFIED SOLUTION
Avatar of JayConverse
JayConverse
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
>>I have supplied the parameter when opening the report viewer by code.

Are you certain?  If you have it should not be prompting for it.
Avatar of Mike McCracken
Mike McCracken

Crystal will automatically prompt for parameters even if you give them values unless you turn prompting off.  There is a property for the report that if set TRUE will always prompt when a report is open.

I believe it is in REPORT OPTIONS.  You apparently have the main report set to false but the subreport set true.

mlmcc
I have had another idea.
Please post the complete code for setting the parameters in the main and sub report (including all intermediate code concerning the report)
Wierd - as far as I understand your question doing what was suggested would not cure it.  You should still be being prompted for the parameter.  
One does not need to use or display the parameter in the report.
Crystal will only prompt for the parameters it needs so if you add a parameter to the report but don't use it in the report there will be no prompt.

For subreports, if you pass it a valid value, then you won't get prompted for a value either.

mlmcc
@mlmcc
That seems to say you agree with my previous comment that the comment accepted as a solution does actually adress the question being asked.  Is that correct?
CORRECTION:
@mlmcc
That seems to say you agree with my previous comment that the comment accepted as a solution does not actually adress the question being asked.  Is that correct?
The commnet does solve it because he suggested linking the subreport to the main report using the parameter field so the link is supplying a value to the subreport parameter.

mlmcc
My point being is that prior to the comment accepted the questioner did state (in response to my first comment) that the parameter in the sub report was already being set from code - and it was still prompted for.
I can understand what you mean but it does sound like the response to my comment was not actually correct.
The problem described started occurring for me in an ASP.Net application when I upgraded to Crystal Reports for .NET Framework 4.0 (I was previously using the Crystal 9 runtime).  After a fair amount of searching and experimentation, I seem to have happened upon a solution that works (so far) for me, which is to call the ApplyCurrentValues method on the parameter field after adding the value(s).  I now do this even if UseCount = 0 and so far, so good.