Ошибка в использовании кода ежемесячного отчета crystal report?
Я хочу сделать ежемесячный отчет о событии нажатия кнопки и отобразить его через crystal report.
tc_np = имя элемента управления tab
tbprint = имя вкладки, куда я поместил crystalreportviewer.
mnt = is crystal report, где я определяю или проектирую в соответствии с таблицей patient_info
crv = - это имя crystalreportviewer.
private void mntbtn_Click(object sender, EventArgs e) { tc_np.SelectedTab = tbprint; try { cn.Open(); DataSet ds2 = new DataSet(); //SELECT * FROM MyTable WHERE DATEDIFF(mm, MyDateColumn, GETDATE()) = 0 mnt m = new mnt(); OleDbCommand cmdmnt = new OleDbCommand("select * from patient_info where DATEDIFF(m, E_date, DATE())=0",cn); OleDbDataAdapter da = new OleDbDataAdapter(cmdmnt); da.Fill(ds2, "patient_info"); m.SetDataSource(ds2.Tables["patient_info"]); crv.ReportSource = m; crv.RefreshReport(); cn.Close(); } catch (Exception p) { MessageBox.Show(p.Message,"error",MessageBoxButtons.OK,MessageBoxIcon.Error); } }
ошибка при:
da.Fill(ds2, "patient_info")
ошибка: "нет значения для одного или нескольких обязательных параметров"
Что я уже пробовал:
я попробовал множество изменений в дату(), даст условие, как функция datediff(мм,E_date,дата())=30, и т. д.
[no name]
Основываясь на вашем недостатке информации здесь, я полностью и полностью предполагаю, что "М", передаваемое DateDiff, - это не то, что вы думаете.