|
УТ 11 ПередЗаписью() в форме вызывается 2 раза | ☑ | ||
---|---|---|---|---|
0
mastodont
09.02.21
✎
11:27
|
Надо перед записью заказа задать вопрос пользователю.
По идее событие формы ПередЗаписью() подошло бы. Но проблема в том, что оно вызывается два раза. И соответсвенно пользователь видит вопрос два раза. Есть ли какой-то правильный способ? Что бы не изобретать костыли? |
|||
1
H A D G E H O G s
09.02.21
✎
11:29
|
(0) Посмотреть стек вызовов и понять, где растут кривые руки.
|
|||
2
mastodont
09.02.21
✎
11:38
|
Да не, это я уже сделал и нашел реквизит НеВыполнятьПроверкуПередЗаписью...
Но чет я не понимаю 1С порой. |
|||
3
Serg_1960
09.02.21
✎
11:41
|
"Перед записью" вызывается в модуле формы (клиент), потом в модуле формы (сервер), после этого в модуле объекта (сервер)... а Вы где задаёте вопрос? :)
|
|||
4
mastodont
09.02.21
✎
11:42
|
(3) я ж написал, что в форме...
|
|||
5
fisher
09.02.21
✎
11:44
|
(4) Как уже советовали - смотреть стек вызовов. Возможно "лишняя" запись вызывается программно.
|
|||
6
mastodont
09.02.21
✎
11:44
|
Тут логика в том, что раньше в 1С сначала проверяли стоит ли проводить документ, а сейчас проводят, а потом проверяют стоило ли, и если нет, то откатывают.
|
|||
7
mastodont
09.02.21
✎
11:45
|
(5) ну так и есть. Но это типовое поведение.
|
|||
8
fisher
09.02.21
✎
11:47
|
(7) Ну, если этот костыль не лечится, то вбивать новый костыль. А как еще? Костыли тем и опасны, что провоцируют появление новых костылей. Флаг какой-нить заведи, по которому вычленяй одну из записей.
|
|||
9
mastodont
09.02.21
✎
11:48
|
(8) 1Сники уже такой костыль сделали) И пользуются им...
|
|||
10
mastodont
09.02.21
✎
11:49
|
Я проблему то решил.
Просто не понимаю этих костылей в типовых конфах. Понять то вернее могу, но не принять... |
|||
11
Serg_1960
09.02.21
✎
11:50
|
(6) "Тут логика в том..." - документ проводят (вопрос виден), потом откатывают... и записывают вновь (раз вопрос опять виден)? У кого логика хромает?
|
|||
12
fisher
09.02.21
✎
11:51
|
(9) Пускай возьмут с полки пирожок. С дерьмовой начинкой.
А ты просто внимательно посмотри, почему они так сделали. Возможно, оттуда уже есть признак, по которому можно различить эти две записи. |
|||
13
Serg_1960
09.02.21
✎
11:51
|
"Ничего не понимаю!"(с)
|
|||
14
fisher
09.02.21
✎
11:55
|
(6) То есть ты хочешь задавать какой-то вопрос перед записью, а если запись откатилась и пользователь что-то поправил и повторно записывает - чтобы вопрос уже не задавался? Так что ли?
|
|||
15
Serg_1960
09.02.21
✎
11:58
|
Дай угадаю :) костыль стандартный: вставить дополнительное свойство объекта ЗадаватьВопросПередЗаписьюОбъекта (Да), а после вопроса - сбрасывать в "Нет"?
|
|||
16
mastodont
09.02.21
✎
12:10
|
(15) костылем я называю то, вот этот кусок типовой конфигурации:
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) Если НеВыполнятьПроверкуПередЗаписью Тогда НеВыполнятьПроверкуПередЗаписью = Ложь; Возврат; КонецЕсли; |
|||
17
Serg_1960
09.02.21
✎
12:41
|
(16) Я не угадывал типовой костыль, а твой костыль для решение проблемы :) Если по теме: да, в типовых я даже встречал параметр ТребуетсяПовторнаяПопыткаЗаписи, когда объект повторно записывался, но с другими дополнительными параметрами.
|
|||
18
Cthulhu
09.02.21
✎
15:15
|
тупо проводим, потом проверяем шо получается, и в зависимости от этого:
1) если получилась лажа - молча отменяем проведение ... 2) да здрявствует отказ от модальности!.. задаем вопрос - и пущай оно висит хоть до морковкиного заговенья а к вопросу прицепили указатель - что и с какими доп.параметрами (ссылка на документ - суется сюда) должно проверит ответ на этот вопрос ... 3) ой тляаа, прилетел ответ на вопрос, когда-то заданный - отловили ответ, и если вдруг ответ "не надо проводить" - то дергаем из доп.параметра - какой же ето документ не надо то шо сделано - и отменяем проведение. тут самое прикольное, что 1с уйдя от модальности - положило с прибором на актуальность данных. пока у кого-то висит вопрос - в данных уже валяются движения этого документа. и другие документы получают информацию с учетом этих движений... которые на самом деле не должны быть в этих данных - но они есть пока юзер-тормоз не ответит на вопрос. один затормозил - все остальные сработали вроде норм - тормоз отказался от проведения - оказалось что все остальные на самом деле муйню сделали а не "вроде норм".... "ну ид..." (с) министр лавров |
|||
19
Cthulhu
09.02.21
✎
15:16
|
в (18) п.2 и далее - по "иначе" (в смысле если движения вроде Ок но надо подтверждение юзверя)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |