Мне очень часто приходилось отлаживать внешние обработки. Самое трудное это вводить заново в поля ввода одни и те же параметры для тестирования (например, период обработки) и перезапускать обработку.
Чтобы перезапустить обработку, мы знаем, надо нажать крестик (закрыть обработку), потом Файл - выбрать последние:
Затем в обработке надо постоянно проставлять параметры, при которых отлаживаем код:
Что нужно сделать программисту для упрощения:
1. Прописать в коде параметры обработки, чтобы не вводить их заново
2. Вызывать обработку программно автоматически при закрытии
Погуглив, я так готовое решение и не нашел, хотя сам механизм довольно простой. Причем он ускоряет отладку довольно значительно по времени. Ведь не придётся мышкой тыкать эту последовательность Файл - выбрать, проставить параметры, выполнить, закрыть, изменить код - и снова Файл - выбрать, проставить параметры, выполнить, закрыть, изменить код.
Прилагаю код решения:
Процедура КнопкаВыполнитьНажатие(Кнопка)
ЗавершитьОтладку = Истина;
ЭтаФорма.Закрыть();
КонецПроцедуры
Процедура ПриЗакрытии()
//////отладка
Если не ЗавершитьОтладку Тогда
ВнешняяОбработка = ВнешниеОбработки.Создать(ЭтотОбъект.ИспользуемоеИмяФайла);
ВнешняяОбработка.ПолучитьФорму().Открыть();
КонецЕсли;
КонецПроцедуры
Процедура ПриОткрытии()
//////отладка
Сообщить("Внимание, это отладка внешней обработки " + ЭтотОбъект.ИспользуемоеИмяФайла);
ЗавершитьОтладку = Ложь;
РеквизитЧисло = 100000;
НачалоПериода = ТекущаяДата();
КонецПериода = ТекущаяДата()+РеквизитЧисло;
РеквизитСтрока = "Строка для отладки";
КонецПроцедуры
Итак, как это работает - При открытии формы все параметры встают такие, какие нужны при отладке, при закрытии формы - программно открывается новая. Если в конфигураторе изменить код и нажать CTRL+S (сохранить обработку) - и при каждом закрытии уже открывается новая сохраненная. Удобно и просто.
В итоге вся отладка сводится к комбинации клавиш ctrl+s ; alt+tab ; ctrl +F4. А сколько клавиш нажимаете вы?
Также добавлена кнопка для окончательного закрытия формы, так как стандартная кнопка форму никогда не закроет.
Для 1С:Предприятие 8.3 (8.3.19.1150) и выше.
UPD 27.07.2022
В ответ по комментариям:
Да, есть вариант сохранять значения в форме, для тех, кто не знает это находится в свойствах формы
Галка Сохранить значения:
Тогда в режиме предприятия - можно один раз указать параметры, а при повторном открытии они будут сохранятся.
Но здесь есть один момент - значения надо указывать в режиме предприятия (и нет возможности автоматически вычислить одно значение на основании другого, например конец периода).
По поводу CTRL + O - это также лишнее нажатие, плюс надо выбрать файл.