Есть веб-приложение на C#, в котором есть 3 выпадающих списка.
Требуется, чтобы после выбора 3 значений и нажатия кнопки, выбранные переменные должны быть переданы в PDF-файл. Решил это делать через FastReport. Не понимаю, как черезString Sklad = ddlZone.SelectedItem.Text;
передать в FastReport переменную в коде.
И всё-таки прямой ответ на поставленный Вами вопрос это использование параметров. Заведите в отчете параметры, соответствующие названиям полей и используйте их вместо источника данных.
string sklad = ddlZone.SelectedItem.Text;
string stack = ddlStack.SelectedItem.Text;
string pocket = ddlPocket.SelectedItem.Text;
string tagText = $"{sklad} {stack} {pocket}";
//формирование отчета FastReport
string reportName = "Barcode.frx";
string reportPath = Server.MapPath($"~/Reports/ReportTemplates/FastReport/{reportName}";
using (var webRep = new WebReport())
{
FastReport.Utils.Config.WebMode = true;
using (webRep.Report = new FastReport.Report())
{
webRep.Report.Load(reportPath);
webRep.Report.SetParameterValue("zone_name", sklad);
webRep.Report.SetParameterValue("stack_name", stack);
webRep.Report.SetParameterValue("count_of_pockets", pocket);
webRep.Report.SetParameterValue("BARCODE", tagText);
webRep.Report.Prepare();
FastReportExports.ToPdf(webRep.Report);
}
}
Отправляю часть кода, как я решил свою проблему, может кому-нибудь в дальнейшем пригодится
DataTable table = new DataTable("Table");
DataSet ds = new DataSet();
String Sklad = ddlZone.SelectedItem.Text;
String Stack = ddlStack.SelectedItem.Text;
String Pocket = ddlPocket.SelectedItem.Text;
String tagText = ddlZone.SelectedItem.Text + " " + ddlStack.SelectedItem.Text + " " + ddlPocket.SelectedItem.Text;
table.Columns.Add("ZONE_NAME");
table.Columns.Add("STACK_NAME");
table.Columns.Add("COUNT_OF_POCKETS");
table.Columns.Add("BARCODE");
TableRow rownew = new TableRow();
table.Rows.Add(rownew);
foreach (DataRow row in table.Rows)
{
row["zone_name"] = Sklad;
row["stack_name"] = Stack;
row["count_of_pockets"] = Pocket;
row["BARCODE"] = tagText;
}
//формирование отчета FastReport
string ReportName = "Barcode.frx";
string pp = Server.MapPath("~/Reports/ReportTemplates/FastReport/" + ReportName);
WebReport WebRep = new WebReport();
FastReport.Utils.Config.WebMode = true;
WebRep.Report = new FastReport.Report();
WebRep.Report.Load(pp);
WebRep.Report.RegisterData(table, "Table");
WebRep.Report.Prepare();
FastReportExports.ToPdf(WebRep.Report);
WebRep.Report.Dispose();
WebRep.Dispose();
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Ловлю ошибку 404 в IIS название папки в URL дублируется Exception Requested URL:/test/test/LoginPageaspx Если удаляю с url один test все работает
С помощью чего можно создать вебсокет сервер с такими характеристиками? (С помощью чего, я имею ввиду, мб какие нибудь библиотеки есть которые...
У меня есть тип AType который реализует генерик-интерфейс IA<BType> Тип BType реализует интерфейс ICКак я могу проверить связан AType с IC или нет?