Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Просмотр в отладчике движений уже записанных в регистр из модуля документа          
Vofka Подменю пользователя
сообщение 30.07.11, 12:19
Сообщение #1

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Просмотр в отладчике движений уже записанных в регистр из модуля документа

Часто бывает, что требуется найти по какому либо документу то самое место где формируется определенная запись в регистр, но в типовых конфигурациях нередко набор записей записывается в середине обработки проведения плюс если учесть уровень вложенности функций и то что внутри какой - нибудь функции движения могут сформироваться и сразу же записаться в регистр, то поиск места формирования движения может затянуться. Как посмотреть движения уже записанные в регистр не изменяя конфигурацию?

1. Ну вообще то один раз придется поправить. Небходимо внести в глобальный модуль функцию:

Функция Ду(пКод, п1 = 0, п2 = 0, п3 = 0, п4 = 0)  Экспорт

Перем Р;

Выполнить(пКод);
Возврат Р;

КонецФункции // Ду()


Вообще функцию придумал не я, если найдется автор я дам на него ссылку.

2. Обновляем конфигурацию, начинаем проведение документа в режиме отладки и пишем в Табло отладчика такую строку

 ду("набор=регистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); набор.отбор.регистратор.установить(П2); набор.прочитать();п1=набор",Отказ,этотОбъект.ссылка)


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

Записывать набор можно в любуй переменную доступную из модуля, просто чаще всего в типовых кусках присутствует именно переменная "Отказ", а проверка её осуществляется в конце модуля(не вызовет исключение раньше времени) поэтому чаще всего я использую именно её.

можно написать следующую строку в Табло отладчика

Отказ.количество()


тогда как только в этой строке появится значение отличное от нуля, значит произошла запись в регистр.

P.S. Кстати с помощь этой же функции можно прерывать длительные операции: записывая в переменную ссылочного типа недопустимое значениею,например:

 ду("П1=П2",ТаблицаЗначений,0)


переменная ТаблицаЗначений станет = 0 и при следующем обращении к полю или методу таблицы программа выдаст исключение и остановит выполнения модуля.

На этом всё, если кому нибудь пригодится буду рад!

[необходимо зарегистрироваться для просмотра ссылки]

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 23.04.24, 14:48
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!