Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 15:56

Вопрос по бизнес -процессу

Автор Леонид, 09 дек 2009, 08:56

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

Леонид

Имеется бизнес-процесс,, в котором количество последовательных этапов определяется индивидуально на момент старта экземпляра процесса. Необходимоопределить этот процесс на старте по запросу. При этом процесс может  иметь очень долгий период (с утра и до вечера)

Никитина

При использовании таких реквезитов адресации:
Пользователь (ссылка на справочник Пользователи);
Подразделение.
Считается что в регистре сведений, отвечающем за адресацию, соответствующие сведения измерения существуют.
Реквизиты задачи:
ДатаВыполнения (время выполнения задачи);
Исполнитель (ссылка на справочник пользователей системы);
Склад (ссылка на справочник складов)

обрабтка перед выполнением
Процедура ПередВыполнением(Отказ)

Если Исполнитель.Пустая() Тогда
Исполнитель = ПараметрыСеанса.ТекущийИсполнитель;

КонецЕсли;

ДатаВыполнения = ТекущаяДата();

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


получение точки
Функция ПолучитьТочкуМаршрута()

Запрос = Новый Запрос;

Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| НаМаршрутеТочкиМаршрута.НомерСтроки КАК НомерСтроки,
| НаМаршрутеТочкиМаршрута.Склад
|ИЗ
| БизнесПроцесс.НаМаршруте.ТочкиМаршрута КАК НаМаршрутеТочкиМаршрута
|
|ГДЕ
| (НаМаршрутеТочкиМаршрута.Склад НЕ В (ВЫБРАТЬ РАЗЛИЧНЫЕ
| ЭтапПути.Склад
| ИЗ
| Задача.ЭтапПути КАК ЭтапПути
| ГДЕ
| ЭтапПути.БизнесПроцесс = &БизнесПроцесс ))
| И (Ссылка = &БизнесПроцесс)
|УПОРЯДОЧИТЬ ПО
| НомерСтроки";

Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

Если Выборка.Следующий() Тогда
Возврат (Выборка.Склад);

Иначе
Возврат(Справочники.Склады.ПустаяСсылка());

КонецЕсли;

КонецФункции


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск