Crystal report требует входа в систему при каждой загрузке отчета с помощью C#
может ли кто-нибудь решить проблему, которая возникает каждый раз, когда я загружаю crystal report, он запрашивает информацию для входа в систему
Что я уже пробовал:
<pre> private void button1_Click(object sender, EventArgs e) { if (TxtCustomer.Text == "" && TxtSONofrom.Text == "" && TxtSONoto.Text == "" && DTSODateFrom.Text != "" && DTSODateTO.Text != "") { if (MessageBox.Show("Do You Want to Print This Report?", "YESNO", MessageBoxButtons.YesNo) == DialogResult.Yes) { BrownERP.ReportViewer cr = new BrownERP.ReportViewer(); cr.BringToFront(); cr.Show(); BrownERP.QuatationReport QTNREP = new BrownERP.QuatationReport(); SqlConnection con = new SqlConnection(connectionpath); con.Open(); SqlCommand cmd = new SqlCommand("select * from Tbl_QTN where SODate between CONVERT(DATETIME,'" + DTSODateFrom.Text + "',103) and CONVERT(DATETIME,'" + DTSODateTO.Text + "',103) ", con); SqlDataAdapter sda = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); sda.Fill(ds, "Tbl_QTN"); QTNREP.SetDataSource(ds); cr.CRV.ReportSource = QTNREP; cr.CRV.Refresh(); con.Close(); } else { this.Close(); } } }
Mycroft Holmes
Раньше вы могли вставлять и /или передавать учетные данные в отчет или использовать определенный идентификатор пользователя для всех отчетов, мы называем их функциональными идентификаторами.
Richard Deeming
SqlCommand cmd = new SqlCommand("select * from Tbl_QTN where SODate between CONVERT(DATETIME,'" + DTSODateFrom.Text + "',103) and CONVERT(DATETIME,'" + DTSODateTO.Text + "',103) ", con);
Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]
Sherif Clemnt
я думаю, что вы не поняли мой вопрос, мой SQL quary-это не проблема. каждый раз, когда я даю отчет print crystal с запросом информации для входа в систему......
после входа в систему придет отчет
Richard Deeming
Ваш код содержит критическая уязвимость системы безопасности Одна такая простая, что трехлетний ребенок может этим воспользоваться[^].
Независимо от того, связано ли это с проблемой, которую вы описываете, это то, что вам срочно нужно исправить.