 |
|
ถามเรื่อง Crystal report ส่งค่า parameter ไปแล้ว ทำไมยังมี Popup ถามอีก Web (ASP.NET) |
|
 |
|
|
 |
 |
|
ขอดันหน่อย มีใครพอรู้บ้างมั๊ย
|
 |
 |
 |
 |
Date :
2011-01-14 16:15:10 |
By :
Valentinus |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เงียบกริ๊บ >.<"
|
 |
 |
 |
 |
Date :
2011-01-15 01:15:39 |
By :
Valentinus |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เจอปัญหาเหมือนกันเลยค่ะ
|
 |
 |
 |
 |
Date :
2011-03-02 09:45:06 |
By :
zeenanz |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมคิดว่าน่าจะเป็นปัญหาของ Format ของวันที่นะครับ
ไม่ทราบว่า parameter ที่ตั้งไว้ใน crystal report เป็นแบบ datetime หรือเปล่าครับ
ถ้าเป็น คุณก็ควรจะ จัด format datetime ให้ถูกในโปรแกรมก่อนส่ง CrystalReport
|
 |
 |
 |
 |
Date :
2011-03-02 16:50:13 |
By :
stricken |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไม่ได้เหมือนกัน ผมเลยเปลื่ยนวิธี ส่งผ่านค่า โดยใช้ data set
รบกวนใครได้ส่งเมล์บอกด้วยนะครับ [email protected]
|
 |
 |
 |
 |
Date :
2011-05-12 03:34:30 |
By :
Chiangmai programmer |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอนนี้หนูก็ติดปัญหาแบบนี้อ่ะค่ะ แต่ทำใน vb 2010
ค่าเดทในvb พออยู่ใน CR มันกลายเป็น string ด้วยอ่ะค่ะ
ทำยังไงดีคะ
|
 |
 |
 |
 |
Date :
2011-05-24 15:15:36 |
By :
แค่เด็กตัวเล๊กๆคนนึง |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมทำได้แล้วครับ มีปัญหาเหมือนกับคุณเลย
คือเอา Source จาก CR Version เก่า กับ VS2005 มันได้ แต่พอเอามาใช้ กับ VS2010 มันจะ pop up parameter ใหม่
แก้ง่ายมากเลยครับ คือต้องเอาคำสั่งในการส่งค่า parameter ให้กับ report ไปไว้ต่อจาก คำสั่งในการส่ง Dataset ให้กับ Report ครับ
แค่เรียงลำดับของ Source code ใหม่เท่านั้นเอง ... ไม่ทราบเหตุผลเหมือนกันครับ แต่ว่าได้ผลลัพธ์ตามที่ต้องการ คือมันไม่ pop up มาถามอีกครับ
Code (VB.NET)
repName = ApplicationPath & "\Reports\RepReceivingSum.rpt"
' Load the report
reportDoc.Load(repName)
'Set Parameter to Report Title
'Set discreet value to Report Title.
paramValues = New ParameterValues
paramValue = New ParameterDiscreteValue
paramValue.Value = Condition
'Add to parameter collection.
paramValues.Add(paramValue)
' Apply the current parameter values.
' Old Version of crystal report อันนี้เป็น Source จาก Version เก่า
1-- 'reportDoc.DataDefinition.ParameterFields(PRM_PRINT_CONDITION).ApplyCurrentValues(paramValues)
'Fill the dataset with the data retrieved. The name of the table
'in the dataset must be the same as the table name in the report.
repDataset.Tables.Add(TableSummary)
'Pass the populated dataset to the report
reportDoc.SetDataSource(repDataset)
' New Version of Crystal report for VS2010
' Must followed by datasource ย้าย line 1--- มาไว้ต่อจาก setDataSource ก็จบครับ แค่นี้เอง
reportDoc.DataDefinition.ParameterFields(PRM_PRINT_CONDITION).ApplyCurrentValues(paramValues)
|
 |
 |
 |
 |
Date :
2011-07-21 18:58:44 |
By :
หวังว่าคงช่วยได้นะครับ |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบ
นำค่าพารามิเตอร์ไปไว้ตรง PageLoad ค่ะ
|
 |
 |
 |
 |
