Hi to all!
I have following problem:
In my application (Visual Studio 2008 - C# language - I AM NEWBIE AT C#), I have two GUI elements - date pickers (MonthCalendar class) and according to their selected values (dates) i would like to filter records in report. I've added parameters (dtDateFrom, dtDateTo - both of type DateTIme) to report and now:
1) How do I dyinamicly setup their values to contain values from previously mentioned MonthCalendar classes (I've setup event handler, tested it and it works fine) - the question is, how to fill report parameters?
2) How do I then refresh report to show new data?
Currently, the second problem is:
As I lanuch app or press "Refresh" toolbar button on report, I get date entrance window, which is invoked from Crystal Reports - HOW DO I DISABLE IT?
Please answer ASAP since I am in hurry and thanks in advance for answers!
Sincerely yours,
Marko
Loading
Marko FrelihPosted May 24, 2010, 1:31 AM
Ok, I did some work and now I want to check if a report gets parameters. Therefore, I wrote the code:[code] private void setReportDateParameter(String strDateFromFieldName,
DateTime dtDateFromFieldValue,
String strDateToFieldName,
DateTime dtDatoToFieldValue)
{
ParameterDiscreteValue pmdvDateFrom = new ParameterDiscreteValue();
pmdvDateFrom.Value = dtDateFromFieldValue; // sets date from parameter
ParameterField pmfDateFrom = new ParameterField();
pmfDateFrom.Name = strDateFromFieldName; // sets parameter field's name
pmfDateFrom.HasCurrentValue = true;
pmfDateFrom.CurrentValues.Add(pmdvDateFrom);
ParameterDiscreteValue pmdvDateTo = new ParameterDiscreteValue();
pmdvDateTo.Value = dtDatoToFieldValue; // sets date to parameter
ParameterField pmfDateTo = new ParameterField();
pmfDateTo.Name = strDateToFieldName; // sets parameter field's name
pmfDateTo.HasCurrentValue = true;
pmfDateTo.CurrentValues.Add(pmdvDateTo); // adds date to to field's values
ParameterFields pmfDateRangeFields = new ParameterFields();
pmfDateRangeFields.Clear(); // clears paramter fields array
pmfDateRangeFields.Add(pmfDateFrom); // adds "date from" to param fields object
pmfDateRangeFields.Add(pmfDateTo); // adds "date to" param to param fields object
m_crViewerGoodBadMeters.ParameterFieldInfo = pmfDateRangeFields; // transfer created parameters to report
// debug part
Console.BackgroundColor = ConsoleColor.Black; // sets background color
Console.ForegroundColor = ConsoleColor.Yellow; // sets foreground color
//Console.Clear(); // clears console
Console.WriteLine("Date From: {0} (MonthPicker) - {1} (CR Value)",
this.m_dtFrom,
this.m_crViewerGoodBadMeters.ParameterFieldInfo[0].CurrentValues[0]);
Console.WriteLine("Date To: {0} (MonthPicker) - {1} (CR Value)",
this.m_dtTo,
this.m_crViewerGoodBadMeters.ParameterFieldInfo[1].CurrentValues[0]);
Console.ResetColor(); // resets color
//// **** END OF debug part
// report refresh part
m_crViewerGoodBadMeters.Refresh(); // refresh report controls
m_crViewerGoodBadMeters.RefreshReport(); // refresh report contens
// **** END OF report refresh part
}[/code]
and my question is:
In lines for debug output (Console.WriteLine("Date From: {0} (MonthPicker) - {1} (CR Value)",
this.m_dtFrom,
this.m_crViewerGoodBadMeters.ParameterFieldInfo[0].CurrentValues[0]);) how do I rewrite this line so I will see the values inside CR's ParameterFieldInfo?
Sincerely,
Marko