Довідковий матеріал

Файл налаштувань об'єднання

Описано XML-файл налаштувань об'єднання конфігурацій у BAS: його структуру, параметри, правила підтримки та допоміжні елементи для об'єктів, властивостей і модулів.. Загальна інформація. Елемент <Settings>. Допоміжні елементи

Два структуровані аркуші з абстрактними блоками сходяться в один акуратно зібраний файл налаштувань зі з’єднаними рівнями схеми.

Загальна інформація

Елемент <Settings>

Допоміжні елементи

 

Загальна інформація

Під час збереження налаштувань об'єднання конфігурацій у файл зберігаються:

  • Версія файлу налаштувань і мінімальна версія платформи, що підтримує цю версію налаштувань.
  • Опис конфігурацій:

    • Ім'я,
    • Версія,
    • Постачальник.
  • Параметри об'єднання:

    • Відношення основної та другої конфігурації,
    • Мови порівняння,
    • Ознака дозволу вилучення об'єктів основної конфігурації,
    • Режим копіювання об'єктів.
  • Ознаки участі об'єкта або властивості в об'єднанні.
  • Установлені порядки підпорядкованих об'єктів.
  • Налаштування об'єднання властивостей, зокрема:

    • Модулів,
    • Форм,
    • Макетів табличних документів.

Зберігаються лише параметри, що відрізняються від значень за замовчуванням.

Файл налаштувань є XML-файлом із такою структурою:

<Settings…>
    <MainConfiguration>
        <Name/>
        <Version/>
        <Vendor/>
    </MainConfiguration>
    <SecondConfiguration>
        <Name/>
        <Version/>
        <Vendor/>
    </SecondConfiguration>
    <OldVendorConfiguration>
        <Name/>
        <Version/>
        <Vendor/>
    </OldVendorConfiguration>
    <SupportRules>
        // Налаштування правил підтримки
    </SupportRules>
    <Parameters>
        // Параметри об'єднання
    </Parameters>
    <Conformities>
        // Налаштування ручних відповідностей об'єктів
    </Conformities>
    <Objects>
        // Налаштування об'єднання об'єктів
    </Objects>
</Settings> 

Порядок розташування підпорядкованих елементу <Settings> елементів, зазначених вище, є важливим, і його слід дотримуватися під час самостійного формування файлу. Кожен зазначений вище елемент складається з вкладених елементів (одного або кількох) і може містити атрибути. Далі наведено опис структури кожного елемента.

Простір імен: http://bas-soft.eu/8.3/config/merge/settings.

Елемент <Settings>

Загальний опис

Кореневий елемент файлу.

Елемент може містити такі атрибути:

Version обов'язковий

Версія файлу налаштувань.

Тип: String/Строка.

platformVersion необов'язковий

Мінімальна версія платформи, з якою може використовуватися файл налаштувань.

Атрибут записується під час збереження налаштувань.

Тип: String/Строка.

Елемент <MainConfiguration>

Елемент визначає параметри основної конфігурації.

Необов'язковий елемент.

Елемент <Name> обов'язковий

Ім'я основної конфігурації.

Тип: String/Строка.

Елемент <Version> необов'язковий

Версія основної конфігурації.

Тип: String/Строка.

Елемент <Vendor> необов'язковий

Ім'я постачальника.

Тип: String/Строка.

Елемент <SecondConfiguration>

Опис другої конфігурації, яка бере участь в об'єднанні.

Необов'язковий елемент.

Склад цього елемента аналогічний складу елемента <MainConfiguration>.

Елемент <OldVendorConfiguration>

Опис конфігурації постачальника, яка бере участь в об'єднанні.

Необов'язковий елемент.

Склад цього елемента аналогічний складу елемента <MainConfiguration>.

Елемент <SupportRules>

Загальний опис

Цей елемент містить налаштування правил підтримки.

Цей елемент не є обов'язковим.

Елемент має такий склад:

<SupportRules>
    <NewObjects>
        <ChangesAllowedRule/>
        <ChangesNotRecommendedRule/>
    </NewObjects>    <DuplicateObjectsAndModifiedObjectsWithGetFromSecondConfigurationRule>
        <ChangesAllowedRule/>
        <ChangesNotRecommendedRule/>    </DuplicateObjectsAndModifiedObjectsWithGetFromSecondConfigurationRule>
    <ModifiedObjectsWithoutGetFromSecondConfigurationRule>
        <ChangesAllowedRule/>
        <ChangesNotRecommendedRule/>
    </ModifiedObjectsWithoutGetFromSecondConfigurationRule>
</SupportRules>

Елемент <NewObjects>

Цей елемент містить правила підтримки для нових об'єктів постачальника.

Елемент <ChangesAllowedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни дозволені. Елемент може набувати одного з таких значень:

  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням: ObjectNotEditable.

Елемент <ChangesNotRecommendedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни не рекомендуються. Елемент може набувати одного з таких значень:

  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням: ObjectNotEditable.

Елемент <DuplicateObjectsAndModifiedObjectsWithGetFromSecondConfigurationRule>

У цьому елементі зазначаються правила підтримки для ідентичних об'єктів або об'єктів із режимом об'єднання Взяти з другої конфігурації.

Елемент <ChangesAllowedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни дозволені. Елемент може набувати одного з таких значень:

  • KeepCurrentRule – зберегти поточне правило підтримки (лише для оновлення конфігурації на підтримці).
  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням:

  • У разі постановки на підтримку: ObjectNotEditable.
  • У разі оновлення підтримки: KeepCurrentRule.

Елемент <ChangesNotRecommendedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни не рекомендуються. Елемент може набувати одного з таких значень:

  • KeepCurrentRule – зберегти поточне правило підтримки (лише для оновлення конфігурації на підтримці).
  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням:

  • У разі постановки на підтримку: ObjectNotEditable.
  • У разі оновлення підтримки: KeepCurrentRule.

Елемент <ModifiedObjectsWithoutGetFromSecondConfigurationRule>

У цьому елементі зазначаються правила підтримки для змінених об'єктів із режимом об'єднання, відмінним від Взяти з другої конфігурації.

Елемент <ChangesAllowedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни дозволені. Елемент може набувати одного з таких значень:

  • KeepCurrentRule – зберегти поточне правило підтримки (лише для оновлення конфігурації на підтримці).
  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням:

  • У разі постановки на підтримку: ObjectIsEditableSupportEnabled.
  • У разі оновлення підтримки: KeepCurrentRule.

Елемент <ChangesNotRecommendedRule> необов'язковий

Указуються правила підтримки для об'єктів постачальника з правилом постачання Зміни не рекомендуються. Елемент може набувати одного з таких значень:

  • KeepCurrentRule – зберегти поточне правило підтримки (лише для оновлення конфігурації на підтримці).
  • ObjectNotEditable – правило підтримки Об'єкт постачальника не редагується.
  • ObjectIsEditableSupportEnabled – правило підтримки Об'єкт постачальника редагується із збереженням підтримки.
  • ObjectNotSupported – правило підтримки Об'єкт постачальника знятий з підтримки.

Значення за замовчуванням:

  • У разі постановки на підтримку: ObjectIsEditableSupportEnabled.
  • У разі оновлення підтримки: KeepCurrentRule.

Елемент <Parameters>

Загальний опис

Цей елемент містить параметри об'єднання та не є обов'язковим.

Елемент має такий склад:

<Parameters>
    <ConfigurationsRelation/>
    <ComparisonLanguages>
        <Language/>
    </ComparisonLanguages>
    <AllowMainConfigurationObjectDeletion/>
    <CopyObjectsMode/>
</Parameters>

Елемент <ConfigurationsRelation> необов'язковий

Елемент визначає зв'язок між основною та другою конфігураціями. Елемент може набувати одного з таких значень:

  • ConfigurationsNotRelated – основна конфігурація не пов'язана з другою;
  • SecondConfigurationIsDescendantOfMainConfiguration – друга конфігурація є нащадком основної;
  • MainConfigurationIsDescendantOfSecondConfiguration – основна конфігурація є нащадком другої конфігурації.

Значення за замовчуванням: ConfigurationsNotRelated.

Елемент <AllowMainConfigurationObjectDeletion> необов'язковий

Елемент указує на можливість вилучення об'єктів основної конфігурації.

Тип: Boolean/Булево.

Значення за замовчуванням: False.

Елемент <CopyObjectsMode> необов'язковий

Елемент визначає режим копіювання об'єктів конфігурації, що завантажується. У цьому разі внутрішні ідентифікатори об'єктів не зберігаються.

Тип: Boolean/Булево.

Значення за замовчуванням: False.

Елемент <ComparisonLanguages>

Указує, що використовується вибіркове порівняння за мовами. Коди мов, які використовуються для порівняння, описуються елементами Language.

Елемент <Conformities>

Цей елемент містить перелік об'єктів, відповідність яких установлено вручну, та не є обов'язковим.

Елемент має такий склад:

<Conformities>
    <Conformity/>
</Conformities>

Елемент <Conformity>

Елемент визначає пару зіставлених об'єктів.

Елемент містить такі атрибути:

fullName обов'язковий

Повна назва об'єкта основної конфігурації.

Тип: String/Строка.

fullNameInSecondConfiguration обов'язковий

Повна назва об'єкта другої конфігурації.

Тип: String/Строка.

Елемент <Objects>

Загальний опис

Цей елемент містить параметри об'єднання конфігураційних об'єктів і не є обов'язковим.

Елемент має такий склад:

<Objects>
    <Configuration>
        <MergeRule/>
        <MergeRuleForPropertiesChangedTwice/>
        <MergeRuleForPropertiesChangedOnce/>
        <ObjectOrder/>
        <Properties/>
    </Configuration>
    <Object>
        <MergeRule/>
        <MergeRuleForPropertiesChangedTwice/>
        <MergeRuleForPropertiesChangedOnce/>
        <ObjectOrder/>
        <Subsystem>
            <MergeRule/>
            <MergeRuleForPropertiesChangedTwice/>
            <MergeRuleForPropertiesChangedOnce/>
            <ObjectOrder/>
        </Subsystem>
        <Properties/>
    </Object>
</Objects>

Елемент <Configuration>

Описує параметри об'єднання кореневого конфігураційного елемента. До складу елемента має входити принаймні один з елементів <MergeRule>, <MergeRuleForPropertiesChangedTwice>, <MergeRuleForPropertiesChangedOnce>, <ObjectOrder>, <Properties>.

Елемент <MergeRule> необов'язковий

Описує режим об'єднання кореневого елемента.

Елемент <MergeRuleForPropertiesChangedTwice> необов'язковий

Описує режим об'єднання двічі змінених властивостей кореневого елемента.

Елемент <MergeRuleForPropertiesChangedOnce> необов'язковий

Описує режим об'єднання властивостей кореневого елемента конфігурації, зміненого лише в одній конфігурації.

Елемент <ObjectOrder> необов'язковий

Описує порядок підпорядкованих об'єктів.

Елемент <Properties> необов'язковий

Налаштування об'єднання властивостей кореневого об'єкта конфігурації.

Елемент <Object>

Описує параметри об'єднання конкретного об'єкта конфігурації.

Елемент містить такі атрибути:

fullName необов'язковий

Повне ім'я об'єкта в першій конфігурації.

У разі налаштування об'єднання конфігурацій слід указати один з атрибутів: fullName або fullNameInSecondConfiguration.

Тип: String/Строка.

fullNameInSecondConfiguration

Повне ім'я об'єкта в другій конфігурації.

У разі налаштування об'єднання конфігурацій слід указати один з атрибутів: fullName або fullNameInSecondConfiguration.

Тип: String/Строка.

До складу елемента має входити принаймні один з елементів <MergeRule>, <ObjectOrder>, <Properties>, <Subsystem>.

Якщо режим об'єднання не дорівнює DoNotMerge та:

  • якщо об'єкт є лише в основній конфігурації, об'єкт буде вилучено;
  • якщо об'єкт є лише в другій конфігурації, об'єкт буде додано.

Елемент <MergeRule> необов'язковий

Описує режим об'єднання об'єкта.

Елемент <MergeRuleForPropertiesChangedTwice> необов'язковий

Описує режим об'єднання двічі змінених властивостей об'єкта.

Елемент <MergeRuleForPropertiesChangedOnce> необов'язковий

Описує режим об'єднання властивостей об'єкта, зміненого лише в одній конфігурації.

Елемент <ObjectOrder> необов'язковий

Описує порядок підпорядкованих об'єктів об'єкта.

Елемент <Subsystem>

Описує параметри об'єднання об'єктів, що входять до складу підсистеми. Використовується лише для об'єктів, що описують підсистему.

includeObjectsFromSubordinateSubsystems обов'язковий

Якщо атрибут зазначено, до списку об'єктів обробки потраплять усі об'єкти (разом із підпорядкованими), що входять до складу підсистеми, описаної батьківським елементом.

Тип: Boolean/Булево.

configuration обов'язковий

Визначає, з якої конфігурації брати склад підсистеми.

Тип: String/Строка.

Можливі значення:

  • Main – взяти з основної конфігурації. Використовується за замовчуванням.
  • Second – взяти з другої конфігурації.

Елемент <MergeRule> необов'язковий

Описує режим об'єднання об'єкта.

Елемент <MergeRuleForPropertiesChangedTwice> необов'язковий

Описує режим об'єднання двічі змінених властивостей об'єкта.

Елемент <MergeRuleForPropertiesChangedOnce> необов'язковий

