Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
28 Май 2018, 02:39
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: 8.2 УП. Бизнес-процесс. Нестандартное создание задач.  (Прочитано 9098 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн VK

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-12-01
  • Сайт: 
  • Профессия: Программист 1С
8.2 Управляемое приложение.

Есть простой линейный бизнес процесс состоящий из следующих точек-задач:

старт
1заказ поставщику
2поступление от поставщика
3отгрузка подрядчику
4поступление от подрядчика
финиш

на этапе 1 признаком завершения задачи является заказ всех требуемых товаров указанных в табличной части документа инициатора бизнес-процесса.
Причем документов "заказ поставщику" может быть несколько.
По условию задачи после проведения каждого документа "Заказ поставщику" должна создаваться задача точки 2 бизнес-процесса - "Поступление от поставщика". То есть стандартная обработка создания задачи при входе в точку 2 после выполнения задачи 1 мне не нужна.
Код создания задач после проведения документа "Заказ поставщику":

Процедура ОбработкаПроведения(Отказ, РежимПроведения)


СоздатьЗадачиДляПоступления();

КонецПроцедуры


Процедура СоздатьЗадачиДляПоступления()
Если Задачи.Задача.НайтиПоРеквизиту("ДокументИсточник", ЭтотОбъект.Ссылка).Пустая() Тогда
Задача = Задачи.Задача.СоздатьЗадачу();
Задача.Дата = ТекущаяДата();
Задача.Наименование = БизнесПроцессы.БизнесПроцессПроизводство.ТочкиМаршрута.ОжиданиеПоступленияОтПодрядчика.НаименованиеЗадачи;
Задача.БизнесПроцесс = БизнесПроцесс;
Задача.Подразделение = Справочники.Подразделения.Склад;
Задача.ТочкаМаршрута = БизнесПроцессы.БизнесПроцессПроизводство.ТочкиМаршрута.ПоступлениеОтПоставщикаОжидание;
Задача.ДокументИсточник = ЭтотОбъект.Ссылка;
Задача.Записать();
Задача.АктивироватьИнтерактивно();
Задача.Записать();
КонецЕсли;
КонецПроцедуры


Для этого в обработке события "Перед созданием задач" точки 2 добавил код

Процедура ПоступлениеОтПоставщикаПередСозданиемЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, СтандартнаяОбработка)
СтандартнаяОбработка = ложь;
КонецПроцедуры

Задача после этого не создается, но проблема в том, что бизнес процесс сразу перескакивает на точку 3 и создает задачи для нее, не смотря на то, что имеются невыполненные задачи точки 3. В карте маршрута при этом точки 2 и 3 светятся обе как текущие. Если выполнить точку 3, то процес пойдет дальше, влоть до завершения.
Вопрос - Как бы это обойти, чтобы и задачи вручную наклепать, и чтобы следующая точка пока не выполнялась? 


Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2861
  • РЕПУТАЦИЯ: 548
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Процедура ПоступлениеОтПоставщикаПередСозданиемЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, СтандартнаяОбработка)
СтандартнаяОбработка = ложь;
Задача = ФормируемыеЗадачи[0];
Задача.Дата = ТекущаяДата();
Задача.Наименование = БизнесПроцессы.БизнесПроцессПроизводство.ТочкиМаршрута.ОжиданиеПоступленияОтПодрядчика.НаименованиеЗадачи;
Задача.БизнесПроцесс = БизнесПроцесс;
Задача.Подразделение = Справочники.Подразделения.Склад;
Задача.ТочкаМаршрута = БизнесПроцессы.БизнесПроцессПроизводство.ТочкиМаршрута.ПоступлениеОтПоставщикаОжидание;
Задача.ДокументИсточник = ЭтотОбъект.Ссылка;
Задача.Записать();
Задача.АктивироватьИнтерактивно();
Задача.Записать();
КонецПроцедуры
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!


Теги:
 

Программное создание документа на основании документа

Автор GolickoffРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 5508
Последний ответ 23 Апр 2015, 08:45
от Golickoff
Автоматическое создание " Заполнение" документа

Автор mashencev_antonРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 4979
Последний ответ 06 Мар 2014, 14:48
от mashencev_anton
Создание отчета "Отсутствие заказов"

Автор dronspartak9@gmail.comРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4245
Последний ответ 16 Апр 2014, 15:09
от dronspartak9@gmail.com
Создание заказаов на производство на основании заказа на производство.

Автор Елена1986Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 20
Просмотров: 8856
Последний ответ 09 Сен 2015, 13:01
от Елена1986
Создание плана закупок с использованием плана продаж

Автор NataVlРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 1385
Последний ответ 26 Сен 2016, 16:25
от NataVl

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
139 Сообщений
alex0402
64 Сообщений
oleg-x
54 Сообщений
AIFrame AIFrame
53 Сообщений
buketov.av buketov.av
47 Сообщений
ilyay ilyay
39 Сообщений
wise wise
37 Сообщений
Анюта17
33 Сообщений
Alter
32 Сообщений
trialex3
30 Сообщений

* Кто онлайн

  • Точка Гостей: 213
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal