Формирование отчетов «Офлайн», без доступа сотрудника в 1С
Прилетела на той неделе мне задача организовать просмотр сотрудниками остатков на складах без непосредственного доступа в 1С. Первоначально хотел решить её при помощи технологии 1C «WEB сервис», однако сиё мне показалось слишком сложным решением для данной ситуации. Потому решил сделать просто «Регламентное задание» и на обработчик повесить данный код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
Построител = Новый ПостроительОтчета; Построител.ТЕКСТ = "ВЫБРАТЬ | ТоварыНаСкладахОстатки.Склад КАК Склад, | ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура, | СУММА(ТоварыНаСкладахОстатки.КоличествоОстаток) КАК КоличествоОстаток |ИЗ | РегистрНакопления.ТоварыНаСкладах.Остатки(&Tdata, ) КАК ТоварыНаСкладахОстатки |ГДЕ | ТоварыНаСкладахОстатки.Склад В ИЕРАРХИИ(&Склад) | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстатки.Склад, | ТоварыНаСкладахОстатки.Номенклатура | |УПОРЯДОЧИТЬ ПО | Склад, | Номенклатура |ИТОГИ | СУММА(КоличествоОстаток) |ПО | ОБЩИЕ, | Склад, | Номенклатура"; Построител.Параметры.Вставить("Tdata", КонецДня(текущаядата())); Построител.Параметры.Вставить("Склад", Справочники.Склады.НайтиПоКоду("000000032")); Построител.Выполнить(); Построител.РазмещениеИзмеренийВСтроках = ТипРазмещенияИзмерений.Вместе; Построител.РазмещениеРеквизитовИзмеренийВСтроках = ТипРазмещенияРеквизитовИзмерений.Отдельно; Построител.РазмещениеРеквизитовИзмеренийВКолонках = ТипРазмещенияРеквизитовИзмерений.Отдельно; //Построител.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика); ТабДокумент = Новый ТабличныйДокумент; Построител.Вывести(ТабДокумент); ТабДокумент.Записать("C:\DocsRS\Documents\Отчеты1С\Остатки_на_складах.xls", ТипФайлаТабличногоДокумента.XLS); |
В принципе всех пока устраивает данное решение..