Описує режим об'єднання властивостей об'єкта, зміненого лише в одній конфігурації.

Елемент <ObjectOrder> необов'язковий

Описує порядок підпорядкованих об'єктів об'єкта.

Допоміжні елементи

Елемент <Properties>

Загальний опис

Елемент визначає параметри об'єднання властивостей об'єкта конфігурації.

Елемент має такий склад:

<Properties>
    <Property name="…">
        <MergeRule/>
        <MergeRuleForPropertiesChangedTwice/>
        <MergeRuleForPropertiesChangedOnce/>
        <Module>
            <Methods/>
            <Patch/>
        </Module>
        <FormModule>
            <MergeRule/>
            <MergeRuleForPropertiesChangedTwice/>
            <MergeRuleForPropertiesChangedOnce/>
            <Module/>
        </FormModule>
        <SpreadsheetDocument>
            <MergeRule/>
            <MergeRuleForPropertiesChangedTwice/>
            <MergeRuleForPropertiesChangedOnce/>
        </SpreadsheetDocument>
        <Types>
            <Type>
                <MergeRule/>
            </Type>
            …
        </Types>
        <Content>
            <Item>
                <MergeRule/>
            </Item>
            …
        </Content>
    <Property/>
</Properties>

Елемент <Property>

Елемент визначає параметри об'єднання конкретної властивості об'єкта конфігурації.

Елемент містить такі атрибути:

name

Ім'я властивості об'єкта конфігурації. Залежно від значення цього атрибута до складу елемента <Property> може входити один з таких елементів: <Module>, <FormModule>, <SpreadsheetDocument>, <Types>, <Content>.

Тип: String/Строка.

До складу елемента входять такі елементи:

Елемент <MergeRule>

Описує режим об'єднання властивості.

Елемент <MergeRuleForPropertiesChangedTwice>

Описує режим об'єднання двічі змінених властивостей об'єкта.

Елемент <MergeRuleForPropertiesChangedOnce> необов'язковий

Описує режим об'єднання властивостей об'єкта, зміненого лише в одній конфігурації.

Елемент <Module>

Елемент описує додаткові параметри об'єднання модуля.

Елемент складається з таких елементів:

Елемент <Methods>

Елемент визначає параметри об'єднання модуля за процедурами.

Елемент <Patch>

Інформація, призначена для автоматизованого внесення змін до тексту модуля вбудованою мовою в універсальному форматі (unidiff).

Елемент <FormModule>

Елемент описує додаткові параметри об'єднання модуля форми.

Елемент складається з таких елементів:

Елемент <MergeRule>

Описує режим об'єднання модуля.

Елемент <MergeRuleForPropertiesChangedTwice>

Описує режим об'єднання модуля, якщо форма змінювалася двічі.

Елемент <MergeRuleForPropertiesChangedOnce>

Описує режим об'єднання модуля, зміненого лише в одній конфігурації.

Елемент <Module>

Містить додаткові параметри об'єднання модуля форми.

Елемент <SpreadsheetDocument>

Елемент визначає додаткові параметри для об'єднання табличного документа.

Елемент складається з таких елементів:

Елемент <MergeRule>

Описує режим об'єднання табличного документа. Може набувати одного з таких значень:

  • Merge – об'єднати документи.
  • Unite – включити вміст обох табличних документів.

Елемент <MergeRuleForPropertiesChangedTwice>

Описує режим об'єднання, якщо табличний документ змінено двічі.

Елемент <MergeRuleForPropertiesChangedOnce>

Описує режим об'єднання табличного документа, зміненого лише в одній конфігурації.

Елемент <Types>

Опис елемента

Елемент описує додаткові параметри об'єднання типів.

Елемент складається з одного або кількох елементів:

Елемент <Type>

Елемент визначає налаштування об'єднання для конкретного типу.

Елемент <Type>

Елемент містить такі атрибути:

name обов'язковий

Повне ім'я типу, для якого описується правило об'єднання.

Тип: String/Строка.

До складу елемента має входити один елемент <MergeRule>.

Елемент <MergeRule> обов'язковий

Описує режим об'єднання об'єкта.

Елемент <Content>

Опис елемента

Елемент визначає додаткові налаштування об'єднання складів плану обміну, підсистем, функціональних опцій.

Елемент складається з одного або кількох елементів:

Елемент <Item>

Елемент визначає параметри об'єднання для конкретного елемента складу вищезазначених об'єктів.

Елемент <Item>

Елемент містить такі атрибути:

name обов'язковий

Повне ім'я типу, для якого описується правило об'єднання.

