Создание регламентного задания

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. schweigen 13.01.16 06:26 Сейчас в теме
Доброго времени суток.
Помогите найти ошибку.
Собственная конфигурация, надо дать возможность пользователю создавать регламентные задания. Для этого создан справочник, в модуле объекта код ниже.
Все работает, пока не включаешь ДетальноеРасписаниеДня. Если задано детальное расписание - задание перестает запускаться, в журнале регистрации ничего не пишет.


Процедура ПередЗаписью(Отказ)

	Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(УникальныйИдентификатор);
	Если Задание = Неопределено Тогда
		Задание = РегламентныеЗадания.СоздатьРегламентноеЗадание( Метаданные.РегламентныеЗадания.ВыгрузкаОтчетности );
	КонецЕсли;
	
	Задание.Использование = Использование;
	Задание.Расписание.ДетальныеРасписанияДня.Очистить();
	Задание.Расписание.ДниНедели = ПолучитьМассивДнейНедели();
	Задание.Параметры.Очистить();
	Задание.Параметры.Добавить(СсылкаОбъекта);	
	
	Если ДетальноеРасписаниеДня Тогда 		
		Задание.Расписание.ПериодПовтораВТечениеДня = 0;
		Задание.Расписание.ПаузаПовтора				= 0;
		Задание.Расписание.ВремяНачала				= Дата('00010101');
		Задание.Расписание.ВремяКонца				= Дата('00010101');
		Для каждого СтрокаТЧ из ДетальноеРасписание Цикл
			Расписание = новый РасписаниеРегламентногоЗадания; 
			Расписание.ВремяНачала 				= СтрокаТЧ.ВремяНачала;
			Расписание.ВремяКонца 				= СтрокаТЧ.ВремяКонца;
			Расписание.ПериодПовтораВТечениеДня = СтрокаТЧ.ПериодПовтораВТечениеДня * 60;
			Расписание.ПаузаПовтора 			= СтрокаТЧ.ПаузаПовтора * 60;
			Задание.Расписание.ДетальныеРасписанияДня.Добавить(Расписание);
		КонецЦикла;  
	Иначе		
		Задание.Расписание.ПериодПовтораВТечениеДня = ПериодПовтораВТечениеДня * 60;
		Задание.Расписание.ПаузаПовтора				= ПаузаПовтора * 60;
		Задание.Расписание.ВремяНачала				= ВремяНачала;
		Задание.Расписание.ВремяКонца				= ВремяКонца;
	КонецЕсли;
	
	Задание.Записать();
	
КонецПроцедуры
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Aleanza 13.01.16 09:56 Сейчас в теме
Посмотрите в консоли заданий, запланирован ли следующий запуск
3. schweigen 18.01.16 09:46 Сейчас в теме
Проблема все еще актуальна.
Причина - не добавляются элементы в ДетальныеРасписанияДня (согласно с.п., это массив расписаний).
Значит, что то не так в этом куске кода
Если ДетальноеРасписаниеДня Тогда 		
	Для каждого СтрокаТЧ из ДетальноеРасписание Цикл
		Расписание = новый РасписаниеРегламентногоЗадания; 
		Расписание.ВремяНачала 		= СтрокаТЧ.ВремяНачала;
		Расписание.ВремяКонца 		= СтрокаТЧ.ВремяКонца;
		Расписание.ПериодПовтораВТечениеДня = СтрокаТЧ.ПериодПовтораВТечениеДня * 60;
		Расписание.ПаузаПовтора 	= СтрокаТЧ.ПаузаПовтора * 60;
		Задание.Расписание.ДетальныеРасписанияДня.Добавить(Расписание);
	КонецЦикла;  
КонецЕсли;
Показать


В итоге в отладчике Задание.Расписание.ДетальныеРасписанияДня.Количество() = 0
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот