Подскажите, пожалуйста, почему регламетное задание не срабатывает при таком коде, расписание установила
Таблица = Новый ТабличныйДокумент();
СКД = Отчеты.Цены.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = СКД.НастройкиПоУмолчанию;
Период = Настройки.ПараметрыДанных.Элементы.Найти("Период");
Период.Значение = ТекущаяДата();
Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
//Передаем в макет компоновки схему, настройки и данные расшифровки
МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Настройки, Расшифровка);
ВнешниеПараметры = Новый Структура;
//Выполним компоновку с помощью процессора компоновки
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка);
//Выводим результат в табличный документ
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(Таблица);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);
ПутьКФайлу = "C:\Users\Desktop\Новая папка";
ИмяФайла="Отчет от" + СОКРЛП(Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd-ЧЧ-мм-сс"))+ ".xls";
Файл = ПутьКФайлу + ИмяФайла;
Таблица.Записать(Файл);
ПоказатьПо теме из базы знаний
- Универсальное регламентное задание
- Не работают регламентные задания?
- Универсальное регламентное задание для запуска внешних и встроенных обработок. Как настроить легко и быстро (8.х)
- Конфигурирование новых регламентных заданий с помощью расширения
- Базовые принципы работы с регламентными заданиями подсистем БСП
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Я так понимаю, что само рег. задание не видит такой папки "C:\Users\Desktop\Новая папка" или же видит, но у пользователя, под которым оно выполняется, эта папка своя. Нужно прописывать универсальное сетевое имя, которое одинаково для всех пользователей системы.
ПутьКФайлу = "C:\Users\Desktop\Новая папка";
ИмяФайла="Отчет от" + СОКРЛП(Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd-ЧЧ-мм-сс"))+ ".xls";
Файл = ПутьКФайлу + ИмяФайла;
Этот код обозначение следующее:
Таблица.Записать(C:\Users\Desktop\Новая папкаОтчет от);
Как минимум не хватает знака "\"
ИмяФайла="Отчет от" + СОКРЛП(Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd-ЧЧ-мм-сс"))+ ".xls";
Файл = ПутьКФайлу + ИмяФайла;
Этот код обозначение следующее:
Таблица.Записать(C:\Users\Desktop\Новая папкаОтчет от);
Как минимум не хватает знака "\"
(6) теперь сделала так, но ошибка в обработке "Ошибка при выполнении файловой операции 'C:\Users\Desktop\Новая папка\Отчет от 2020-01-13.xls'. -2147287037(0x80030003): Путь %1 не найден"
Таблица = Новый ТабличныйДокумент();
СКД = Отчеты.МаркетинговоеИсследованиеЦен.ПолучитьМакет("Макет");
Настройки = СКД.НастройкиПоУмолчанию;
Период = Настройки.ПараметрыДанных.Элементы.Найти("Период");
Период.Значение = ТекущаяДата();
Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
//Передаем в макет компоновки схему, настройки и данные расшифровки
МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Настройки, Расшифровка);
ВнешниеПараметры = Новый Структура;
//Выполним компоновку с помощью процессора компоновки
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка);
//Выводим результат в табличный документ
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(Таблица);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);
ПутьКФайлу = "C:\Users\Desktop\Новая папка";
ИмяФайла="Отчет от" + " "+ СОКРЛП(Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd"))+ ".xls";
Файл = ПутьКФайлу +"\" + ИмяФайла;
Таблица.Записать(Файл,ТипФайлаТабличногоДокумента.XLS);
Показать
(8) каталог то существует такой? попробуйте конструкцию (я так логи пишу в новые папки-месяцы), а путь у вас, и правда, очень странный (не универсальный для клиент-серверной версии, например), чтобы был универсальный, надо общий ресурс использовать и указывать путь с "\\":
КаталогНаДиске = Новый Файл(Файл);
Если НЕ КаталогНаДиске.Существует() Тогда
СоздатьКаталог(Файл);
КонецЕсли;
А меня еще смущает, что вы табличный документ записываете без указания второго параметра. В итоге у вас расширение xls, а реально формат - mxl.
Синтаксис:
Записать(<ИмяФайла>, <ТипФайлаТаблицы>)
Параметры:
<ИмяФайла> (обязательный)
Тип: Строка.
Имя файла, в котором сохраняется табличный документ.
<ТипФайлаТаблицы> (необязательный)
Тип: ТипФайлаТабличногоДокумента.
Формат, в котором будет сохранен табличный документ.
Значение по умолчанию: MXL.
Записать(<ИмяФайла>, <ТипФайлаТаблицы>)
Параметры:
<ИмяФайла> (обязательный)
Тип: Строка.
Имя файла, в котором сохраняется табличный документ.
<ТипФайлаТаблицы> (необязательный)
Тип: ТипФайлаТабличногоДокумента.
Формат, в котором будет сохранен табличный документ.
Значение по умолчанию: MXL.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот