Отладка загруженного регламентированного отчета
Описываю ситуацию.
Загружен венешний регламенитрованный отчет. Он зарегистрировался и появился в списке регламентированных отчетов.
Необходимо отладить процедуру выгрузки.
Как это сделать? Где ввобще находится отчет после загрузки и возможно ли его отлаживать в отладчике?
Может я конечно и туплю, но не смог откопать ничего по этой теме.
Если открывать отчет просто как внешний то недоступна процедура выгрузки, поэтому этот вариант не подходит.
Как отлаживать именно загруженный регламентированный отчет? Где он вообще находится :)
Заранее благодарен.
Загружен венешний регламенитрованный отчет. Он зарегистрировался и появился в списке регламентированных отчетов.
Необходимо отладить процедуру выгрузки.
Как это сделать? Где ввобще находится отчет после загрузки и возможно ли его отлаживать в отладчике?
Может я конечно и туплю, но не смог откопать ничего по этой теме.
Если открывать отчет просто как внешний то недоступна процедура выгрузки, поэтому этот вариант не подходит.
Как отлаживать именно загруженный регламентированный отчет? Где он вообще находится :)
Заранее благодарен.
По теме из базы знаний
- Перенос данных из УПП 1.3 / КА 1.1 в БП 3. Переносятся документы, справочники и начальные остатки
- Опыт проведения сложных переносов данных на 1С
- Обработка обмена из Комплексной автоматизации 1.1 (2012г.) в Бухгалтерию 3.0 (для сотен организаций с плохими данными)
- Рекомендации по внедрению параллельного учета РСБУ+МСФО на платформе 1С
- Обзор полезных методов БСП 3.1.4
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
попробуй копать во встроенной обработке "ОбщиеОбъектыРегламентированнойОтчетности" (УПП).
в общем модуле "РегламентированнаяОтчетность" есть функция "Функция ВыгрузитьОтчеты(Доки) Экспорт"
вот в ней создается документ "ВыгрузкаРегламентированныхОтчетов".
Вообщем результаты хранятся в виде документов.
в общем модуле "РегламентированнаяОтчетность" есть функция "Функция ВыгрузитьОтчеты(Доки) Экспорт"
вот в ней создается документ "ВыгрузкаРегламентированныхОтчетов".
Вообщем результаты хранятся в виде документов.
Выгрузка регламентированного отчета идет через документ конфигурации ВыгрузкаРегламентированныхОтчетов.
В модуле формы этого документа есть экспортируемая функция СформироватьИЗаписать(), из неё вызывается СформироватьТекстыВыгрузки(), где и загружается внешний регл. отчет во временный tmp-файл:
ТекФорма = РегламентированнаяОтчетность.РеглОтчеты(ТекДок.ИсточникОтчета).ПолучитьФорму(ИмяТекФормы, , Новый УникальныйИдентификатор);
Так вот, чтобы отладить экспортируемую функцию внешнего регл. отчета:
ТекФорма.УниверсальнаяВыгрузка();
Нужно поставить бряк на этой строке и открыть временный файл отчета, путь к нему будет в переменной:
ТекФорма.ИспользуемоеИмяФайла
или
ТекФорма.мПолноеИмяФайлаВнешнейОбработки
Файл будет вида: C:\Windows\Temp\v8_C9AC_29.tmp
Т.к. этот файл с расширением tmp, то нужно в окне открытия файла обязательно указать его тип, иначе он откроется как бинарный файл.
Причем важно указать именно .erf, а не .epf, иначе откроется как пустая обработка.
Вот и всё, в открытом файле установить бряк и продолжить выполнение, отладчик остановится на указанном месте.
В модуле формы этого документа есть экспортируемая функция СформироватьИЗаписать(), из неё вызывается СформироватьТекстыВыгрузки(), где и загружается внешний регл. отчет во временный tmp-файл:
ТекФорма = РегламентированнаяОтчетность.РеглОтчеты(ТекДок.ИсточникОтчета).ПолучитьФорму(ИмяТекФормы, , Новый УникальныйИдентификатор);
Так вот, чтобы отладить экспортируемую функцию внешнего регл. отчета:
ТекФорма.УниверсальнаяВыгрузка();
Нужно поставить бряк на этой строке и открыть временный файл отчета, путь к нему будет в переменной:
ТекФорма.ИспользуемоеИмяФайла
или
ТекФорма.мПолноеИмяФайлаВнешнейОбработки
Файл будет вида: C:\Windows\Temp\v8_C9AC_29.tmp
Т.к. этот файл с расширением tmp, то нужно в окне открытия файла обязательно указать его тип, иначе он откроется как бинарный файл.
Причем важно указать именно .erf, а не .epf, иначе откроется как пустая обработка.
Вот и всё, в открытом файле установить бряк и продолжить выполнение, отладчик остановится на указанном месте.
(3) Дополню для 8.3.8+
Можно поставить точку останова в общем модуле РегламентированнаяОтчетность.ФайлОтчетаСУчетомКэша и переменной ПараметрыОтчета.Файл установить свое значение, тогда отладчик будет заходить вот прям в нужный файл в вашей папке.
Можно поставить точку останова в общем модуле РегламентированнаяОтчетность.ФайлОтчетаСУчетомКэша и переменной ПараметрыОтчета.Файл установить свое значение, тогда отладчик будет заходить вот прям в нужный файл в вашей папке.
Прикрепленные файлы:
(4) beldieff, сами-то пробовали то, что предлагаете, в данном конкретном случае?
Это "остановить" полезно только в случае длительного выполнения кода, чтобы понять в каком цикле крутится сейчас выполнение.
А если мне нужно отладить конкретно с самой первой строки процедуры, я должен гадать когда же нажать эту кнопку. В общем, не вариант.
Это "остановить" полезно только в случае длительного выполнения кода, чтобы понять в каком цикле крутится сейчас выполнение.
А если мне нужно отладить конкретно с самой первой строки процедуры, я должен гадать когда же нажать эту кнопку. В общем, не вариант.
Если конфигурация снята с поддержки, то можно поступить так: В общем модуле РегламентированнаяОтчетность находим функцию ПроверкаРегистрацииПриОткрытииОсновнойФормыРегламентированно гоОтчета в которой создается имя временного файла внешнего отчета и в 2-х местах меняем :
и
и тогда временный файл, содержащий внешний отчет будет иметь такое имя:
C:\Windows\Temp\v8_C9AC_29.erf
вместо
C:\Windows\Temp\v8_C9AC_29.tmp
что позводяет легко открыть его как обычний внешний отчет. Проверено сегодня ))
//ВремФайлВнешнегоОтчета2 = ПолучитьИмяВременногоФайла();
ВремФайлВнешнегоОтчета2 = ПолучитьИмяВременногоФайла("erf"); // для отладки
и
//ВременныйФайл = ПолучитьИмяВременногоФайла();
ВременныйФайл = ПолучитьИмяВременногоФайла("erf"); // для отладки
и тогда временный файл, содержащий внешний отчет будет иметь такое имя:
C:\Windows\Temp\v8_C9AC_29.erf
вместо
C:\Windows\Temp\v8_C9AC_29.tmp
что позводяет легко открыть его как обычний внешний отчет. Проверено сегодня ))
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот