Tool_1CD. Программа просмотра файлов баз *.1CD (1Сv8.x)


Программа позволяет увидеть структуру таблиц и полей файловой базы 1Cv8, просмотреть содержимое таблиц. Дополнительно можно сохранить в файл основную конфигурацию, конфигурацию базы данных и конфигурации поставщика, просмотреть размер внутренних файлов, выгрузить содержимое таблиц в XML. Альфа-версия программы позволяет также редактировать записи.

Для работы не требует установленной 1С. Соответственно, не нужны никакие пароли для открытия файла.

Файл базы открывается монопольно, поэтому нельзя просматривать базу при запущенной 1С, в которой открыта эта база.

Обновление 17.04.2009 Добавлена возможность сохранять конфигурации поставщика.

Обновление 30.12.2009 Добавлена поддержка 8.2.

Обновление 19.09.2011 Добавлена поддержка 8.2.14.

Обновление 02.03.2012 Мелкие доработки:

  • Добавлена возможность при выгрузке таблиц в XML сохранять двоичные данные (BLOB) в отдельные файлы. При этом двоичные данные могут быть распакованы в режиме автоопределения.
  • Добавлен алгоритм распаковки файла users.usr таблицы PARAMS, а также записей таблицы V8USERS.
  • Добавлена возможность выбора индекса для сортировки кликом по заголовку колонки в режиме просмотра содержимого таблиц.
  • Добавлена возможность ассоциировать файлы *.1CD с программой Tool_1CD.
  • Исправлены найденные ошибки.

Обновление 02.12.2012 Мелкие доработки:

  • Добавлена возможность задавать в командной сроке список таблиц, выгружаемых в XML, с использованием символов подстановки "*" и "?".
  • Добавлена обработка полей, содержащих восьмибитные строки неограниченной длины, что позволяет просматривать файлы cache.1CD, встречающихся в кэше 1С.
  • Изменен алгоритм формирования имен файлов с BLOB-данными при выгрузке в XML.
  • Исправлены найденные ошибки.

Обновление 05.06.2013

  • Добавлен ключ командной строки "Открывать не монопольно".
  • Добавлены ключи командной строки для сохранения конфигураций.
  • Добавлена поддержка 8.3.3.
  • Добавлена возможность сохранения в файл полей BLOB/MEMO.
  • Выложена альфа-версия программы с возможностью редактирования и доп. инструментами для восстановления баз. Эта версия лежит вторым файлом! Альфа-версия означает, что ошибок в функционале редактирования еще очень много! Ни в коем случае не используйте на рабочих базах, только на копии! Описание доп. инструментов для восстановления приведено в статье Файловые базы *.1CD. Физическая структура. Восстановление.

Обновление 06.11.2013

  • Добавлена возможность сохранения конфигураций из хранилища конфигураций.
  • Добавлен ключ командной строки "Записывать все сообщения в лог-файл".
  • Изменено представление УИД в хранилище конфигураций.

Выражаю огромную признательность bambr1975 за конструктивное обсуждение структуры хранилища конфигураций, а также pumbaE и artbear за тестирование и обсуждение программы.

Хочу сказать немного слов про хранилище конфигураций. В версиях 8.0-8.2 все данные хранилища содержались в одной файле базы 1cv8ddb.1CD. Но в версии 8.3 часть данных была вынесена во внешние файлы, которые хранятся в папке data, лежащей рядом с файлом 1cv8ddb.1CD. Поэтому, при переносе хранилища и бэкапах не забывайте о внешних данных. Во всех версиях рядом с хранилищем может также лежать папка cache, в которой сохраняются снэпшоты версий конфигурации. Они используются для ускорения доступа к нужной версии конфигурации, но их можно удалять, целостность хранилища при этом не нарушается.

Обновление 06.03.2015

  • Выбрана другая реализация библиотеки zlib. В используемой ранее реализации иногда возникали ошибки deflate, что, в свою очередь, приводило к невозможности выгрузки отдельных версий конфигураций из хранилища конфигураций. За сообщения об ошибках и помощь в тестировании большое спасибо Евгению Мартыненкову (JohnyDeath) и Леониду Паутову (Pr-Mex)!
  • Заново переписан механизм сохранения основной конфигурации и конфигурации базы данных в файл. Теперь правильно обрабатываются динамические обновления и большие файлы, хранящиеся в нескольких записях таблиц CONFIG и CONFIGSAVE.
  • Исправлен поиск и сохранение в файл конфигураций поставщика.
  • Добавлена возможность сохранения в файл расширений конфигурации, появившихся 8.3.6.
  • Добавлена поддержка хранилища конфигураций 8.3.6.
  • Небольшие оптимизации.

Обновление 28.02.2016

  • Добавлена поддержка формата 8.3.8 (пока только для версии без возможности редактирования).
  • На странице "Файлы таблиц" добавлена колонка "Максимальный размер". Так как в 8.3.8 появилась возможность создавать базы с разным размером страниц, то, в зависимости от размера страниц, максимальный размер внутренних файлов может быть разным. Ниже приведена табличка максимальных размеров внутренних файлов для баз формата 8.3.8

 

  • K
Размер страницы, байт Размер, байт Kбайт Мбайт Гбайт Тбайт
4 4096 4269801472 4169728 4072 3,9765625 0,003883362
8 8192 34259075072 33456128 32672 31,90625 0,031158447
16 16384 274475253760 268042240 261760 255,625 0,249633789
32 32768 2197412642816 2145910784 2095616 2046,5 1,998535156
64 65536 17585743593472 17173577728 16771072 16378 15,99414063

Но еще надо учитывать, что теперь играют роль и другие ограничения, которые ранее были несущественны для файловых баз. В файле записей таблицы (DATA) может быть максимум 4294967295 записей, поэтому максимальный размер файла записей таблицы не может превышать произведения длины одной записи на 4294967296. А при большом размере страницы это может оказаться меньше, чем максимальный размер внутренних файлов. В силу строения файла больших двоичных данных таблицы (BLOB) общий размер файла BLOB не может превышать ровно одного терабайта (1024 ГБ). При размерах страниц 32K и 64K это меньше макисмального размера внутренних файлов. При этом длина одной записи BLOB в таблице не может превышать 4 гигабайт. Поэтому для каждого файла в базе вычисляется свой индивидуальный максимальный размер.

Файлы обработки:

-