Когда вы работаете с полностью закрытой конфигурацией 1С, где доступ к внесению изменений в основные метаданные ограничен, перед разработчиком часто встает вопрос: как организовать хранение собственных данных, которые не предусмотрены типовым функционалом? Давайте разберем доступные варианты и определим, как сделать это максимально эффективно.
В зависимости от объема данных и требований к их целостности, рассмотрим несколько подходов к организации автономного хранилища:
JSON или XML файлы. Это позволяет сохранять структуру данных прямо на диске без установки дополнительных компонентов СУБД.Структура или Массив с привязкой к пользователю или конфигурации.Расширения — это стандартный механизм 1С, который позволяет безопасно внедрять новые объекты. Важное преимущество: при обновлении основной конфигурации ваши данные, созданные в расширении, сохраняются, так как они находятся в отдельном слое метаданных. Не стоит бояться обновлений, если вы используете механизм расширений правильно.
Иногда при использовании расширений возникает неприятная ситуация: стандартная обработка Удаление помеченных объектов видит объекты, но при попытке завершить процесс выдает сообщение, что удаление не требуется. Давайте разберем, как с этим работать.
Причина проблемы кроется в том, что стандартная обработка может не учитывать ссылки на объекты расширения, если она сама не была запущена в контексте, который «видит» ваши новые метаданные.
Пошаговое решение:
Удалить(). При написании кода в своей обработке, выбирайте все объекты с пометкой удаления и вызывайте их метод Удалить().Посмотрим на пример кода для удаления объекта:
Выборка = Справочники.ВашСправочникРасширения.Выбрать();
Пока Выборка.Следующий() Цикл
Если Выборка.ПометкаУдаления Тогда
ОбъектСсылка = Выборка.Ссылка.ПолучитьОбъект();
ОбъектСсылка.Удалить();
КонецЕсли;
КонецЦикла;
Хотя Excel кажется простым вариантом, он имеет ряд существенных минусов: необходимость установки офисного пакета на сервере, нестабильность при одновременном доступе и возможные ошибки при чтении данных. Вместо Excel лучше использовать JSON. Это современный и быстрый формат, который легко считывается и записывается платформой 1С без использования сторонних COM-объектов.
Для реализации задачи «типа справочника» мы рекомендуем начать с использования расширений конфигурации. Это официальный и поддерживаемый инструмент. Если же объем данных велик или требуется сложная аналитика — используйте SQLite, так как это дает высокую производительность при работе с одним файлом базы данных. Помните, что ключ к успеху — это понимание того, как данные взаимодействуют с метаданными платформы. Не бойтесь экспериментировать с расширениями, ведь это лучший способ расширить функционал закрытой системы, сохранив возможность автоматического обновления конфигурации.