|
1С 8.3 УФ. Блокируется объект при программной записи | ☑ | ||
|---|---|---|---|---|
|
0
Guerro
25.03.20
✎
13:09
|
Только начал работать с УФ.
Есть журнал документов "Склад", в модуле формы идет обработка внешнего события. Внешним событием выступает сканер ШтрихКода. У документа "Расход" есть ШтрихКод, при его сканировании в журнале "Склад", должно происходить: 1)Проверка на выдачу документа "Расход" 2)Если не выдан, то создать документ "ВыдачаТовара" на основании "расхода" с заполненными реквизитами и табличной частью. И открыть созданный документ не записывая его. 3)Если еще раз отсканировать этот же ШтрихКод, то провести документ "ВыдачаТовара" и закрыть форму. Как это реализовано: 1)На форме журнала документов "Склад" &НаКлиенте Форма = ПолучитьФорму("Документ.ВыдачаТовара.Форма.ФормаДокумента"); ДанныеФормы = Форма.Объект; Проводить = ВнешнееСобытиеНаСервере(ДокументРасход,ДанныеФормы); &НаСервере ПодчиненныеДокументы = ОсновныеФункции.ПолучитьСписокПодчиненныхДокументов(Рез); Для Каждого СтрокаТЗ из ПодчиненныеДокументы цикл Если ТипЗнч(СтрокаТЗ.Ссылка)=Тип("ДокументСсылка.ВыдачаТовара") тогда Сообщить(""+Рез+" уже выдан!"); Возврат Ложь; КонецЕсли; КонецЦикла; 2)На форме журнала документов "Склад" &НаСервере ДанныеФормы.Контрагент = ДокументРасход.Дилер; ДанныеФормы.ДокОснование = ДокументРасход.Ссылка; ДанныеФормы.Склад = ДокументРасход.Склад; ДанныеФормы.ТабличнаяЧасть1.Загрузить(ДокументРасход.ТабличнаяЧасть1.Выгрузить()); 3)На форме журнала документов "Склад" &НаКлиенте Если Проводить Тогда КопироватьДанныеФормы(ДанныеФормы, Форма.Объект); Сканировать=Ложь; Форма.ОткрытьМодально(); Сканировать=Истина; КонецЕсли; 4)Обработка внешнего события на форме ВыдачаТоваров &НаСервере Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение)); &На Клиенте Закрыть(); ________________________________________________________________________________ Проблема в том, что при проводки и закрытии "ВыдачаТовара". Обработка внешнего события формы "ВыдачаТовара", до сих пор активируется, при сканировании штрихкода и документ уже закрытый программно нельзя удалить, потому что он становится заблокирован. Как решить ситуацию, может неправильно закрываю или провожу? P.S. Сканировать - реквизит формы журнала документов "Склад" |
|||
|
1
Guerro
25.03.20
✎
13:40
|
Проблема решена. Проблема была в том, что я вручную вставил обработку "ПриЗакрытии", и забыл ее определить для формы "ВыдачаТовара".
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |