Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 02:01

Отладка внешней обработки

Автор n_spb, 17 окт 2014, 09:14

0 Пользователей и 1 гость просматривают эту тему.

n_spb

Подскажите, как отладчиком попасть во внешнюю обработку по заполнению табличных частей 1с 8.2 обычное приложение?

blackbeard

Обработка внешняя? если да, то заходишь в сервис\допОбработки\ОбработкаЗапоненияТабЧасти находишь нужную. сохраняешь, открываешь конфигуратор, ф конфигураторе открываешь обработку, открываешь модуль смотришь код

Yura063

При подключении к конфигурации не как! Можно создать форму обработки там и отлаживать.
Помогли, отблагодари!

cska-fanat-kz

1. Открываем в конфигураторе, ставим точку останова
2. Запускаем отладку
3. Через Файл-Открыть открываем обработку
4. Должна сработать точка останова
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

n_spb

Через файл открыть в пользовательском режиме обработка не работает. Работает только если подключаю в пользовательском режиме сервис->внешние печатные формы и обработки->обработки заполнения табличных частей.
Цитата: Yura063 от 17 окт 2014, 10:11Можно создать форму обработки там и отлаживать.
Не совсем понял, расскажите подробней.

cska-fanat-kz

http://infostart.ru/public/204306/

Простая отладка внешних обработок

Простой способ, упрощающий отладку внешних обработок, печатных форм и тд. ВНИМАНИЕ! Данный метод НЕ работает в режиме работы "Управляемое приложение"! Статья актуальна только для режима "Обычное приложение"

Способ заключается в том чтобы поместить в начало обработки вызов функции из общего модуля и поставить точку останова на выходе из функции. После возврата мы попадем во временный файл, в котором хранится текущая обработка и далее спокойно отлаживаем.
Я использую, к примеру, следующий код
В


НачатьОтладку = ОбщегоНазначения.ЭтоСсылка(ТипЗнч("123"));

По пунктам:

1. Добавляем код вызова функции из общего модуля в начало выполнения кода внешней обработки

При запуске внешней обработки или печатной формы (из справочника внешние обработки) 1С создает временный файл с обработкой, чтобы до него добраться в конфигураторе нам нужно перейти в неё (обработку) откуда-то из конфигурации.

2. Ставим точку останова в общем модуле ОбщегоНазначения перед выходом из функции ЭтоСсылка

Так как мы из обработки вызываем функцию в общем модуле то выполнение кода пройдет в том числе и в нем, чем мы и воспользуемся, поставив там точку останова, и после возврата из процедуры попадем в код временного файла внешней обработки

3. Запускаем обработку

Для тех же печатных форм, обработок табличных частей и прочих внешних обработок будет удобно вести отладку таким образом, проверяя сразу взаимодействие с базой, а не рисовать форму обработки и открывать ее непосредственно. Надеюсь статья будет полезна новичкам

Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Yura063

хороший метод у cska-fanat-kz, используйте его! 
Помогли, отблагодари!

cska-fanat-kz

Цитата: Yura063 от 17 окт 2014, 14:31
хороший метод у cska-fanat-kz, используйте его! 

не сколько у меня, сколько у ИнфоСтарта ;)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

n_spb

cska-fanat-kz, Yura063, Огромное спасибо за ссылку. Сделал по инструкции. Не получается отладчиком попасть в обработку. В модуле объекта внешней обработки заполнения табличных частей написал вызов тест=ОбщегоНазначения.ПолучитьМассивПрефиксовРИБ();. В конце функции общего модуля ПолучитьМассивПрефиксовРИБ() поставил точку останова напротив Возврат МассивПрефиксов;. В точке останова останавливается, а в текст внешней обработки по F11 не попадаю. Подскажите, что сделал не так?

Besart

1С создает временный файл с обработкой, поэтому чтобы попасть в код обработки нужно зайти отладчиком перед созданием экземпляра обработки, а дальше уже попадете в ее код

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск