Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

conf_robber

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

Иструкция по сборке (Windows)

Далее для сборки необходимо запустить скрипт build.bat, который находится в корневом каталоге проекта.

Собранный проект для Windows можно скачать здесь

https://yadi.sk/d/o9fRQZh-uc7xw

Параметры запуска:

ВНИМАНИЕ: все пути к файлам и каталогам должны указываться полностью. Т.е. 'C:/Temp/conf.cf' - правильно, 'Temp/conf.cf' - неправильно

Разборка конфигурационного файла в каталог:

conf_robber -P "--cf=<путь к файлу *.cf>" "--target=<путь к каталогу, в который распаковываем>" --log-level=info

Разборка конфигурационного файла в каталог, на основании настроек:

conf_robber -P "--cf=<путь к файлу *.cf>" "--target=<путь к каталогу, в который распаковываем>" --log-level=info "--settings=<путь к файлу settings.xml>"

Пример файла настроек settings.xml

Сборка конфигурационного файла из ранее разобранного:

conf_robber -B "--dir=<путь к каталогу, в который была распакована конфигурация>" "--target=<путь к каталогу, в котором будет создан файл с собранной конфигурацией>" --log-level=info

Один из способов использования проекта

Исходные данные: Основная разработка ведется в одной из стандартных конфигураций 1С, куда добавляются новые объекты метаданных.

Задача: В другой конфигурации нужно проверить только измененные объекты метаданных

Выполняемые действия:

  1. Выгрузить конфигурационный файл 1С
  2. С помощью данного проекта оставить в конфигурационном файле только нужные объекты метаданных
  3. Сравнить и объединить конфигурации

Пример:

@echo off
rem -*- coding:OEM -*- 

rem Внимание: т.к. в 1С принято имена пользователей вводить кириллицей,  
rem то batch файл обязательно должен быть создан в кодировке OEM.
rem Иначе команда запуска 1С в пакетном режиме будет выдавать ошибку.

"C:\Program Files (x86)\1cv8\<Версия>\bin\1cv8.exe" DESIGNER /F "<Путь к базе>" /N "<Имя пользователя>" /DumpCfg "C:/Temp/temp.cf" /Out "C:/Temp/DumpCfg.log"
if not %errorlevel% == 0 (
 exit 1
)
conf_robber -P "--cf=<путь к файлу *.cf>" "--target=<путь к каталогу, в который распаковываем>" --log-level=info "--settings=<путь к файлу settings.xml>"
if not %errorlevel% == 0 (
 exit 2
)

rem <Нужные действия>

За счет быстрого разбора конфигурационного файла с помощью данного проекта, объединение конфигураций выполняется очень быстро. Например в конфигурацию «1С:Бухгалтерия предприятия, редакции 3.0», было добавлено 80 или больше общих моделей и одна обработка. Разбор конфигурационного файла (400 МБ) на машине с процессором Intel® Core™ i3 и 8 ГБ ОЗУ составляет шесть секунд.

License

This project and libraries in the directory 'libs' is licensed under MIT license.

Copyright (C) Evgeny Khramtsov, 2016

About

No description, website, or topics provided.

Resources

Stars

11 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages