Использование Записать() в модуле формы документа #314684


#0 by cathode
Наткнулся на подозрительное поведение. Уж и не знаю, косяк ли это платформы, или у меня лыжи не едут... В СП в разделе "Документ - Модуль формы - Методы" читаем: Синтаксис: Записать Назначение: Записать документ в базу данных. Замечание: Этот метод применяется в Модуле формы документа непосредственно к документу локального контекста. Данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой "#Записать". Делаем вывод о том, что поскольку интерактивное нажатие кнопки с формулой "#Записать" вызывает предопределенную процедуру ПриЗаписи. Теперь смотрим типовую ТиС, документ ЧекККМ. Обращаем внимание на то, что обработка нажатий кнопок документа использует как раз вызов Записать в модуле формы. Там же, в модуле формы, есть и процедура ПриЗаписи, выполняющая стандартные действия по контролю даты документа и т.д. Ставим на нее брекпойнт и запускаем документ под отладчиком. Процедура не вызывается при нажатии ни на одну кнопку документа. Таким образом, документ ЧекККМ может быть записан и проведен (если есть права) задним числом в закрытом для редактирования периоде. Внимание, вопрос: уважаемые господа, ответьте мне, чего я в жизни не понимаю? Может быть это старый баян, а я не знал?
#1 by ТелепатБот
#2 by cathode
(+0) Корректировка: "Делаем вывод о том, что поскольку интерактивное нажатие кнопки с формулой "#Записать" вызывает предопределенную процедуру ПриЗаписи."
#3 by КонецЦикла
>>то же самое должно происходить и при вызове Записать из модуля формы документа. Ну дык ставь брейкпоинты и проверяй, чего форум засорять?
#4 by toys
ты прав, баян старый
#5 by cathode
Точки останова поставил и проверил, уважаемый. К сожалению, не срабатывают. Мой скромный вопрос, если сформулировать без подробностей, состоит в том, является ли данное поведение косяком платформы, ошибкой в документации или моим ее (документации) неверным толкованием? Просветите, пожалуйста, дилетанта.
#6 by toys
ПриОткрытии срабатывает при одноименном событии значит и записать должен...скорее всего "косяк"
#7 by cathode
Спасибо за мнение. Я тоже думаю, что это ошибка в платформе. Способ ее обхода, если подумать, тоже можно найти: отработать все необходимые действия и установить СтрокаДействийФормы = "#Записать" - тогда ПриЗаписи сработает. Единственное, что нельзя в этом случае сделать, так это проверить результат срабатывания ПриЗаписи, потому что вызвана она будет уже после окончания процедуры - обработчика нажатия кнопки. Самое прикольное, что в этом же документе (ЧекККМ) используются куски типа Если Записать = 1 Тогда ... КонецЕсли; Так оно всегда 1 возвращает, потому что ПриЗаписи со всеми проверками не выполняется.
#8 by cathode
(+6) Где-то сегодня натыкался на мнение, что, дескать, ТиС - самая "вылизанная" конфигурация из всех для 7.7. На самом деле, ошибок в ней было и будет не меньше, чем в остальных.
#9 by Terv
а на 77 еще работают? с ума сойти
#10 by cathode
В каком смысле "еще работают"? Если это в свете недавних обсуждений "V7 vs V8", то холивор устраивать не буду. Я работаю с тем, что есть у клиента. Семерка - отлично, восьмерка - замечательно.
#11 by IUnknown
еще раз очень внематочно читаем когда вызывается процедура ПриЗаписи... после чего перестаем тупить... или нах увольняемся из-за проф непригодности...
#12 by Chilim
И даже ещё что то пишут.... представьте себе её даже ПОКУПАЮТ!!!!
#13 by IUnknown
сходи с ума окончательно... еще даже на шестерке работают... кстати на восмерке еще не работают... а платят деньги 1С за возможность потестить ее новую конфигурацию...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С