Журнал регистрации в 1С 8.3 хранится в виде базы данных SQLite , в отличие от 1С 8.2, где журнал регистрации хранится в двух и более файлов не совсем очевидной структуры. Данная обработка предназначена для дополнения приемника информацией из источника. Источником может служить журнал регистрации обеих версий (выбирается lgf в случае 8.2 и lgd в случае 8.3). Приемником - только журнал регистрации 1С 8.3 и он обязательно должен существовать (обработка не создает новый файл, а дополняет существующий корректный файл, созданный самой 1С-кой). Что может обработка:
- Добавление журнала регистрации 1С 8.2 в журнал регистрации 1С 8.3
- Добавление журнала регистрации 1С 8.3 в журнал регистрации 1С 8.3
Для чего может быть использована обработка:
- Конвертация старого журнала регистрации в новый на SQLite . Для тех, кто поленился сделать это непосредственно при переходе на новую платформу, а теперь хранит старые журналы отдельно и ищет в них информацию вручную. Ну или для эстетов =)
- Объединение старых журналов регистрации с целью прямого доступа посредством SQLite (в т.ч. на платформе 8.2). Это пригодится тем, кто хочет делать отчеты по журналу регистрации в 1С 8.2, но желает быстродействия.
- Объединение новых журналов регистрации после каких-либо манипуляций с ними. Подойдет тем, кто постоянно переносит журнал регистрации на отдельный диск в целях экономии места на сервере. Ну и тем, у кого просто по каким-либо причинам журналы от одной разделились.
Проблем с русскими буквами нет, я их пофиксил еще на этапе разработки (кстати, метод требует очень много дисковых операций). Для использования обработки необходимо установить SQLite на клиент, с которого будет осуществляться запуск. Используется для подключения "DSN=SQLite3 Datasource", вроде при установке SQLite она должна будет прописаться самостоятельно. Если нет, то прописывать нужно будет для 32-битной версии. Собственно, правильная установка SQLite уже за рамками данной публикации.
Из практики. Обработка использовалась для конвертации журнала 3.2 Гб старого формата в новый. Занимало это до 15 часов. При этом выходной файл будет в полтора-два раза больше или около того, потому что это уже база данных и у нее присутствует индексация. При слиянии двух новых журналов регистрации совсем не важно, кто будет источником, а кто приемником - на хронологию событий в отображении это не повлияет. Всего через нее прошло 20 Гб старых журналов и примерно столько же новых. Ошибок обнаружено не было.
Если файл SQLite не открывается и выдает ошибку (после вытаскивания его из под базы), то его можно восстановить при помощи утилиты из комплекта SQLite3, информация есть в сети. Не спешите его хоронить. Если же сбой произошел при работе данной обработки, то операцию конвертации следует повторить с самого начала. Не забывайте сохранять копию файла-приемника для таких случаев.
Обработка идет одним файлом без каких-либо дополнений. Авторство моё.