Тип: String/Строка.

До складу елемента має входити один елемент <MergeRule>.

Елемент <MergeRule> обов'язковий

Описує режим об'єднання об'єкта.

Елемент <Methods>

Загальний опис

Цей елемент визначає налаштування об'єднання модулів конфігурації. Елемент містить один або кілька елементів, що описують налаштування:

  • об'єднання процедур/функцій (елемент <Method>). Таких елементів може бути один або кілька;
  • об'єднання розділу оголошення змінних (елемент <VariableDeclarationArea>). Такий елемент може бути лише один або бути відсутнім;
  • об'єднання розділу основної програми (елемент <MainArea>). Такий елемент може бути лише один або бути відсутнім.

Елемент має такий склад:

<Methods>
    <Method>
        <MergeRule/>
        <Patch/>
    <Method/>
    <VariableDeclarationArea>
        <Methods/>
        <Patch/>
    </VariableDeclarationArea>
    <MainArea>
        <Methods/>
        <Patch/>
    </MainArea>
</Methods>

Елемент <Method>

Елемент визначає налаштування об'єднання конкретної процедури або функції модуля вбудованою мовою.

Елемент містить такі атрибути:

name

Назва методу в основній та другій конфігураціях, якщо не вказано атрибут NameInSecondConfiguration.

Тип: String/Строка.

nameInSecondConfiguration

Назва методу в другій конфігурації, якщо відповідність установлено вручну. Може бути відсутнім.

Тип: String/Строка.

Особливості поведінки:

  • якщо процедура є в обох файлах, буде виконано об'єднання відповідно до режиму або використано вміст елемента <Patch>;
  • у разі наявності методу лише в першому файлі його буде вилучено, якщо режим об'єднання не дорівнює DoNotMerge;
  • у разі наявності методу лише в другому файлі його буде додано, якщо режим об'єднання не дорівнює DoNotMerge.

До складу елемента входять такі елементи:

Елемент <MergeRule>

Описує режим об'єднання методу.

Елемент <Patch>

Інформація, призначена для автоматизованого внесення змін до тексту модуля вбудованою мовою в універсальному форматі (unidiff).

Елемент <VariableDeclarationArea>

Елемент визначає параметри об'єднання для розділу оголошення змінних.

До складу елемента входять такі елементи:

Елемент <MergeRule>

Описує режим об'єднання розділу оголошення змінних.

Елемент <Patch>

Інформація, призначена для автоматизованого внесення змін до тексту модуля вбудованою мовою в універсальному форматі (unidiff).

Елемент <MainArea>

Елемент визначає параметри об'єднання для розділу основної програми.

До складу елемента входять такі елементи:

Елемент <MergeRule>

Описує режим об'єднання розділу основної програми.

Елемент <Patch>

Інформація, призначена для автоматизованого внесення змін до тексту модуля вбудованою мовою в універсальному форматі (unidiff).

Елемент <MergeRule>

Елемент визначає режим об'єднання елемента. Може набувати одного з таких значень:

  • DoNotMerge – не об'єднувати.
  • GetFromSecondConfiguration – взяти з другої конфігурації.
  • MergePrioritizingMainConfiguration – об'єднати з пріоритетом основної конфігурації.
  • MergePrioritizingSecondConfiguration – об'єднати з пріоритетом другої конфігурації.
  • MergeWithExternalTool – об'єднати за допомогою зовнішньої програми (підтримується модулями).

Елемент <MergeRuleForPropertiesChangedTwice>

Описує режим об'єднання двічі змінених властивостей об'єкта. Може набувати одного з таких значень:

  • DoNotMerge – не об'єднувати.
  • GetFromSecondConfiguration – взяти з другої конфігурації.
  • MergePrioritizingMainConfiguration – об'єднати з пріоритетом основної конфігурації.
  • MergePrioritizingSecondConfiguration – об'єднати з пріоритетом другої конфігурації.
  • MergeWithExternalTool – об'єднати за допомогою зовнішньої програми (підтримується модулями).

Елемент <MergeRuleForPropertiesChangedOnce>

Описує режим об'єднання властивостей об'єктів, змінених лише в одній з конфігурацій. Може набувати одного з таких значень:

  • DoNotMerge – не об'єднувати.
  • GetFromSecondConfiguration – взяти з другої конфігурації.

Елемент <ObjectOrder>

Описує порядок підпорядкованих об'єктів. Може набувати одного з таких значень:

  • GetFromMainConfiguration – взяти порядок з основної конфігурації.
  • GetFromSecondConfiguration – взяти порядок з другої конфігурації.
Записатися телефоном