|
8.2 УФ Отказать в открытии формы | ☑ | ||
---|---|---|---|---|
0
Rounder
11.07.12
✎
16:51
|
Ввожу документ на основании другого. В процедуре ОбработкаЗаполнения() в модуле объекта заполняю документ и кой-чего проверяю и если результат проверки меня не устраивает мне нужно сообщить пользователю (это понятно как) и не открывать форму документа, создаваемого на основании. Как лучше организовать отказ в открытии формы документа?
|
|||
1
Pro-tone
модератор
11.07.12
✎
16:55
|
Реквизит добавить "НеОткрыватьФорму", в обработке заполнения ему присваивать значение ИСТИНА если не надо открывать, ПриОткрытии() - тут анализировать, если истина, то Закрыть()
|
|||
2
Nexux
11.07.12
✎
16:57
|
ВызватьИсключение
|
|||
3
х86
11.07.12
✎
16:59
|
(1)это как не надо делать?
|
|||
4
Pro-tone
модератор
11.07.12
✎
17:01
|
(3) если не напишешь свой более умный вариант - уйдешь отсюда
|
|||
5
acsent
11.07.12
✎
17:02
|
(4) как минимум отказ = истина вместо закрыть
|
|||
6
Stim
11.07.12
✎
17:03
|
в процедуре ОбработкаЗаполнения() делай возврат; и не выдумывай
|
|||
7
Pro-tone
11.07.12
✎
17:06
|
(5) сорри, да отказ
|
|||
8
Rounder
11.07.12
✎
17:07
|
(6) не подходит - форма все одно будет создаваться
(1) и (2) пробую |
|||
9
Buster007
11.07.12
✎
17:09
|
(0) а почему нельзя проверить в ПриСозданииНаСервере? Зачем придумывать непонятно что?
|
|||
10
Buster007
11.07.12
✎
17:10
|
(4) модер обиделся?
|
|||
11
Rounder
11.07.12
✎
17:12
|
(9) Потому что будет один лишний запрос к БД.
|
|||
12
Pro-tone
модератор
11.07.12
✎
17:13
|
авторы постов как в (3) караться будут - охаял и свалил это называется
|
|||
13
Pro-tone
модератор
11.07.12
✎
17:14
|
(12) для (10)
|
|||
14
fisher
11.07.12
✎
17:15
|
(1) Зачем же реквизит? Для этого параметры придуманы.
|
|||
15
Buster007
11.07.12
✎
17:17
|
(11) тебе виднее ;) если ты конечно решишь делать запрос на проверку и в обработкаЗаполнения и в ПриСозданииНаСервере... ну что ж, да будет так )
|
|||
16
Rounder
11.07.12
✎
17:20
|
Всем спасибо. Пора уходить. Завтра попробую.
|
|||
17
acsent
11.07.12
✎
17:26
|
Как (2) это методология 1с
|
|||
18
fisher
11.07.12
✎
17:30
|
(14) Не, туплю.
(9) А как ты в ПриСозданииНаСервере() передашь из ОбработкаЗаполнения() инфу, что форму открывать не надо? |
|||
19
х86
11.07.12
✎
17:30
|
(2)+500
(12)я не онлайн консультант (14)+500 |
|||
20
fisher
11.07.12
✎
17:32
|
(19) Зря ты (14) плюсуешь. Принятие решение идет в обработке заполнения. Параметры не канают.
|
|||
21
fisher
11.07.12
✎
17:37
|
Единственное, что приходит в голову в конце дня для избавления от лишнего реквизита - это вынести проверку в отдельную экспортную процедуру модуля документа и вызывать её в ПриСозданииНаСервере(), получив предварительно документ-объект.
|
|||
22
fisher
11.07.12
✎
17:38
|
(21) Тьфу. Не в процедуру, а функцию. И по результату разрешать открывать форму или запрещать. Зато и реквизитов лишних не надо и до клиента дело не доходит.
|
|||
23
Stim
11.07.12
✎
17:42
|
(1) - точно не стоит делать
|
|||
24
Mort
11.07.12
✎
17:47
|
(20) А кто сказал что обработка заполнения это место для подобных решений?
|
|||
25
Buster007
11.07.12
✎
17:50
|
(18) я смогу решить надо открывать или не надо в ПриСозданииНаСервере и не буду париться в ОбработкаЗаполнения.
|
|||
26
fisher
11.07.12
✎
17:58
|
(24) Это напрашивается. Тогда объект еще доступен и вся нужная инфа есть. Другое дело, что полученный признак никак не красиво передать. Не создавать же для этого лишний реквизит, в самом деле.
А в ПриСозданииНаСервере придется ломиться к объекту, которого уже нет. Тоже не идеал. Но меньшее из зол. |
|||
27
riv40rus
11.07.12
✎
17:59
|
(0) а не проще отказ сделать на стороне формы инициатора?
|
|||
28
fisher
11.07.12
✎
17:59
|
(27) Нет.
|
|||
29
Mort
11.07.12
✎
18:05
|
(26) Результат отказа заполнения это отсутствие заполнения некоторых реквизитов. А это легко палится в присоздании, при наличии параметра "Основание"
|
|||
30
Stim
11.07.12
✎
18:09
|
+ можно вообще поставить стандартную обработку в ложь и открывать форму программно
|
|||
31
fisher
11.07.12
✎
18:19
|
(29) Да кто ж спорит. Просто некоторая избыточность возникает. По этим же реквизитам мы пробегаемся, когда пытаемся их заполнить в обработке заполнения. Поэтому и подмывает сразу оттуда просигнализировать о фэйле.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |