Введение
Данный материал может пригодиться при работе с компонентами интеграции DIRECTUM, особенно на этапе их настройки и выявления ошибок. Разработка описанная в данном материале позволяет получить протокол обмена в более гибком представлении, похожем на справочник.
Установка
На компьютере с которого будет использоваться данная разработка, должен быть установлен LogParser. Пакет установки LogParser путешествует вместе с дистрибутивами DIRECTUM, см. папку Utils. Он ставится за две минуты, ничего кроме "Далее" нажимать не приходится.
Разработка
Импортируйте в систему функцию Интеграция_ПросмотретьПротоколВВидеТаблицы.zip (4,82 Кб)
Для справочника IntegratedSystems создайте два новых действия
Настройте обработки следующим образом:
код для действия просмотра протокола импорта
if not VarIsNull( Object.Содержание )
LogPath = Object.Содержание & "\" & TRIM( Object.Код ) & "_import_log.txt"
if FileExists( LogPath )
лИнтеграция_ПротоколОбменаВВидеТаблицы( LogPath )
else
ShowMessage('Файл протокола не найден: ' & LogPath )
endif
else
ShowMessage('Задайте папку протоколов: ' & LogPath )
endif
код для действия просмотра протокола экспорта
if not VarIsNull( Object.Содержание )
LogPath = Object.Содержание & "\" & TRIM( Object.Код ) & "_export_log.txt"
if FileExists( LogPath )
лИнтеграция_ПротоколОбменаВВидеТаблицы( LogPath )
else
ShowMessage('Файл протокола не найден: ' & LogPath )
endif
else
ShowMessage('Задайте папку протоколов: ' & LogPath )
endif
Добавьте новые действия на форму карточки справочника
Результат
Функция (из вложения) посредством LogParser загрузит протокол обмена во временную таблицу в БД и затем выведет на экран посредством функции ВыборSQL.
В результате мы можем работать с протоколом почти как со справочником системы. Можно воспользоваться фильтрацией, выполнить поиск, сохранить в Excel, настроить отбор, группировать колонки, поменять их местами, т.е. несколько удобнее чем если просто читать с "блокнота".
Как было
Как есть
Двойной клик по ячейке открывает карточку справочника о которой идет речь в строке.
Недостатки
1. Большие файлы грузятся несколько минут. (17.000 строк на моем двухядерном рабочем компьютере минуты за 4-е.)
2. В таблице не видно "хвост" ошибки.
ERROR Ошибка преобразования данных из формата DIRECTUM в формат системы или загрузки данных в интегрированную систему. (Ошибка выполнения запроса к SQL-серверу. SQL State: 42S02, SQL Error Code: 208
Invalid object name 'ConnectorReferencesRequisitesList'.
.
Функция "лКоннектор_Получить_ТипРеквизитаСистемы": ошибка в строке 18.
Функция "лКоннектор_ФайлОбмена_КонвертацияФайлаDIRECTUM_В_ТекстовыйФормат1С": ошибка в строке 135.
Функция "Connector1C77ImportDataToIntegratedSystem": ошибка в строке 37.
Функция "ConnectorImportDataToIntegratedSystem": ошибка в строке 3.
Функция "ConnectorImportDataToIntegratedSystem": ошибка в строке 14.)
Вложения
Функция:
Интеграция_ПросмотретьПротоколВВидеТаблицы.zip (4,82 Кб)
Родилось пожелание к развитию решения:
Было бы неплохо прямо из протокола открыть запись справочника, которая изменилась и при этом еще и увидеть что именно изменилось.
Хорошее пожелание. :)
Первая половина реализована, над второй подумаю.
Авторизуйтесь, чтобы написать комментарий