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

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

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

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


Теги:
 

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
184 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
50 Сообщений
andron81_81
40 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
29 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 327
  • Точка Скрытых: 0
  • Точка Пользователей: 6
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal