|
Ввод на основании. Открытие существующего | ☑ | ||
---|---|---|---|---|
0
nAPACEHAK
04.06.18
✎
16:45
|
Доброго всем
Помогите разобраться со вводом на основании - если док. существует, что бы открывался существующий, а не создавался новый. интернет курил, не помогло. (((( Обычные формы Если документ существует уже, то открывается существующий + новый Где запретить создание нового?
|
|||
1
Beduin
04.06.18
✎
16:46
|
(0) Так приоткрытии отработает, когда уже все. Окончен бал
|
|||
2
spiller26
04.06.18
✎
16:50
|
(0) Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Проверяй там если есть открывай, а в этой делай возврат, если нет пусть дальше заполняет. |
|||
3
bolobol
04.06.18
✎
16:51
|
Отказ в ПередОткрытием не отрабатывает штолле?
|
|||
4
Beduin
04.06.18
✎
16:55
|
(3) Она позже чем заполнение вызовется
|
|||
5
spiller26
04.06.18
✎
16:58
|
(3) Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
Если ПровертьСуществованиеДокумента() = 0 Тогда Возврат; КонецЕсли; Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказНаряд") Тогда Автомобиль = ДанныеЗаполнения.Автомобиль; СервисныйКонсультант = ДанныеЗаполнения.Диспетчер; Мастер = ДанныеЗаполнения.Мастер; ЗаказНаряд = ДанныеЗаполнения.Ссылка; КонецЕсли; КонецПроцедуры |
|||
6
nAPACEHAK
04.06.18
✎
16:59
|
(3) нет. Точнее в таком виде как выше - он совсем не открывает, в случае когда док существует, ни существующий ни новый
(2) пробовал в ОбработкаЗаполнения открывать - если есть ссылка в выборке (существует) то
так тоже открывает существующий + новый |
|||
7
spiller26
04.06.18
✎
17:00
|
(5) поправка на ветер
Если ПровертьСуществованиеДокумента() <> 0 Тогда //тут нужно открыть существующие Возврат; //уже есть такие, так что болты, дальше не пойду КонецЕсли; |
|||
8
nAPACEHAK
04.06.18
✎
17:15
|
(7) Открывает новый + существующий
|
|||
9
nAPACEHAK
04.06.18
✎
17:18
|
(7) (8) при чем новый - без заполнения реквизитов. Просто чистый новый док
|
|||
10
Cyberhawk
04.06.18
✎
17:21
|
Так делать не надо.
При открытии связанного объекта проверяй, что связанный документ уже сушествует, сообщай об этом, плюс сообщай что надо сделать, чтобы все-таки ввести новый связанный объект (например, пометить на удаление старый), и отменяй открытие формы нового. Иначе как ты введешь новый связанный объект? |
|||
11
nAPACEHAK
04.06.18
✎
17:25
|
(10) пользовательские сообщения?
|
|||
12
Cyberhawk
04.06.18
✎
17:28
|
Какие сообщения? Что-то ты задаешь ненужные вопросы.
Ответь на мой вопрос. |
|||
13
Малыш Джон
04.06.18
✎
17:31
|
(9)Отказ в ОбработкеЗаполнения означает отказ заполнения, а не отказ от открытия нового документа, созданного на основании. Новый документ все равно откроется, просто будет незаполненный.
Используй дополнительные свойства: В ОбработкеЗаполнения() проверяй на существующий, если есть, то открывай существующий, а в ДополнительныеСвойства вставляй свойство типо "ОтменаОткрытия" А ПередОткрытием() проверяй, если в ДополнительныхСвойтсвах есть свойство "ОтменаОткрытия", то ставь Отказ = Истина. |
|||
14
nAPACEHAK
04.06.18
✎
17:32
|
эмм.... мож я чего не так понял? точнее я чегото вроде совсем не понял ((((
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) возврат; итд создается новый документ значит наверно всетаки в ПриОткрытии () проверки надо делать Но в ПриОткрытии - в теме поста чего то совсем запутался (( (10) мож я вопрос не понял. Хочу что бы если документ уже был введен на основании ЗН, то открывался ранее введенный документ. Если нет - то новый (13) были такие мысли но чего то не получилось разобраться с ДопСвойствами ((( |
|||
15
Cyberhawk
04.06.18
✎
17:35
|
(13) "Используй дополнительные свойства" // Не прокатит - они в форму не передаются
|
|||
16
Fragster
гуру
04.06.18
✎
17:35
|
||||
17
nAPACEHAK
04.06.18
✎
17:35
|
в ДополнительныеСвойства как "ОтменаОткрытия" добавить?
|
|||
18
Cyberhawk
04.06.18
✎
17:35
|
(14) "Хочу что бы если документ уже был введен на основании ЗН, то открывался ранее введенный документ" // А теперь мой вопрос в (10)
|
|||
19
Cyberhawk
04.06.18
✎
17:38
|
+(15) третий пост отсюда: ДополнительныеСвойства документа
|
|||
20
nAPACEHAK
04.06.18
✎
17:47
|
(10) (18)
плюс сообщай что надо сделать, чтобы все-таки ввести новый связанный объект (например, пометить на удаление старый) // а просто открыть старый не получится? |
|||
21
Малыш Джон
04.06.18
✎
17:51
|
(15) Если в обычных формах ( а судя по коду - это они) - то сработает, так как здесь в событии ПередОткрытием доступен и сам объект и его допсвойства.
|
|||
22
nAPACEHAK
04.06.18
✎
17:53
|
(15) ну может через глобальную переменную флаг существования передать можно?
Форма = ПолучитьФорму("Документ.BR_КонтрольКачества.ФормаОбъекта", ПараметрыФормы); Форма.УжеСуществует = Истина; Форма.Открыть (); |
|||
23
Малыш Джон
04.06.18
✎
17:55
|
(14) в модуле объекта
Процедура ОбработкаЗаполнения() ...если нашел существующий документ... Отказ = Истина; НайденныйДокумент.ПолучитьФорму().Открыть(); ДополнительныеСвойства.Вставить("ОтменаОткрытия"); ... иначе ... обработка заполнения КонецПРОцедуры в модуле формы: Процедура ПередОткрытием() Если ДополнительныеСвойства.Свойство("ОтменаОткрытия") Тогда Отказ = Истина; КонецЕсли; КонецПроцедуры |
|||
24
Cyberhawk
04.06.18
✎
17:57
|
(21) А, ну для ОФ, наверное, да - не проверял. Для УФ стопудово нет.
|
|||
25
Cyberhawk
04.06.18
✎
17:57
|
(20) Букварь тебе в помощь
|
|||
26
nAPACEHAK
04.06.18
✎
18:50
|
(25) Не спорю. А У Вас сразу всё получалось? С первых шагов?
|
|||
27
Cyberhawk
04.06.18
✎
19:31
|
(26) Сначала надо сдать экзамен на знание букваря
|
|||
28
nAPACEHAK
04.06.18
✎
19:59
|
(27) Спасибо что помогли :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |