Перейти к содержанию

MDClasses

Обзор

MDClasses - это библиотека на Java для чтения и анализа метаданных 1С:Предприятие 8. Библиотека позволяет работать с конфигурациями, выгруженными в XML-формате (через конфигуратор или средствами сравнения/объединения конфигураций) или в формате EDT.

Основные возможности

  • Чтение конфигурации из формата XML и EDT
  • Доступ к объектам метаданных через программный интерфейс
  • Анализ структуры метаданных: справочники, документы, регистры и т.д.
  • Работа с модулями 1С
  • Анализ форм и их элементов
  • Доступ к правам и ролям
  • Построение зависимостей между объектами

Начало работы

Подключение библиотеки

Maven

<dependency>
    <groupId>io.github.1c-syntax</groupId>
    <artifactId>mdclasses</artifactId>
    <version>версия_библиотеки</version>
</dependency>

Gradle

dependencies {
    implementation 'io.github.1c-syntax:mdclasses:версия_библиотеки'
}

Простой пример использования

import com.github._1c_syntax.bsl.mdclasses.MDClasses;
import com.github._1c_syntax.bsl.mdo.Configuration;
import java.nio.file.Path;
import java.nio.file.Paths;

public class Example {
    public static void main(String[] args) {
        // Путь к каталогу конфигурации
        Path configurationPath = Paths.get("path/to/configuration");

        // Чтение конфигурации
        Configuration configuration = (Configuration) MDClasses.createConfiguration(configurationPath);

        // Вывод информации о конфигурации
        System.out.println("Имя конфигурации: " + configuration.getName());
        System.out.println("Количество справочников: " + configuration.getCatalogs().size());
    }
}

Структура документации

Ограничения

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

Сценарии использования

MDClasses может использоваться для различных задач, связанных с анализом конфигураций 1С:

  • Статический анализ кода 1С
  • Построение диаграмм зависимостей объектов метаданных
  • Автоматизированное документирование конфигураций
  • Миграция данных между различными конфигурациями
  • Аудит безопасности конфигураций 1С
  • Анализ производительности конфигураций
  • Интеграция с другими инструментами разработки