8.х Не идет по карте БП дальше.

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем AlenkaInt, 1 фев 2016.

  1. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Всем привет! Есть карта БП, выполняется одно действие, а дальше не идет. По карте смотрю - действие выполнено, но дальше не переходит.

    Вложения:

  2. Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.028
    Симпатии:
    51
    Баллы:
    54
    Показывайте код, как задача выполняется, как проверяется условие.
    Что идет после блока проверки условия (если "Дата определена" равно "Да")
  3. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Код точки ОпрделитьДату:
    Код:
    СтандартнаяОбработка = Ложь;
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    Действия.Клиент,
        |    Действия.Услуга,
        |    Действия.Действие,
        |    Действия.ОпределяющийДату,
        |    Действия.ДатаДействия
        |ИЗ
        |    РегистрСведений.Действия КАК Действия
        |ГДЕ
        |    Действия.Клиент = &Клиент
        |    И Действия.ДатаДействия = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)";   
        Запрос.УстановитьПараметр("Клиент", Клиент);   
        РезультатЗапроса = Запрос.Выполнить();   
        ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();   
        Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
            Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
            Задача.Дата      = ТекущаяДата();
            Задача.Автор     = ОбщегоНазначенияСервер.ТекущийПользователь();
            Задача.Предмет = ВыборкаДетальныеЗаписи.Клиент;
            Задача.Описание = Строка(ВыборкаДетальныеЗаписи.Действие) + " по услуге " + ВыборкаДетальныеЗаписи.Услуга;
            Задача.Наименование   = "Выполните пожалуйста заявку: "+Наименование;
            Задача.БизнесПроцесс  = ЭтотОбъект.Ссылка;
            Задача.ТочкаМаршрута  = ТочкаМаршрутаБизнесПроцесса;
            Задача.Исполнитель = ВыборкаДетальныеЗаписи.ОпределяющийДату;
            Задача.Записать();
            ФормируемыеЗадачи.Добавить(Задача);
        КонецЦикла;       
        УстановитьПривилегированныйРежим(Истина);
        Записать();   
    
    В точке проверки условия такой код.
    Код:
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    Действия.Клиент,
        |    Действия.Услуга,
        |    Действия.Действие,
        |    Действия.ОпределяющийДату,
        |    Действия.ДатаДействия
        |ИЗ
        |    РегистрСведений.Действия КАК Действия
        |ГДЕ
        |    Действия.Клиент = &Клиент
        |    И ДействияУходКлиента.ДатаДействия = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)";   
        Запрос.УстановитьПараметр("Клиент", Клиент);   
        РезультатЗапроса = Запрос.Выполнить();   
        ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
        Если НЕ РезультатЗапроса.Пустой() Тогда
            Результат = Истина;
        Иначе
            Результат = Ложь;
        КонецЕсли;    
    После блока проверки условия (если "Дата определена" равно "Да") пока просто точка действия. Еще нет кода..
  4. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Похоже дело все в точке ОжиданиеСрока.. Если удаляю, то идет дальше по схеме. Но что может быть не так? Уже новую точку действия делала.
  5. Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.028
    Симпатии:
    51
    Баллы:
    54
    Вот выполнили задачу "Определить дату", что дальше происходит? Задача "ОжиданиеСрока" создается в базе?
    Покажите код, как задача создается?
    Код выполнения задачи "ОпределитьДату" И "ОжиданиеСрока"
  6. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Не создается :-(
    Определить дату
    Код:
    СтандартнаяОбработка = Ложь;
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    Действия.Клиент,
        |    Действия.Услуга,
        |    Действия.Действие,
        |    Действия.ОпределяющийДату,
        |    Действия.ДатаДействия
        |ИЗ
        |    РегистрСведений.Действия КАК Действия
        |ГДЕ
        |    Действия.Клиент = &Клиент
        |    И Действия.ДатаДействия = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)";  
        Запрос.УстановитьПараметр("Клиент", Клиент);  
        РезультатЗапроса = Запрос.Выполнить();  
        ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();  
        Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
            Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
            Задача.Дата      = ТекущаяДата();
            Задача.Автор     = ОбщегоНазначенияСервер.ТекущийПользователь();
            Задача.Предмет = ВыборкаДетальныеЗаписи.Клиент;
            Задача.Описание = Строка(ВыборкаДетальныеЗаписи.Действие) + " по услуге " + ВыборкаДетальныеЗаписи.Услуга;
            Задача.Наименование   = "Выполните пожалуйста заявку: "+Наименование;
            Задача.БизнесПроцесс  = ЭтотОбъект.Ссылка;
            Задача.ТочкаМаршрута  = ТочкаМаршрутаБизнесПроцесса;
            Задача.Исполнитель = ВыборкаДетальныеЗаписи.ОпределяющийДату;
            Задача.Записать();
            ФормируемыеЗадачи.Добавить(Задача);
        КонецЦикла;      
        УстановитьПривилегированныйРежим(Истина);
        Записать();  
    ОжиданиеСрока
    Код:
    СтандартнаяОбработка = Ложь;
        Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
        Задача.Дата      = ТекущаяДата();
        Задача.Автор     = ОбщегоНазначенияСервер.ТекущийПользователь();
        Задача.Наименование   = "Выполните пожалуйста заявку: "+Наименование;
        Задача.БизнесПроцесс  = ЭтотОбъект.Ссылка;
        Задача.ТочкаМаршрута  = ТочкаМаршрутаБизнесПроцесса;
        Задача.Исполнитель = ОбщегоНазначенияСервер.ТекущийПользователь();
        Задача.Записать();
        ФормируемыеЗадачи.Добавить(Задача);   
    
    Но в ожидание срока у меня даже отладчик не срабатывает...
  7. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Всем спасибо. Так и не поняла в чем дело. Просто переписала все заново. Скорее всего в форме задачи не так обработала кнопку выполнить. Потому что на этом моменте стало работать.
    alexburn нравится это.

Поделиться этой страницей