Имя: Пароль:
1C
1С v8
Прервать вызов процедуры Записи документа и потом продолжить
0 AlexTimin
 
06.04.20
15:15
Добрый день.
Имеется задача, выполнить определенные интерактивные действия перед записью документа. Т.е. пользователь нажимает кнопку Записать или Провести, далее я показываю пользователю окно, он что то делает и далее продолжается запись/проведение документа. Есть возможность такое сделать? УФ, модальности нет.
1 ДенисЧ
 
06.04.20
15:22
Своя кнопка записать, в ней то, что тебе нужно, потом вызов штатного метода
2 zladenuw
 
06.04.20
17:07
3 Сияющий в темноте
 
06.04.20
23:17
момент первый
на ыорме есть событие записи,где смело можно поставить отказ=Истина и делать,что угодно.
опять же,можно поставить флаг и дать команду записи еще раз,а при флаге уже пойти записывать.

вот с программной записью документа сложнее-его пишут на сервере,а таи форму не вызвать никак.
4 Индиго
 
07.04.20
05:59
(0)А чем ПередЗаписью() не угодило?
5 vicof
 
07.04.20
07:29
(4) +1
6 AlexTimin
 
07.04.20
08:41
(4) ПередЗаписью нужно будет прервать выполнение программы, выполнить свои действия, а потом запустить снова Запись. А я спрашивал про вариант прерывания ПередЗаписью и последующего продолжения этой процедуры, а не вызов новой записи.

(2) Спасибо за статью
Прочитав её, осознал что всего скорее в режиме отказа от модальности мой вопрос не решается так как представляю его я, надо прерывать процедуру записи и потом вызывать новую.
7 Alex87r
 
07.04.20
08:46
(6) Похоже ты все неправильно понял.

1)    Модуль формы  ПередЗаписью(Отказ, ПараметрыЗаписи)  

Выполняется на клиенте!

Этот обработчик следует использовать, если необходимо организовать диалог с пользователем перед тем, как записать объект. Запросить дополнительную информацию,  предупредить о чём-либо, дать возможность отказаться и т.п.

Второй параметр  этого обработчика  «ПараметрыЗаписи»  имеет тип «Структура». У документов эти параметры заполняются системой предопределенными параметрами РежимЗаписи, РежимПроведения. Можно добавить свои!

Эти параметры передаются между событиями формы ПередЗаписьюНаСервере, ПриЗаписиНаСервере, ПослеЗаписиНаСервере, где их можно благополучно  использовать. Например, можно спросить что-то у пользователя и ответ записать в этот параметр. И уже, например, в ПриЗаписиНаСервере использовать этот параметр для анализа и дальнейших действий.
8 fisher
 
07.04.20
09:32
(7) Все он правильно понял.
9 AlexTimin
 
07.04.20
09:37
(7) я в курсе что это выполняется на клиенте. Как остановиться в процедуре ПередЗаписью на клиенте и спросить пользователя что то, в режиме отказа от модальности??
10 fisher
 
07.04.20
09:51
(9) Отменить запись, спросить и повторить запись при необходимости. Все верно. Для пользователя разницы не будет. Других вариантов без модальности нет.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший