|
Запретить ввод на основании Документа | ☑ | ||
---|---|---|---|---|
0
zhuk125
31.03.16
✎
09:21
|
Добрый день. Есть два документа, ЗаказПокупателя и ЗаказПоставщику, если в Заказе покупателя стоит статус новый или Сформирован, запрещаю создание док. на основании Заказ покупателя.
Обычное приложение, "Упп для Украины". Вопрос, как сделать тоже самое только в Управляемом приложении, где разместить код? как переписать примерно понимаю // запрет к созданию каких-либо документов, на основании заказа, пока не будет состояние "Утвержден Если ТипЗнч(Основание) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда а = Перечисления.СостоянияДокументов.Новый; в = Перечисления.СостоянияДокументов.Сформировано; Если Основание.Состояние = а Или Основание.Состояние = в Тогда ВызватьИсключение "Нельзя создать Документ на основании, пока он в состоянии Новый или Сформирован"; КонецЕсли; КонецЕсли;//Конец Запрета |
|||
1
lamme
31.03.16
✎
09:22
|
в модуле документа
в процедуре Процедура ОбработкаЗаполнения(Основание) |
|||
2
zhuk125
31.03.16
✎
09:25
|
(1) этот код и так прописан в модуле Документа в Процедуре ОбработкаЗаполнения(Основание) но он работает только в обычном приложении в Управляемом ничего не происходит (
|
|||
3
Рэйв
31.03.16
✎
09:34
|
Как вариант.
В подчиненных документах проверяй если это новый и у основания стоит статус Сформирован, то Отказ=Истина |
|||
4
Рэйв
31.03.16
✎
09:38
|
*ПередЗаписью
|
|||
5
Ёпрст
31.03.16
✎
09:45
|
(0)
тупо запиши чего-нибудь в ОбработкаЗаполнения в какой-либо реквизит шапки, в ПриОткрытии проверяй этот реквизит, ежели заполнен тем, чем надо, Отказ = истина. Усё. |
|||
6
Ёпрст
31.03.16
✎
09:46
|
Можешь, и отдельный реквизит типа булева слепить, жалко, что ле..
|
|||
7
hhhh
31.03.16
✎
09:48
|
(2) посмотри отладчиком. Должен это код работать в уф.
|
|||
8
mehfk
31.03.16
✎
09:58
|
(0) В обработке заполнения нужные проверки + вызвать исключение, если проверки не прошли.
|
|||
9
mehfk
31.03.16
✎
09:59
|
(8) + Тьфу, не прочитал код. Будет работать и в УФ.
|
|||
10
mehfk
31.03.16
✎
10:05
|
Вот примерно так перепиши
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Документ1") Или ТипЗнч(ДанныеЗаполнения) = Тип("ДокументОбъект.Документ2") Тогда ВызватьИсключение "Нельзя!"; КонецЕсли; КонецПроцедуры |
|||
11
zhuk125
31.03.16
✎
10:21
|
(10) Спасибо все работает)
|
|||
12
Serg_1960
31.03.16
✎
10:36
|
(7) Обработчик всегда вызывается, кроме создания нового документа копированием существующего. А вот код может быть нерабочим :(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |