72 lines
4.4 KiB
Plaintext
72 lines
4.4 KiB
Plaintext
импорт Основное
|
||
|
||
@ВПодсистеме
|
||
@НаСервере @ДоступноСКлиента
|
||
метод ВыгрузитьЗадачиСотрудникаВExcel(Сотрудник: Сотрудники.Ссылка): ДвоичныйОбъект.Ссылка
|
||
знч ЗадачиСотрудника = Задачи.ПолучитьЗадачиСотрудника(Сотрудник)
|
||
возврат ВыгрузитьЗадачиВExcel(ЗадачиСотрудника)
|
||
;
|
||
|
||
@ВПодсистеме
|
||
@НаСервере @ДоступноСКлиента
|
||
метод ВыгрузитьЗадачиВExcel(Задачи: ЧитаемыйМассив<Задачи.Ссылка>): ДвоичныйОбъект.Ссылка
|
||
знч МакетДанные = Ресурс{МакетТаблицыЗадач.mxl}.ОткрытьПотокЧтения()
|
||
пер Макет = ТабличныйДокумент.Прочитать(МакетДанные)
|
||
МакетДанные.Закрыть()
|
||
|
||
знч ИтоговыйТабличныйДокумент = новый ТабличныйДокумент()
|
||
знч Писатель = ИтоговыйТабличныйДокумент.Запись
|
||
|
||
знч ЗапросДанныхЗадач = новый ПроизвольныйЗапрос(
|
||
"ВЫБРАТЬ
|
||
ДатаСоздания КАК Дата,
|
||
Владелец КАК Сделка,
|
||
Наименование,
|
||
Приоритет,
|
||
Статус,
|
||
Код
|
||
ИЗ
|
||
Задачи
|
||
ГДЕ
|
||
Ссылка В (&МассивСсылок)")
|
||
|
||
знч ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы")
|
||
знч СтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы")
|
||
|
||
Писатель.ВывестиВертикально(ШапкаТаблицы)
|
||
|
||
пер Счетчик = 0
|
||
знч РазмерПакета = 500
|
||
|
||
пока Счетчик < Задачи.Размер()
|
||
знч ВерхняяГраница = Мин(Счетчик + РазмерПакета, Задачи.Размер())
|
||
знч ПакетСсылок = Задачи.ПодМассив(Счетчик, ВерхняяГраница)
|
||
ЗапросДанныхЗадач.УстановитьПараметр("МассивСсылок", ПакетСсылок)
|
||
|
||
исп ДанныеЗадач = ЗапросДанныхЗадач.Выполнить()
|
||
|
||
для ДанныеЗадачи из ДанныеЗадач
|
||
знч ОбластьСтроки = СтрокаТаблицы.ВВыводимуюОбласть()
|
||
|
||
знч ПараметрыОбласти: Соответствие<Строка, Объект> = {
|
||
"Дата": ДанныеЗадачи.Дата.Представление(),
|
||
"Сделка": ДанныеЗадачи.Сделка.Представление(),
|
||
"Наименование": ДанныеЗадачи.Наименование,
|
||
"Приоритет": ДанныеЗадачи.Приоритет.Представление(),
|
||
"Статус": ДанныеЗадачи.Статус.Представление(),
|
||
"Код": ДанныеЗадачи.Код
|
||
}
|
||
|
||
ОбластьСтроки.ЗаполнитьПараметры(ПараметрыОбласти)
|
||
Писатель.ВывестиВертикально(ОбластьСтроки)
|
||
|
||
Счетчик += 1
|
||
;
|
||
;
|
||
|
||
знч БайтыТаблицы = ИтоговыйТабличныйДокумент.ЭкспортироватьВБайты(ФорматЭкспортаТабличногоДокумента.Xls)
|
||
знч СвойстваДвоичногоОбъекта = новый ДвоичныйОбъект.Свойства("ВыгрузкаЗадач").Временные()
|
||
знч Результат = ОбъектноеХранилище.ЗагрузитьИзБайт(Байты = БайтыТаблицы, Свойства = СвойстваДвоичногоОбъекта)
|
||
|
||
возврат Результат.Ссылка
|
||
; |