|
Ввод на основании | ☑ | ||
---|---|---|---|---|
0
lamme
08.11.19
✎
11:11
|
1С уф. один док вводиться на основании другого.
те штатно .. через ОбработкаЗаполнения в документе - который создается. Ситуация - заказ клиента - реализация. Как можно запретить создавать вторую реализацию по заказу. (т.е. выдавать окно = типа - реализация уже создана и пустую реализацию даже не открывать .) Штатно - что-то типа - Отказ=истина - нет ничего ? а то придется же ... какую то переменную заполнять в ОбработкаЗаполнения и в присозданиинасервере - отрабатывать эту переменную |
|||
1
hhhh
08.11.19
✎
11:13
|
(0) ВызватьИсключение
|
|||
2
Ненавижу 1С
гуру
08.11.19
✎
11:16
|
(0) Придется конечно
|
|||
3
lamme
08.11.19
✎
11:20
|
(1)
а как ... не уловил ) ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) ... Если ТипДанныхЗаполнения = Тип("ДокументСсылка.ЗаказПокупателя") Тогда ЕстьРанееСозданныеРеализации = НайтиРеал(ТипДанныхЗаполнения) Если ЕстьРанееСозданныеРеализации тогда иначе ЗаполнитьДокументНаОснованииЗаказПокупателя(ДанныеЗаполнения); конецесли; конеесли; |
|||
4
Mankubus
08.11.19
✎
11:22
|
(3) ВызватьИсключение (Raise)
Синтаксис: ВызватьИсключение <Выражение> Описание: При использовании данной формы оператора вызывается новое исключение. Результат вычисления выражения преобразуется к строке и данная строка используется в качестве описания исключения. |
|||
5
lamme
08.11.19
✎
11:28
|
(4)
я читать СП умею. как применить - не понимаю. |
|||
6
ДенисЧ
08.11.19
✎
11:32
|
(5) Проверить наличие уже введённого на основании документа. Если есть - вызывать исключение.
|
|||
7
hhhh
08.11.19
✎
11:34
|
(5) ну там где хотел написать Отказ = Истина, пишешь
ВызватьИсключение("Хрен вам, а не ввод на основании!!"); |
|||
8
lamme
08.11.19
✎
11:38
|
пока делаю так .. может быть тупо
Если не ЕстьРанееСозданныеРеализации тогда ЗаполнитьДокументНаОснованииЗаказПокупателя(ДанныеЗаполнения); иначе Попытка ввв=ввв/0; исключение ВызватьИсключение "Уже есть созданная реализация"; конецпопытки; конецесли; |
|||
9
lamme
08.11.19
✎
11:39
|
работает ... )))
форма сообщения - как форма ошибки - но эффект нужный |
|||
10
ДенисЧ
08.11.19
✎
11:41
|
(8) Расстрелять. Зачем на ноль делить, если можно сразу исключение звать?
|
|||
11
lamme
08.11.19
✎
11:42
|
(10)
как оно там вызовется ? |
|||
12
Ёпрст
08.11.19
✎
11:44
|
(11) п...ц
ВызватьИсключение |
|||
13
Ёпрст
08.11.19
✎
11:44
|
и попытку выкини из кода
|
|||
14
hhhh
08.11.19
✎
11:45
|
(11) так пробуй
Если не ЕстьРанееСозданныеРеализации тогда ЗаполнитьДокументНаОснованииЗаказПокупателя(ДанныеЗаполнения); иначе ВызватьИсключение "Уже есть созданная реализация"; конецесли; |
|||
15
Ёпрст
08.11.19
✎
11:45
|
Хотя, ВызватьИсключение - тот еще г..о код.
Проще уж завести переменную и потом в ПриОткрытии возврат и ПоказатьЗначение(переменная), в переменную пихать ссылку на документ-основание |
|||
16
lamme
08.11.19
✎
11:46
|
если честно - то для меня это открытие
что ВызватьИсключение можно просто так = без попытка/исключение использовать |
|||
17
lamme
08.11.19
✎
11:47
|
ну да .. работает
Если не ЕстьРанееСозданныеРеализации тогда ЗаполнитьДокументНаОснованииЗаказПокупателя(ДанныеЗаполнения); иначе ВызватьИсключение "Уже есть созданная реализация"; конецесли; |
|||
18
lamme
08.11.19
✎
11:48
|
спасибо
г*но код работает правильнее - было бы через переменную. и в присозданиинасервере() отрабатывать эту переменную .. |
|||
19
Кодер
08.11.19
✎
11:52
|
Многие конфы считают остаток от неотгруженного по счёту, может и эта так делает? Тогда в случае неполной отгрузки ты не заблокируешь продажу, но продашь остаток заказанного клиентом.
Отчёт есть в форме заказа? И в любом случае - лучше выдать модальное предупреждение пользователю, чем мешать продажам. |
|||
20
lamme
08.11.19
✎
11:59
|
(19)
это проговарилось пользователю. пяткой били в грудь и говорили - что такого быть не может. реализация создается после 100% оплаты. поэтому - сделано так. и модальные окна на уф .. это печаль , однако |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |