|
Программно вызвать отчет на СКД и вывести результаты |
☑ |
0
oslokot
13.11.14
✎
10:36
|
Приветствую всех! Подскажите новичку.
Вот есть стандартный очет в БП 3.0, "остатки по складу", он работает и все ок.
Хочу вызвать его программно из своей обработки и вывести результат в табличное поле.
Получаю только заголовок отчета и всё, фигня какая-то..
Я правильно вообще делаю? вот простой код:
ОстаткиПоСкладу = Отчеты.ОстаткиПоСкладу.Создать();
ОстаткиПоСкладу.КонецПериода = ТекущаяДата();
ОстаткиПоСкладу.СкомпоноватьРезультат(ТабличныйДокумент);
|
|
1
Cube
13.11.14
✎
10:38
|
(0) "ОстаткиПоСкладу.КонецПериода = ТекущаяДата();"
Так ты параметры вряд ли установишь...
|
|
2
oslokot
13.11.14
✎
10:38
|
(1) а как это делается?
|
|
3
Cube
13.11.14
✎
10:41
|
(2) В общем случае так:
ЗначениеПараметра = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода");
ЗначениеПараметра.Значение = НачалоДня(ДатаНач);
ЗначениеПараметра.Использование = Истина;
Предупреждаю: тупой копипаст у тебя не прокатит...
|
|
4
oslokot
13.11.14
✎
10:54
|
(3) Спасибо. Но отчет все равно возвращает пустой результат.
Сделал вот так:
Отчет = Отчеты.ОстаткиПоСкладу.Создать();
ЗначениеПараметра = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода");
ЗначениеПараметра.Значение = КонецДня(ТекущаяДата());
ЗначениеПараметра.Использование = Истина;
Отчет.СкомпоноватьРезультат(ТабличныйДокумент);
Конечно же параметр "КонецПериода" находит, присваивает значение. В отладчике смотрел.
|
|
5
oslokot
13.11.14
✎
10:54
|
Что еще ему надо?
|
|
6
Cube
13.11.14
✎
11:55
|
(5) ХЗ, в релизе 3.0.31.16 нет отчета "остатки по складу", а другого релиза под рукой нет.
|
|
7
oslokot
13.11.14
✎
12:02
|
(6) я забыл добавить группировки :)
Все заработало, спасибо!
|
|