Как определить необходимые компоненты для самописной конфигурации 1С 7.7

Программист 1С v7.7 IT и автоматизация бизнеса
← На главную

При работе с самописными конфигурациями на платформе 1С:Предприятие 7.7 часто возникает вопрос корректного лицензирования. Поскольку платформа 7.7 является модульной, для работы конкретной конфигурации могут требоваться разные компоненты: «Бухгалтерский учет», «Оперативный учет» или «Расчет». Чтобы не переплачивать за лишние лицензии и при этом оставаться в рамках правового поля, необходимо точно определить, какие из этих модулей задействованы в коде и структуре данных вашей программы.

Рассмотрим подробнее несколько надежных способов идентификации используемых компонент, начиная от простого визуального анализа и заканчивая программными методами проверки.

Способ 1. Визуальный анализ дерева метаданных

Самый простой и очевидный способ — проанализировать структуру объектов в конфигураторе. Каждая компонента 1С 7.7 отвечает за определенные типы объектов метаданных. Разберем, на что именно нужно обратить внимание:

  1. Компонента «Бухгалтерский учет» (библиотека Account.dll): задействована, если в дереве метаданных заполнены ветки Планы счетов, Счета и Операции. Если эти разделы пусты, компонента, скорее всего, не требуется для базового функционирования.
  2. Компонента «Оперативный учет» (библиотека Trade.dll): отвечает за работу с регистрами. Разберем ситуацию: откроем ветку Регистры. Если там описан хотя бы один регистр (остатков или оборотов), значит, вам обязательно потребуется лицензия на «Торговлю и Склад» (или любую поставку с компонентой «Оперативный учет»).
  3. Компонента «Расчет» (библиотека Salary.dll): используется для сложных периодических расчетов (например, начисления зарплаты). Проверим наличие объектов в ветках Журналы расчетов, Виды расчетов и Группы расчетов.

Важно помнить: если конфигурация использует только Справочники, Документы, Константы, Перечисления и Отчеты, то она технически может работать на любой из трех компонент, так как эти объекты являются базовыми для всей платформы.

Способ 2. Проверка через блокировку библиотек операционной системой

Проанализируем техническое поведение платформы при запуске. Операционная система Windows блокирует файлы, которые используются запущенным процессом. Это можно использовать для диагностики:

  1. Запустим конфигурацию в режиме «Предприятие».
  2. Перейдем в каталог с установленной платформой (обычно это папка BIN в программных файлах 1С).
  3. Попытаемся переименовать или переместить файлы Account.dll, Trade.dll и Salary.dll.

Те библиотеки, которые система не позволит изменить (выдав сообщение «Файл занят другим процессом»), являются активными в данный момент. Однако будьте внимательны: если вы используете комплексный ключ защиты, платформа может инициализировать все доступные ей компоненты «про запас», даже если конфигурация их не задействует. Для чистоты эксперимента стоит оставить в папке только одну из библиотек и проверить, запустится ли программа.

Способ 3. Программная проверка через CreateObject

Чтобы исключить субъективные факторы, мы можем написать небольшую процедуру, которая программно проверит доступность механизмов конкретных компонент. Этот код можно разместить во внешней обработке или в глобальном модуле при старте системы. Посмотрим на пример кода:


Процедура ПроверитьКомпоненты()
    Попытка
        ТестБух = СоздатьОбъект("БухгалтерскиеИтоги");
        Сообщить("Компонента Бухгалтерский учет доступна");
    Исключение
        Сообщить("Компонента Бухгалтерский учет не используется или не лицензирована");
    КонецПопытки;

    Попытка
        ТестОпер = СоздатьОбъект("Регистры");
        Сообщить("Компонента Оперативный учет доступна");
    Исключение
        Сообщить("Компонента Оперативный учет не используется или не лицензирована");
    КонецПопытки;
КонецПроцедуры

Если объект БухгалтерскиеИтоги создается успешно, это явный признак того, что в конфигурации реализован бухгалтерский функционал. Аналогично с объектом Регистры для оперативного учета.

Способ 4. Анализ свойств документов

Выясним причину, по которой иногда пустая ветка Регистры всё равно требует компоненту Trade.dll. Проанализируем настройки документов в конфигураторе. Даже если регистры не созданы, в свойствах документа могут стоять флаги, указывающие на принадлежность к определенному виду учета. Откроем любой документ, перейдем на закладку «Дополнительные» и проверим, не выбраны ли там специфические журналы или типы учета. Если документ «помечен» как объект оперативного учета, платформа будет требовать соответствующую компоненту.

Способ 5. Определение по ключу защиты (HASP)

Если система уже работает и ваша задача — понять, какая лицензия куплена официально, посмотрим на маркировку аппаратного ключа защиты (если используется USB- или LPT-ключ). Рассмотрим основные маркировки для 1С 7.7:

Важные нюансы лицензирования самописных конфигураций

При выборе основной поставки для легализации самописного решения следует учитывать следующие правила 1С:

  1. Базовые версии не подходят. Если вы купите «1С:Бухгалтерия 7.7. Базовая версия», вы не сможете запустить в ней свою конфигурацию. Базовая версия работает только с одной конкретной типовой конфигурацией, и в ней закрыта возможность изменения метаданных.
  2. Версии ПРОФ. Для запуска любой измененной или созданной с нуля конфигурации необходима версия ПРОФ или выше (сетевая, SQL).
  3. Выбор минимального пакета. Если ваша конфигурация использует только базовые объекты (справочники и документы), самым экономичным вариантом будет покупка «1С:Бухгалтерии 7.7 ПРОФ». Она предоставляет право на использование платформы и компоненты «Бухгалтерский учет», которой достаточно для работы любого «легкого» самописного решения.

Таким образом, для точного определения необходимых лицензий мы рекомендуем сначала провести глобальный поиск по тексту всей конфигурации (Ctrl+Shift+F) по ключевым словам: Регистр., ПланыСчетов и ЖурналРасчетов. Если поиск не дал результатов, вы можете смело ориентироваться на минимальную поставку с любой одной компонентой.

← На главную