Вход | Регистрация
 

Нужна помощь с расписанием регламентного задания

Нужна помощь с расписанием регламентного задания
Я
   Bodrug
 
19.12.18 - 16:32
Всем добрый день!
1. Есть справочник "ЦиклическиеЗадачи", в нем реквизит "Расписание" типа "ХранилищеЗначений". В него при записи элемента справочника помещается объект типа "Расписание регламентного задания".
2. Есть регламентное задание со своим расписанием. Нужно в общем модуле получить все элементы справочника "ЦиклическиеЗадачи", и получить из каждого его расписание.
Вот проблема в том, что когда читаю (&НаСервере) ЦиклическаяЗадача.Расписание.Получить(), то получаю Неопределено, вместо значения расписания регл. задания.
 
 
   Bodrug
 
1 - 19.12.18 - 16:33
База Клиент-серверная, управляемые формы
   Bodrug
 
2 - 19.12.18 - 16:34
Процедура  ВыполнитьЦиклическиеЗадачи() Экспорт

    Запрос = Новый Запрос();
    Запрос.Текст = "ВЫБРАТЬ
                   |    ткЦиклическиеЗадачи.Ссылка КАК Ссылка,
                   |    ткЦиклическиеЗадачи.Расписание КАК Расписание,
                   |    ткЦиклическиеЗадачи.ОбразецЗадачи КАК ОбразецЗадачи,
                   |    ткЦиклическиеЗадачи.Исполнитель КАК Исполнитель,
                   |    ткЦиклическиеЗадачиПодразделения.Подразделение КАК Подразделение,
                   |    ВыполнениеЦиклическихЗадач.ДатаНачалаВыполнения КАК ДатаНачалаВыполнения,
                   |    ВыполнениеЦиклическихЗадач.ДатаЗавершенияВыполнения КАК ДатаЗавершенияВыполнения,
                   |    &ТекущаяДатаСеанса КАК ТекущаяДатаСеанса
                   |ИЗ
                   |    Справочник.ткЦиклическиеЗадачи КАК ткЦиклическиеЗадачи
                   |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ткЦиклическиеЗадачи.Подразделения КАК ткЦиклическиеЗадачиПодразделения
                   |        ПО ткЦиклическиеЗадачи.Ссылка = ткЦиклическиеЗадачиПодразделения.Ссылка
                   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВыполнениеЦиклическихЗадач КАК ВыполнениеЦиклическихЗадач
                   |        ПО ткЦиклическиеЗадачи.Ссылка = ВыполнениеЦиклическихЗадач.ЦиклическаяЗадача
                   |ГДЕ
                   |    НЕ ткЦиклическиеЗадачи.ПометкаУдаления";
    Запрос.УстановитьПараметр("ТекущаяДатаСеанса",ТекущаяДатаСеанса());
    Результат = Запрос.Выполнить().Выгрузить();

    Для Каждого Стр Из Результат Цикл
        Расписание = Стр.Расписание.Получить()//вот тут = Неопределено

        ДатаНачалаВыполнения = ?(ЗначениеЗаполнено(Стр.ДатаНачалаВыполнения),Стр.ДатаНачалаВыполнения,'00010101000000');
        ДатаЗавершенияВыполнения = ?(ЗначениеЗаполнено(Стр.ДатаЗавершенияВыполнения),Стр.ДатаЗавершенияВыполнения,'00010101000000');
        Если Расписание.ТребуетсяВыполнение(Стр.ТекущаяДатаСеанса,ДатаНачалаВыполнения, ДатаЗавершенияВыполнения) Тогда
                
        КонецЕсли;
    КонецЦикла;
    
    
КонецПроцедуры
   Bodrug
 
3 - 19.12.18 - 16:35
Вот сама процедура
   Bodrug
 
4 - 19.12.18 - 16:35
Код процедуры прилагается
   Bodrug
 
5 - 19.12.18 - 16:38
В свойствах вызываемого общего модуля стоят флажки "Сервер", "Внешнее соединение", "Вызов сервера"
   sandal_r
 
6 - 19.12.18 - 16:46
Запросы не умеют работать с типом ХранилищеЗначения.
Получайте через ссылку
стр.Ссылка.Расписание.Получить()
   Bodrug
 
7 - 19.12.18 - 16:48
(6) Так, к сожалению тоже не работает
   sandal_r
 
8 - 19.12.18 - 16:49
(7) стр.Ссылка.Расписание тоже Неопределено?
   Bodrug
 
9 - 19.12.18 - 16:51
(8) Нет, Стр.Ссылка.Расписание = ХранилищеЗначения.
И Стр.Расписание = ХранилищеЗначения.
А Стр.Ссылка.Расписание.Получить() = Неопределено
   Вафель
 
10 - 19.12.18 - 16:53
а как записываешь?
 
 Рекламное место пустует
   sandal_r
 
11 - 19.12.18 - 16:54
(9) ну значит в ХЗ положили Неопределено
   Bodrug
 
12 - 19.12.18 - 17:00
(10)

Хранилище = Новый ХранилищеЗначения(Задание.Расписание);
        
    Расписание = Хранилище;

В модуле объекта справочника ПриЗаписи()
   Bodrug
 
13 - 19.12.18 - 17:00
(11) ХЗ вычисляю при записи элемента справочника. И всё норм
   sandal_r
 
14 - 20.12.18 - 11:15
(13) ну а в другом месте у вас срабатывает ХЗ.Получить()?
Может туда ничего и не кладётся?
   youalex
 
15 - 20.12.18 - 11:22
(6) не надо так
   CaIIIka
 
16 - 20.12.18 - 11:35
(0) Создай в конфе одно регламентное задание, в справочнике интерактивно создавай/удаляй регламентное задание и храни ссылку на это задание, напр. в реквизите "ИдентификаторРегламентногоЗадания" типа "Уникальный идентификатор".

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует