{"id":25567345,"url":"https://github.com/oscript-library/v8storage","last_synced_at":"2026-03-18T03:30:19.531Z","repository":{"id":21443146,"uuid":"92047958","full_name":"oscript-library/v8storage","owner":"oscript-library","description":"Библиотека для работы с хранилищем 1С","archived":false,"fork":false,"pushed_at":"2024-07-05T16:45:31.000Z","size":455,"stargazers_count":52,"open_issues_count":6,"forks_count":25,"subscribers_count":9,"default_branch":"develop","last_synced_at":"2024-12-31T20:17:02.639Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"1C Enterprise","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oscript-library.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-22T11:51:18.000Z","updated_at":"2024-10-29T06:19:44.000Z","dependencies_parsed_at":"2024-12-31T20:17:05.829Z","dependency_job_id":"d97c2597-14b2-468d-a951-0bcb77db0cab","html_url":"https://github.com/oscript-library/v8storage","commit_stats":null,"previous_names":["oscript-library/v8storage"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oscript-library%2Fv8storage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oscript-library%2Fv8storage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oscript-library%2Fv8storage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oscript-library%2Fv8storage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oscript-library","download_url":"https://codeload.github.com/oscript-library/v8storage/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239930056,"owners_count":19720255,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-20T23:26:24.448Z","updated_at":"2026-03-18T03:30:19.463Z","avatar_url":"https://github.com/oscript-library.png","language":"1C Enterprise","readme":"# v8storage\r\n[![Stars](https://img.shields.io/github/stars/khorevaa/v8storage.svg?label=Github%20%E2%98%85\u0026a)](https://github.com/khorevaa/v8storage/stargazers)\r\n[![Release](https://img.shields.io/github/tag/khorevaa/v8storage.svg?label=Last%20release\u0026a)](https://github.com/khorevaa/v8storage/releases)\r\n[![Открытый чат проекта https://gitter.im/EvilBeaver/oscript-library](https://badges.gitter.im/khorevaa/v8storage.png)](https://gitter.im/EvilBeaver/oscript-library)\r\n\r\n[![Build Status](https://travis-ci.org/khorevaa/v8storage.svg?branch=master)](https://travis-ci.org/khorevaa/v8storage)\r\n[![Coverage Status](https://coveralls.io/repos/github/khorevaa/v8storage/badge.svg?branch=master)](https://coveralls.io/github/khorevaa/v8storage?branch=master)\r\n\r\n## Библиотека для упрощения работы с Хранилищем 1С из oscript.\r\n\r\nПозволяет выполнять рутинные операции с Хранилищем 1С в стиле [v8runner](https://github.com/oscript-library/v8runner).\r\n\r\nПример работы:\r\n```bsl\r\nХранилищеКонфигурации = Новый МенеджерХранилищаКонфигурации();\r\nХранилищеКонфигурации.УстановитьПутьКХранилищу(КаталогХранилища);\r\n\r\nХранилищеКонфигурации.ПрочитатьХранилище();\r\n\r\nХранилищеКонфигурации.СохранитьВерсиюКонфигурацииВФайл(НомерВерсии, ИмяФайлаКофигурации);\r\n\r\nТаблицаВерсий = ХранилищеКонфигурации.ПолучитьТаблицуВерсий();\r\nМассивАвторов = ХранилищеКонфигурации.ПолучитьАвторов();\r\n\r\n```\r\n\r\nТак же описание функциональности содержится в папке `features`. В прилагающихся `step_definitions` можно подсмотреть больше примеров.\r\n\r\n## Публичный интерфейс\r\n\r\n### Класс МенеджерХранилищаКонфигурации:\r\n\r\n\u003e Работа со свойствами объекта МенеджерХранилищаКонфигурации\r\n\r\n#### УстановитьУправлениеКонфигуратором\r\n```bsl\r\n// Установка управления конфигуратором в класс менеджер хранилища конфигурации\r\n//\r\n// Параметры:\r\n//   НовыйУправлениеКонфигуратором - класс - инстанс класс УправлениеКонфигуратором из библиотеки v8runner\r\n//\r\n```\r\n\r\n#### ПолучитьУправлениеКонфигуратором\r\n```bsl\r\n// Получает управление конфигуратором используемое в менеджере хранилища конфигурации\r\n//\r\n```\r\n\r\n#### УстановитьПутьКХранилищу\r\n```bsl\r\n// Установка пути к хранилищу конфигурации\r\n//\r\n// Параметры:\r\n//   НовыйПутьКХранилищу - Строка - путь к хранилищу конфигурации 1С\r\n//\r\n```\r\n\r\n#### УстановитьПараметрыАвторизации\r\n```bsl\r\n// Установка авторизации в хранилище конфигурации\r\n//\r\n// Параметры:\r\n//   Пользователь - Строка - пользователь хранилища конфигурации 1С\r\n//   Пароль - Строка - пароль пользователя хранилища конфигурации 1С (по умолчанию пустая строка)\r\n//\r\n```\r\n\r\n#### ИспользоватьВерсиюПлатформы\r\n```bsl\r\n// Устанавливает используемую версию и разрядность платформы 1С\r\n//\r\n// Параметры:\r\n//   МаскаВерсии - Строка - маска версии платформы 1С\r\n//   Разрядность - РазрядностьПлатформы \\ Неопределено - разрядность платформы 1C \r\n//\r\n```\r\n\r\n#### ЗахватитьОбъектыВХранилище\r\n```bsl\r\n// Захват объектов для редактирования в хранилище конфигурации\r\n//\r\n// Параметры:\r\n//  ПутьКФайлуСоСпискомОбъектов - Строка - Строка путь к файлу xml c содержанием в формате http://its.1c.ru/db/v839doc#bookmark:adm:TI000000712\r\n// \t\t\t\t\t\t\t\t\t путь к файлу формата XML со списком объектов. Если опция используется, будет выполнена попытка захватить только объекты,\r\n//\t\t\t\t\t\t\t\t\t указанные в файле. Если опция не используется, будут захвачены все объекты конфигурации.\r\n//\t\t\t\t\t\t\t\t\t Если в списке указаны объекты, захваченные другим пользователем, эти объекты не будут захвачены и будет выдана ошибка.\r\n//\t\t\t\t\t\t\t\t\t При этом доступные для захвата объекта будут захвачены. Подробнее о формате файла см. в документации.\r\n//  ПолучатьЗахваченныеОбъекты  - Булево - Флаг получения захваченных объектов (По умолчанию равно \"Ложь\")\r\n//\r\n```\r\n\r\n#### ОтменитьЗахватОбъектовВХранилище\r\n```bsl\r\n// Отмена захват объектов для редактирования в хранилище конфигурации\r\n//\r\n// Параметры:\r\n//  СписокОбъектов  \t  - Строка - Строка путь к файлу xml c содержанием в формате http://its.1c.ru/db/v839doc#bookmark:adm:TI000000712\r\n// \t\t\t\t\t\t\t\t\t Если опция используется, будет выполнена попытка отменить захват только для объектов, указанных в файле.\r\n//\t\t\t\t\t\t\t\t\t Если опция не используется, захват будет отменен для всех объектов конфигурации.\r\n//\t\t\t\t\t\t\t\t\t При наличии в списке объектов, не захваченных текущим пользователем или захваченных другим пользователем, ошибка выдана не будет\r\n//  ИгнорироватьИзменения - Булево - Флаг игнорирования локальных изменений (По умолчанию равно \"Ложь\")\r\n//\t\t\t\t\t\t\t\t\t Локально измененные объекты будут получены из хранилища, и внесенные изменения будут потеряны.\r\n//\t\t\t\t\t\t\t\t\t Если опция не указана, то при наличии локально измененных объектов операция будет отменена и будет выдана ошибка.\r\n//\r\n```\r\n#### ПоместитьИзмененияОбъектовВХранилище\r\n```bsl\r\n// Помещение изменений объектов в хранилище конфигурации\r\n//\r\n// Параметры:\r\n//  СписокОбъектов  \t  - Строка - Строка путь к файлу xml c содержанием в формате http://its.1c.ru/db/v839doc#bookmark:adm:TI000000712\r\n//                                   Если опция используется, будет выполнена попытка поместить только объекты, указанные в файле.\r\n//                                   Если опция не используется, будут помещены изменения всех объектов конфигурации.\r\n//                                   При наличии в списке объектов, не захваченных текущим пользователем или захваченных другим пользователем, ошибка выдана не будет\r\n//  Комментарий\t \t      - Строка - Комментарий к помещаемым. Чтобы установить многострочный комментарий, для каждой строки следует использовать свою опцию comment.\r\n//  ОставитьОбъектыЗахваченными  - Булево - оставлять захват для помещенных объектов.\r\n//  ИгнорироватьУдаленные - Булево - Флаг игнорирования удаления объектов. По умолчанию = Ложь\r\n//                                   Если опция используется, при обнаружении ссылок на удаленные объекты будет выполнена попытка их очистить.\r\n//                                   Если опция не указана, при обнаружении ссылок на удаленные объекты будет выдана ошибка.\r\n//\r\n```\r\n\r\n#### ПолучитьВыводКоманды\r\n```bsl\r\n// Возвращает вывод выполнения команды конфигуратора\r\n//\r\n```\r\n\r\n#### СоздатьХранилищеКонфигурации\r\n```bsl\r\n// Создание файлового хранилища конфигурации используя контекст конфигуратора\r\n//\r\n// Параметры:\r\n//  ПодключитьБазуКхранилищу  - Булево - признак необходимости подключения базы контекста к хранилищу (по умолчанию Ложь)\r\n```\r\n\r\n#### УстановитьМеткуДляВерсииВХранилище\r\n```bsl\r\n// Установка метки для версии хранилища\r\n//\r\n// Параметры:\r\n//  Метка  \t  \t\t\t  - Строка - текст метки\r\n//  Комментарий  \t  \t  - Строка - текст комментария к устанавливаемой метки.\r\n//  Версия  \t  \t   \t  - Строка - номер версии хранилища, для которого устанавливается метка.\r\n//\t\t\t\t\t\t\t\t\tЕсли версия не указана, метка ставится для самой последней версии хранилища.\r\n//\t\t\t\t\t\t\t\t\tЕсли указана несуществующая версия, выдается ошибка\r\n//\r\n```\r\n\r\n#### ДобавитьПользователяВХранилище\r\n```bsl\r\n// Добавление пользователя хранилища конфигурации.\r\n//\tПользователь, от имени которого выполняется подключение к хранилищу, должен обладать административными правами.\r\n//\tЕсли пользователь с указанным именем существует, то пользователь добавлен не будет.\r\n// Параметры:\r\n//   НовыйПользователь - Строка - Имя создаваемого пользователя.\r\n//   ПарольПользователя - Строка - Пароль создаваемого пользователя.\r\n//   Право - ПраваПользователяХранилища - Права пользователя. Возможные значения:\r\n// \t\tТолькоЧтение — право на просмотр, (по умолчанию)\r\n// \t\tПравоЗахватаОбъектов — право на захват объектов,\r\n// \t\tПравоИзмененияВерсий — право на изменение состава версий,\r\n// \t\tАдминистрирование — право на административные функции.\r\n// \t ВосстановитьУдаленного - Булево - флаг небходимости востановления удаленного пользователя\r\n//\t\t\t\t\t\t\t\t       Если обнаружен удаленный пользователь с таким же именем, он будет восстановлен.\r\n//\r\n```\r\n\r\n#### КопироватьПользователейИзХранилища\r\n```bsl\r\n// Копирование пользователей из хранилища конфигурации. Копирование удаленных пользователей не выполняется.\r\n//   Если пользователь в копии хранилища с указанным именем существует, то пользователь не будет добавлен.\r\n//\r\n//Параметры:\r\n//   СтрокаСоединенияХранилищаКопии - Строка - Путь к хранилищу, из которого выполняется копирование пользователей.\r\n//   ПользовательХранилищаКопии - Строка - Имя пользователя хранилища, из которого выполняется копирование пользователей.\r\n//   ПарольХранилищаКопии - Строка - Пароль пользователя хранилища, из которого выполняется копирование пользователей.\r\n//   ВосстановитьУдаленного - Булево - флаг небходимости востановления удаленных пользователей\r\n//\r\n```\r\n#### ОптимизироватьБазуХранилища\r\n```bsl\r\n// Выполняет оптимизацию хранения базы данных хранилища конфигурации.\r\n//\r\n```\r\n\r\n#### ПраваПользователяХранилища\r\n```bsl\r\n// Возвращает структуру возможных прав пользователя в хранилище конфигурации\r\n//   Ключи структуры:\r\n// \t\tТолькоЧтение — право на просмотр, (по умолчанию)\r\n// \t\tПравоЗахватаОбъектов — право на захват объектов,\r\n// \t\tПравоИзмененияВерсий — право на изменение состава версий,\r\n// \t\tАдминистрирование — право на административные функции.\r\n//\r\n```\r\n\r\n#### СохранитьВерсиюКонфигурацииВФайл\r\n```bsl\r\n// Сохранение в файл версии конфигурации из хранилища\r\n//\r\n// Параметры:\r\n//   НомерВерсии - Число/Строка - номер версии в хранилище\r\n//   ИмяФайлаКофигурации - Строка - путь к файлу в который будет сохранена версия конфигурации из хранилища\r\n//\r\n```\r\n\r\n#### ПоследняяВерсияКонфигурацииВФайл\r\n```bsl\r\n// Сохранение в файл последней версии конфигурации из хранилища\r\n// (обертка над процедурой \"СохранитьВерсиюКонфигурацииВФайл\")\r\n// Параметры:\r\n//   ИмяФайлаКофигурации - Строка - путь к файлу в который будет сохранена версия конфигурации из хранилища\r\n//\r\n```\r\n\r\n#### ПрочитатьХранилище\r\n```bsl\r\n// Чтение данных по истории версий и авторов из хранилища\r\n//\r\n// Параметры:\r\n//   НомерНачальнойВерсии - Число - номер версии хранилища,\r\n//                                  с которой производиться получение истории (по умолчанию 1)\r\n//\r\n```\r\n\r\n#### ПолучитьТаблицуВерсий\r\n```bsl\r\n// Получение таблицы истории версий из хранилища\r\n// (выполняет ПрочитатьХранилище(1), если еще не было чтения)\r\n//\r\n// Возвращаемое значение таблица значений:\r\n//   Колонки:\r\n//      Номер   - Число - номер версии\r\n//      Дата    - Дата - дата версии\r\n//      Автор   - Строка - автор версии\r\n//      Комментарий   - Строка - многострочный комментарий к версии\r\n//\r\n```\r\n\r\n#### ПолучитьАвторов\r\n```bsl\r\n// Получение массива авторов версий из хранилища\r\n// (выполняет ПрочитатьХранилище(1), если еще не было чтения)\r\n//\r\n// Возвращаемое значение массив:\r\n//      Автор - Строка - используемые авторы в хранилище\r\n//\r\n```\r\n\r\n#### ПолучитьОтчетПоВерсиям\r\n```bsl\r\n/// Получение отчет по истории версий из хранилища\r\n//\r\n// Параметры:\r\n//   ПутьКФайлуРезультата - Строка - путь к файлу в который будет выгружен отчет,\r\n//   НомерНачальнойВерсии - Число - номер начальной версии хранилища,\r\n//                                  с которой производиться получение истории (по умолчанию 1)\r\n//   НомерКонечнойВерсии  - Число - номер конечной версии хранилища. (по умолчанию - Неопределено)\r\n//   ФорматОтчета         - Строка - задает формат файла с отчетом: текстовый файл (txt) \r\n//                                  или табличный документ «1С:Предприятие» (mxl). По умолчанию используется формат MXL.\r\n//\r\n```\r\n\r\n#### ПодключитьсяКХранилищу\r\n```bsl\r\n// Выполняет подключение ранее неподключенной информационной базы к хранилищу конфигурации.\r\n//\r\n// Параметры:\r\n//  ИгнорироватьНаличиеПодключеннойБД  - Булево - Флаг игнорирования наличия у пользователя уже подключенной базы данных. По умолчанию = Ложь\r\n//\t\t\t\t\t\t\t\t \t Выполняет подключение даже в том случае, если для данного пользователя уже есть конфигурация, связанная с данным хранилищем..\r\n//  ЗаменитьКонфигурациюБД - Булево - Флаг замены конфигурации БД на конфигурацию хранилища  (По умолчанию Истина)\r\n//\t\t\t\t\t\t\t\t\t Если конфигурация непустая, данный ключ подтверждает замену конфигурации на конфигурацию из хранилища.\r\n//\r\n```\r\n\r\n#### ОтключитьсяОтХранилища\r\n```bsl\r\n// Выполняет отключение ранее подключенной информационной базы (база контекста) к хранилищу конфигурации.\r\n//\r\n```\r\n\r\n#### СконвертироватьОтчет\r\n```bsl\r\n// Получение отчета по истории версий из хранилища\r\n//\r\n// Параметры:\r\n//   ПутьКФайлуРезультата - Строка - путь к файлу отчета в формате mxl\r\n//   ПутьКФайлуОтчетаJSON - Строка - путь к файлу в который будет выгружен отчет в формате json\r\n//\r\n```\r\n\r\n#### ПолучитьТаблицуЗахваченныхОбъектов\r\n```bsl\r\n// Возвращает таблицу захваченных объектов в хранилище, согласно тексту лога захвата\r\n//\r\n// Параметры:\r\n//  ТекстЛога - Строка - строка вывода результата выполенния команды захвата в хранилище\r\n//\r\n// Возвращаемое значение:\r\n//  ТаблицаЗначений:\r\n//    ПолноеИмя - Строка - например, Документы.Документ1.Формы.ФормаДокумента1\r\n//    ЗахваченДляРедактирования - Булево - признак успешного захвата в хранилище\r\n//\r\n```\r\n\r\n### Класс СписокОбъектовКонфигурации:\r\n\r\nРабота со спиской объектов конфигурации для захвата и помещения в хранилище\r\n\r\n#### ПолучитьТаблицуОбъектов\r\n```bsl\r\n// Возвращает таблицу объектов следующего формата\r\n//  ТаблицаЗначений:\r\n//    ПолноеИмя - Строка - например, Документы.Документ1.Формы.ФормаДокумента1\r\n//    ПолноеИмяФайла - Строка - путь к файлу исходников\r\n//    ПолноеИмяВоВторойКонфигурации - Строка - аналогично, \"ПолноеИмя\"\r\n//    ВключатьПодчиненные - Булево - признак включения в работу подчиненных объектов\r\n//    Подсистема - Структура - ключи ТипКонфигурации, ВключитьВсеПодчиненныОбъекты\r\n//\r\n```\r\n\r\n#### ДобавитьОбъектКонфигурации\r\n```bsl\r\n// Добавление объекта конфигурации в таблицу объектов, для последующей записи в файл \r\n//\r\n// Параметры:\r\n//    ПолноеИмя - Строка - например, Документы.Документ1.Формы.ФормаДокумента1\r\n//    ВключатьПодчиненные - Булево - признак включения в работу подчиненных объектов\r\n//    ПолноеИмяФайла - Строка - путь к файлу исходников\r\n//    ПолноеИмяВоВторойКонфигурации - Строка - аналогично, \"ПолноеИмя\"\r\n//\r\n```\r\n\r\n#### ДобавитьОписаниеКонфигурации\r\n```bsl\r\n// Добавление описания конфигурации (корень) для последующей записи в файл \r\n//\r\n// Параметры:\r\n//    ПолноеИмя - Строка - например, Документы.Документ1.Формы.ФормаДокумента1\r\n//    ВключатьПодчиненные - Булево - признак включения в работу подчиненных объектов\r\n//    ПолноеИмяФайла - Строка - путь к файлу исходников\r\n//\r\n```\r\n\r\n#### ДобавитьОбъектПодсистему\r\n```bsl\r\n// Добавление объекта конфигурации в таблицу объектов, для последующей записи в файл \r\n//\r\n// Параметры:\r\n//    ПолноеИмя - Строка - например, Документы.Документ1.Формы.ФормаДокумента1\r\n//    ВключатьПодчиненные - Булево - признак включения в работу подчиненных объектов\r\n//    ПолноеИмяФайла - Строка - путь к файлу исходников\r\n//    ТипКонфигурации - Строка - пока не используется (Неопределено)\r\n//    ПолноеИмяВоВторойКонфигурации - Строка - аналогично, \"ПолноеИмя\"\r\n//    ВключитьВсеПодчиненныОбъекты - Булево - признак включения в работу всех объектов подчиненных подсистем\r\n//\r\n```\r\n\r\n#### ЗаписатьФайлОбъектов\r\n```bsl\r\n// Установка каталога файлового хранилища конфигурации\r\n//\r\n// Параметры:\r\n//   ПутьКФайлуОбъектов - Строка - путь к файлу для записи объектов в формате XML,\r\n//                                 При передаче пустой строки запишет туда путь к временному файлу\r\n//\r\n```\r\n\r\n#### СформироватьСписокОбъектов\r\n```bsl\r\n// Формирует список объектов для переданного массива путей\r\n//\r\n// Параметры:\r\n//   МассивПутейКФайламКонфигруации - Массив - массив полных путей к файлам выгрузки конфигруации\r\n//   ПапкаВыгрузкиИсходников - Строка - путь к папке корня конфигруации\r\n//\r\n```\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foscript-library%2Fv8storage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foscript-library%2Fv8storage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foscript-library%2Fv8storage/lists"}