Имя: Пароль:
1C
1С v8
Бизнес-процессы
0 berendej
 
26.09.11
15:24
Создаю бизнес-процесс,на его основе формируется задача, как к этой задаче программно подцепить документ?
1 Jstunner
 
26.09.11
15:26
в чем сложность-то?
2 Irbis
 
26.09.11
15:27
Открывай форму нужного документа, зачем цеплять специально чего-то
3 Beduin
 
26.09.11
15:27
(0) В модуле бизнес-процесса есть предопределнные процедуры.
4 berendej
 
26.09.11
15:47
(2),не мне нужно не любой док,а тока счет на оплату покупателя
5 Irbis
 
26.09.11
15:48
Если из задачи можно получить ссылку на нужный док, то что еще надо?
6 Irbis
 
26.09.11
15:49
ЗадачаОбъект.<Имя задачи> (TaskObject.<Имя задачи>)
ОбработкаИнтерактивнойАктивации (InteractiveActivationProcessing)
Синтаксис:
ОбработкаИнтерактивнойАктивации(<Стандартная обработка>)
Параметры:
<Стандартная обработка>
Тип: Булево. В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина
Описание:
Возникает при выполнении метода АктивироватьИнтерактивно перед вызовом аналогичного обработчика у соответствующей точки маршрута бизнес-процесса. Если не изменялась стандартная обработка, то после этого события будет вызван обработчик интерактивной активации у точки маршрута бизнес-процесса.
7 berendej
 
26.09.11
15:55
(6)т.е. при создании задачи будет интерактивно вываливаться форма нужного мне документа?
8 Irbis
 
26.09.11
15:56
Если напишешь, будет.
9 berendej
 
26.09.11
16:10
а как программно сделать запись в РС из задачи?
10 Irbis
 
26.09.11
16:12
Процедура ЗаявкаНаИзменениеПроектаОбработкаИнтерактивнойАктивации(ТочкаМаршрутаБизнесПроцесса, Задача, СтандартнаяОбработка)
   ФормаЗаявки=ЗаявкаНаИзменениеПроекта.ПолучитьФорму();
   ФормаЗаявки.Открыть();
   // Запись в регистр сведений информации о просмотре задачи
   НаборЗаписей=РегистрыСведений.ПросмотрЗадач.СоздатьНаборЗаписей();
   НаборЗаписей.Отбор.Задача.Значение=Задача;
   НаборЗаписей.Отбор.Задача.Использование=Истина;
   НаборЗаписей.Отбор.Пользователь.Значение=глТекущийПользователь;
   НаборЗаписей.Отбор.Пользователь.Использование=Истина;
   НаборЗаписей.Прочитать();
   Если НаборЗаписей.Количество()=0 Тогда
       Запись=НаборЗаписей.Добавить();
       Запись.Задача=Задача;
       Запись.Пользователь=глТекущийПользователь;
       Попытка
           НаборЗаписей.Записать();
       Исключение
           Сообщить(ОписаниеОшибки(), СтатусСообщения.Важное)
       КонецПопытки;
       #Если ВнешнееСоединение Тогда
       #Иначе
           СброситьСведенияОЗадаче(Ссылка);
       #КонецЕсли
   КонецЕсли;
   СтандартнаяОбработка=Ложь;
КонецПроцедуры
11 berendej
 
26.09.11
16:43
(10)спасибо
12 berendej
 
26.09.11
22:42
В модуле бизнес-процесса,для одной из задач идёт такой код
Счет = Документы.СчетНаОплатуПокупателю.СоздатьДокумент();

Счет.Записать(РежимЗаписиДокумента.Запись);
А как можно заполнить реквизиты документа значениями по умолчанию?
13 berendej
 
27.09.11
09:20
jh
14 Irbis
 
27.09.11
09:22
Счет.Реквизит1=ЗначениеПоУмолчанию1;
....
Счет.РеквизитN=ЗначениеПоУмолчаниюN;
Счет.Записать(РежимЗаписиДокумента.Запись);
15 berendej
 
27.09.11
09:37
(14)ну так немного топорно получается,много реквизитов...я думал,может их можно зацепить из какой-нибудь процедуры или модуля, но не нашел
16 Irbis
 
27.09.11
09:59
Заполнить() ищи в СП
17 FIXXXL
 
27.09.11
10:51
(15) смотри процедуры формы дока ПриОткрытии и ПередОткрытием