Date :
2011-09-22 10:22:21 |
By :
PP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (C#)
protected void Page_Load(object sender, EventArgs e)
{
CrystalDecisions.CrystalReports.Engine.ReportDocument report = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
report.Load(Server.MapPath(@"~/CrystalReportCal.rpt"));
report.SetParameterValue("M", DropDownListM.SelectedItem.ToString().TrimEnd());
report.SetParameterValue("Y", DropDownListY.SelectedItem.ToString().TrimEnd());
CrystalReportViewer1.ReportSource = report;
}
|
 |
 |
 |
 |
Date :
2011-09-22 10:23:02 |
By :
pp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมเป็นปัญหาเหมือนกันครับ ขอบคุณ Guest ครับ ไว้ใน pageload
|
 |
 |
 |
 |
Date :
2012-02-07 17:04:45 |
By :
xlonder |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ย้าย CrystalReportViewer1.RefreshReport() มาไว้บรรทัดแรกก่อนกำหนดค่าต่างๆ
|
 |
 |
 |
 |
Date :
2012-03-27 01:14:13 |
By :
Jacky |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
List<object> dataListIn = new List<object>();
List<object> dataListEx = new List<object>();
List<object> dataListDO = new List<object>();
List<object> dataListRT = new List<object>();
RptSVR11200 report = new RptSVR11200();
foreach (SVR11200Header item in data.SVR11200Headers)
{
if (item.JobInd == VehicleServiceConstant.ModifiedVehicleWorkorderJobDetail.JobInd.Internal)
{
dataListIn.Add(item);
}
else
{
dataListEx.Add(item);
}
}
dataListDO.AddRange(data.SVR11200Q1s);
dataListRT.AddRange(data.SVR11200Q2s);
CrystalDecisions.Shared.ParameterFields paramFields = new CrystalDecisions.Shared.ParameterFields();
CrystalDecisions.Shared.ParameterField pfItemYr = new CrystalDecisions.Shared.ParameterField();
pfItemYr.ParameterFieldName = "RowCountQ1"; //RowCountQ1 is Crystal Report Parameter name.
CrystalDecisions.Shared.ParameterDiscreteValue dcItemYr = new CrystalDecisions.Shared.ParameterDiscreteValue();
dcItemYr.Value = dataListDO.Count;
pfItemYr.CurrentValues.Add(dcItemYr);
paramFields.Add(pfItemYr);
pfItemYr = new CrystalDecisions.Shared.ParameterField();
pfItemYr.ParameterFieldName = "RowCountQ2"; //RowCountQ2 is Crystal Report Parameter name.
dcItemYr = new CrystalDecisions.Shared.ParameterDiscreteValue();
dcItemYr.Value = dataListRT.Count;
pfItemYr.CurrentValues.Add(dcItemYr);
paramFields.Add(pfItemYr);
pfItemYr = new CrystalDecisions.Shared.ParameterField();
pfItemYr.ParameterFieldName = "RowCountQ3"; //RowCountQ3 is Crystal Report Parameter name.
dcItemYr = new CrystalDecisions.Shared.ParameterDiscreteValue();
dcItemYr.Value = dataListEx.Count;
pfItemYr.CurrentValues.Add(dcItemYr);
paramFields.Add(pfItemYr);
report.SetDataSource(dataListIn);
report.Subreports[0].SetDataSource(dataListDO);
report.Subreports[1].SetDataSource(dataListRT);
report.Subreports[2].SetDataSource(dataListEx);
CrystalDecisions.Windows.Forms.CrystalReportViewer rptViewer = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
rptViewer.ParameterFieldInfo = paramFields;
rptViewer.ReportSource = report;
|
 |
 |
 |
 |
Date :
2013-01-30 16:09:20 |
By :
Tiki |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับ ยังทำไม่ได้ แต่จะลองดูครับ
|
 |
 |
 |
 |
Date :
2014-11-13 14:44:30 |
By :
ฺVYCDS |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ทำได้แล้วครับ ของผม แค่เอาบรรทัด refresh ออก ครับ
แบบนี้ครับ
Code (C#)
ReportDocument rpt = new ReportDocument();
rpt.Load(Server.MapPath("CrystalReport1.rpt"));
rpt.SetDataSource(dt);
rpt.SetParameterValue("company", locat);
rpt.SetParameterValue("date_st", TextBox1.Text);
rpt.SetParameterValue("date_end", TextBox2.Text);
CrystalReportViewer1.ReportSource = rpt;
// CrystalReportViewer1.DataBind(); //////// <<<< เอาบรรทัดนี้ออกครับ
|
 |
 |
 |
 |
Date :
2014-11-13 14:56:18 |
By :
VYCDS |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
R1.SetParameterValue("Price1", 20);
Viewer1.RefreshReport();
Viewer1.ReportSource = R1;
//--c# vs2013
|
 |
 |
 |
 |
Date :
2017-01-25 17:51:51 |
By :
n |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|