با سلام و خسته نباشید خدمت اساتید محترم
من میخوام به صورت پویا و زمانی که کاربر چک باکس ها رو انتخاب می کنه گزارش رو نمایش بده و تا حدودی موفق شدم
اما زمانی که چک باکس ها رو انتخاب می کنم فقط فیلد اول رو نمایش میده
کسی هست بتونه کمکم کنه؟
اینم عکس و کدش
pic.jpgpic.jpg
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using CrystalDecisions.Shared;
namespace dyn_report_test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
CrystalReport1 objRpt = new CrystalReport1();
DataSet1 objDataSet = new DataSet1();
SqlConnection cn = new SqlConnection("Data Source=DESKTOP-F27TAGV\\ALETAYEB_DB;Initial Catalog=fedelak_product;Integrated Security=True");

private void get_rep()
{
//========PARAMETER INFO===========
ParameterFields pfs = new ParameterFields();
ParameterField pm = new ParameterField();
ParameterDiscreteValue pmd = new ParameterDiscreteValue();
pmd.Value = "مدیر تولید";
pm.Name = "Col1";
pm.CurrentValues.Add(pmd);
//========مدیر تولید===========
ParameterField ceo = new ParameterField();
ParameterDiscreteValue pceo = new ParameterDiscreteValue();
pceo.Value = "مدیر کارخانه";
ceo.Name = "Col2";
ceo.CurrentValues.Add(pceo);
//========مدیر کارخانه===========
ParameterField qm = new ParameterField();
ParameterDiscreteValue pqm = new ParameterDiscreteValue();
pqm.Value = "مسوول قرنطینه";
qm.Name = "Col3";
qm.CurrentValues.Add(pqm);
//========مسوول قرنطینه===========
ParameterField qc = new ParameterField();
ParameterDiscreteValue pqc = new ParameterDiscreteValue();
pqc.Value = "مسوول کنترل کیفیت";
qc.Name = "Col4";
qc.CurrentValues.Add(pqc);
//========مسوول کنترل کیفیت===========
ParameterField pn = new ParameterField();
ParameterDiscreteValue ppn = new ParameterDiscreteValue();
ppn.Value = "نام محصول";
pn.Name = "Col5";
pn.CurrentValues.Add(ppn);
//========نام محصول===========
ParameterField pc = new ParameterField();
ParameterDiscreteValue ppc = new ParameterDiscreteValue();
ppc.Value = "کد محصول";
pc.Name = "Col6";
pc.CurrentValues.Add(ppc);
//========= کد محصول==========
crystalReportViewer1.ParameterFieldInfo = pfs;
}
private void get_data()
{
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT product_manager as Column1, ceo as Column2,quarantine_manager as Column3, qc_manager as Column4,pr_name as Column5,pr_code as Column6 FROM first_info";

cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
}
private void Form1_Load(object sender, EventArgs e)
{



}

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
//objDataAdapter.SelectCommand.CommandText = "SELECT product_manager as Column1, ceo as Column2,quarantine_manager as Column3, qc_manager as Column4,pr_name as Column5,pr_code as Column6 FROM first_info";

SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT product_manager as Column1 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 1;
ParameterFields pfs = new ParameterFields();
strQuery += "product_manager as Column" + ColCounter + " ";
ParameterField pm = new ParameterField();
ParameterDiscreteValue pmd = new ParameterDiscreteValue();
pmd.Value = "مدیر تولید";
pm.Name = "Col1";
pm.CurrentValues.Add(pmd);
crystalReportViewer1.ParameterFieldInfo = pfs;
objRpt.SetDataSource(objDataSet);
crystalReportViewer1.ReportSource = objRpt;

}
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{

SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT ceo as Column2 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 2;
ParameterFields pfs = new ParameterFields();
strQuery += "ceo as Column" + ColCounter + " ";
ParameterField ceo = new ParameterField();
ParameterDiscreteValue pceo = new ParameterDiscreteValue();
pceo.Value = "مدیر کارخانه";
ceo.Name = "Col2";
ceo.CurrentValues.Add(pceo);
crystalReportViewer1.ParameterFieldInfo = pfs;
crystalReportViewer1.ReportSource = objRpt;
}
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
if (checkBox3.Checked == true)
{
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT quarantine_manager as Column3 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 3;
ParameterFields pfs = new ParameterFields();
strQuery += "quarantine_manager as Column" + ColCounter + " ";
ParameterField qm = new ParameterField();
ParameterDiscreteValue pqm = new ParameterDiscreteValue();
pqm.Value = "مسوول قرنطینه";
qm.Name = "Col3";
qm.CurrentValues.Add(pqm);
crystalReportViewer1.ParameterFieldInfo = pfs;
crystalReportViewer1.ReportSource = objRpt;
}
}
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT qc_manager as Column4 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 4;
ParameterFields pfs = new ParameterFields();
strQuery += "qc_manager as Column" + ColCounter + " ";
ParameterField qc = new ParameterField();
ParameterDiscreteValue pqc = new ParameterDiscreteValue();
pqc.Value = "مسوول کنترل کیفیت";
qc.Name = "Col4";
qc.CurrentValues.Add(pqc);
crystalReportViewer1.ParameterFieldInfo = pfs;
crystalReportViewer1.ReportSource = objRpt;
}
private void checkBox5_CheckedChanged(object sender, EventArgs e)
{
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT pr_name as Column5 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 5;
ParameterFields pfs = new ParameterFields();
strQuery += "pr_name as Column" + ColCounter + " ";
ParameterField pn = new ParameterField();
ParameterDiscreteValue ppn = new ParameterDiscreteValue();
ppn.Value = "نام محصول";
pn.Name = "Col5";
pn.CurrentValues.Add(ppn);
crystalReportViewer1.ParameterFieldInfo = pfs;
crystalReportViewer1.ReportSource = objRpt;
}
private void checkBox6_CheckedChanged(object sender, EventArgs e)
{
SqlDataAdapter objDataAdapter = new SqlDataAdapter();
objDataAdapter.SelectCommand = new SqlCommand();
objDataAdapter.SelectCommand.Connection = cn;
objDataAdapter.SelectCommand.CommandType = CommandType.Text;
objDataAdapter.SelectCommand.CommandText = "SELECT pr_code as Column6 from first_info";
cn.Open();
objDataAdapter.Fill(objDataSet, "DataTable1");
cn.Close();
string strQuery = "SELECT ";
int ColCounter = 6;
ParameterFields pfs = new ParameterFields();
strQuery += "pr_code as Column" + ColCounter + " ";
ParameterField pc = new ParameterField();
ParameterDiscreteValue ppc = new ParameterDiscreteValue();
ppc.Value = "کد محصول";
pc.Name = "Col6";
pc.CurrentValues.Add(ppc);
crystalReportViewer1.ParameterFieldInfo = pfs;
crystalReportViewer1.ReportSource = objRpt;
}
private void button1_Click(object sender, EventArgs e)
{


}
}
}