Код: Выделить всё
where id IN (@parameter)
Если передавать просто строкой "1,2,3" не срабатывает. В итоге запрос преобразуется к
Код: Выделить всё
where id IN ('1,2,2'))
Код: Выделить всё
where id IN ( 1, 2, 2))
Код: Выделить всё
where id IN (@parameter)
Код: Выделить всё
where id IN ('1,2,2'))
Код: Выделить всё
where id IN ( 1, 2, 2))
Код: Выделить всё
StiReport report = new StiReport();
report.Load(@"d:\report.mrt");
//for RequesFromUser panel
StiVariable var1 = report.Dictionary.Variables["Variable1"];
var1.DialogInfo.Keys = new string[] { "1", "2", "3" };
var1.DialogInfo.Values = new string[] { "111", "222", "333" };
report.Compile();
report.Show(true);
Код: Выделить всё
select * from YourTable {Variable1.Count == 0 ? "" : "where YourField in (" + Variable1.ToQueryString() + ")"}
Код: Выделить всё
StiReport report = new StiReport();
report.Load(@"d:\report.mrt");
//for RequesFromUser panel
StiVariable var1 = report.Dictionary.Variables["Variable1"];
var1.DialogInfo.Keys = new string[] { "1", "2", "3" };
var1.DialogInfo.Values = new string[] { "111", "222", "333" };
//for report rendering before RequesFromUser panel
LongList list = new LongList();
list.AddRange(new long[] {1,2,3});
report.Compile();
report.CompiledReport["Variable1"] = list;
report.Show(true);