Поиск

Личный кабинет

Схема описания инсталляции

<?xml version="1.0" encoding="windows-1251"?>

<Install>

            Title - название для окна параметров

            Comment - комментарий к инсталляции, общее описание. Выводится при запуске и в файл ReadMe

            У всех типов деталей следующие тэги:

            Name= Имя для сохранения версии

            CheckName= Имя для проверки версии

            Version - версия, которая будет записана с кодом Name

            VersionFrom, VersionTo - в каком интервале записанных аерсий выполнить данный пункт

            Condition - Условие на VB. Проверка выполняется перед выполнением пункта. Возвращать должно Да/нет

            <Description>

            Комментарии и описание вносимых изменений. Выводится при запуске и в файл ReadMe. Рекомендуется писать в начале файла и брать в CDATA.

            Title - Заголовок для описания (название режима)

            Пример:

                <Description Title="system_scripts.xml"><![CDATA[

                        Добавлены функции:

                        LoadShortRef - Загружает контрол COMBOBOX для создания "короткого справочника"

                ]]></Description>

            <Element>

            стандартные аттрибуты елемента ввода. Работает аналогично определению переменных.

            В качестве имени - аттрибут "name". Используется значение NullValue.

            Применяется в тэгах SQL и script. Значение заданное как ~Имя переменной~ будет заменено на текстовое значение элемента.

            Для использования символа "~" его надо написать дважды "~~"

            <Include>

            Install= имя вложенной инсталляции

            <File>

            FileName= файл, содержащий схему. С путем к файлу от корня BS Integrator

            INI= модуль, в ини файл которого подключить данный файл. Содержит полный путь файла от корня BS Integrator с расширением

            INIAfterFile = после какого файла в ини подключить данный файл. Если пустое значение - в начале

            INIBeforeFile = перед каким файлом в ини подключить данный файл. Если пустое значение - в конце

            IniSection - секция, в которую будет подключен файл. По умолчанию = "schema"

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            Reload - выполнить перегрузку схемы перед инсталляцией. По умолчанию = False

            ReportDir = Если значение "True", Путь к файлу указан относительно каталога отчетов

            <Schema>

            Schema= имя схемы

            WithDet="True" инсталлировать схему с деталями

            InstallSchema - Выполнить инсталляцию схемы. По умолчанию = True

            Reload - выполнить перегрузку схемы перед инсталляцией. По умолчанию = True

            FileName= файл, содержащий схему. С путем к файлу от корня BS Integrator

            MenuName= пункт меню, куда данный элемент будет подключен

            MenuCommand= строка команды. Если не указана, используется RunDict

            MenuModule= имя модуля для подключения меню. По умолчанию "DEF_APP"

            MenuStr= мемо-значение для пункта меню

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <SQL>

            FileName= файл, содержащий скрипт. С путем к файлу от корня BS Integrator

            DB= тип базы данных, для которой выполнять скрипт. Возможные значения: "Oracle", "MSSQL". По умолчанию "MSSQL".

            Для прописывания текста запроса его надо записать между блоком начала и окончания.  Желательно использовать <![CDATA[……..]]>

            Пример:

            <SQL><![CDATA[Drop table aaa]]></SQL>

            <Menu>

            MenuName= пункт меню, куда данный элемент будет подключен

            MenuCommand= строка команды

            MenuStr= мемо-значение для пункта меню. Для разделения строк используйте "\n"

            MenuModule= имя модуля для подключения меню. По умолчанию "DEF_APP"

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <Analysis> - если аналитика уже есть, переводит ее в тип "строка" и включает "коды без справочников", иначе insert

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            В качестве вложенных строк перечисляются записи типа <Record>, у которых имя аттрибута - это имя поля, а значение аттрибута - значение поля.

            <Data> - если запись с такими ключами уже есть, выполняет update, иначе insert

            Schema= имя схемы, в которой будет добавляться/изменяться запись

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            KeyList=имена ключевых полей, перечисленные через ",". По умолчанию PKName из схемы

            В качестве вложенных строк перечисляются записи типа <Record>, у которых имя аттрибута - это имя поля, а значение аттрибута - значение поля.

            <DataExt> - если запись с такими ключами уже есть, выполняет update, иначе insert

            Schema= имя схемы, в которой будет добавляться/изменяться запись

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            В качестве вложенных строк перечисляются поля:

                        <Key>

                        Field= имя поля схемы

                        Value= значение, если условие между, то тут "значение от", если "в", то значения перечисляются через ";"

                        ValueTo

                        Kind= Тип условия отбора. По умолчанию="cEqual" Возможные значения: cEqual=0; cLess = 1; cGreat = 2; cEqLess = 3; cEqGreat = 4; cNotEqual = 5; cLike = 6; cBetween = 7; cIsNull = 8; cNotIsNull = 9; cFilter = 10; cEqualOrNull = 11; cNotLike = 12; cIn = 13

                        <Feild>

                        Field= имя поля схемы

                        Value= значение

                        Time= время выполнения, необязательное. Значения: "'1 - Новые, 2 - Всегда, 3 - Изменение"

            <Entry>

            Schema= имя схемы ввода

            INI= модуль, в ини файл которого подключить данный файл. Содержит полный путь файла от корня BS Integrator с расширением

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <Template>

            FileName= файл, содержащий схему. С путем к файлу от корня BS Integrator

            INI= модуль, в ини файл которого подключить данный файл. Содержит полный путь файла от корня BS Integrator с расширением

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <TemplateSQL>

            FileName= файл, содержащий схему. С путем к файлу от корня BS Integrator

            INI= модуль, в ини файл которого подключить данный файл. Содержит полный путь файла от корня BS Integrator с расширением

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <Report>

            FileName= файл шаблона

            View= Lookup запроса

            GroupView= Lookup группировки

            Title= Название отчета в определении

            ReportType= Тип отчета, название. Ищем по названию такой тип. Если нет, добавляем. По умолчанию = "Без типа"

            MenuName= пункт меню, куда данный элемент будет подключен

            MenuModule= имя модуля для подключения меню. По умолчанию "DEF_APP"

            MenuStr= мемо-значение для пункта меню

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <View>

            Title= Lookup запроса

            FileName= имя файла с экспортом запроса. Будет взят из каталога Install. Если не указан - формируется на основе Title

            Quantum=False -  использовать обычный грид. По умолчанию - квантум.

            MenuName= пункт меню, куда данный элемент будет подключен

            MenuModule= имя модуля для подключения меню. По умолчанию "DEF_APP"

            MenuStr= мемо-значение для пункта меню

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <GroupView>

            Title= Lookup группировки

            FileName= имя файла с экспортом группировки. Будет взят из каталога Install. Если не указан - формируется на основе Title

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            MenuName= пункт меню, куда данный элемент будет подключен

            MenuModule= имя модуля для подключения меню. По умолчанию "DEF_APP"

            MenuStr= мемо-значение для пункта меню

            <BP>

            Code= Код БП

            FileName= имя файла с экспортом БП. Будет взят из каталога Install. Если не указан - формируется на основе Title

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            <Import>

            FileName= имя файла с экспортированными данными. Если не указан, в качестве имени файла будет использоваться имя схемы. Будет взят из каталога Install

            Schema= имя схемы, в которой будет добавляться/изменяться запись

            ClearList= перечень имен схем элементов, ключи которых надо переприсвоить, перечисленные через ",".

            SelectList= перечень имен схем элементов, которые будут экспортироваться, перечисленные через ",". Если не указано, экспортируются все элементы.

            Action= Тип действия: Insert, Update, All, Delete. По умолчанию = All

            В качестве вложенных строк перечисляются записи типа <Record>, у которых имя аттрибута - это имя ключевого поля, а значение аттрибута - значение поля.

            Для отбора данных по условию можно использовать вложенные записи типа

            <Condition>

            с аттрибутами:

                        Field - обязательное, имя поля для условия. Можно использовать связанные поля, перечисленные через "/"

                        ValueFrom - Значение отбора.

                        ValueTo - Значение до (если используется cBetween, необязательно в других случаях)

                        Type - Тип условия (смотри описание iContext)

            Пример:

                <Import Schema="TR" ClearList="TR_Row,TR_Col,TR_Cond,TR_RowCond,TR_ColCond">

                    <Record RepCode="TB"/>

                    <Record RepCode="EngTB"/>

                </Import>

            <script>

            Текст скрипта на VB, который надо выполнить. Записывается между тэгами начала и окончания. Желательно использовать <![CDATA[……..]]>

 

Для пакетов

У схемы

У элемента

UseInBatch="False" чтобы не включать в мастер с отборами

 

У схемы

Version - текщая версия схемы

                  Update- выполнять ли синхронизацию базы данных. Если ="False" апдейт не производится. Используется для схем на запросах или виртуальных схем.

InstallSQL - перечень имен файлов из каталога SQL, которые надо проапдейтить при инсталляции, разделенные знаком ";"

            формат файла:

                        Для части, которая должна быть выполнена перед установкой (например удалить запрос) "name.ini.version.sql"

                        Для основной части - "name.ini.version.sql"

InstallFile - перечень имен файлов из каталога Install, которые надо проапдейтить при инсталляции, разделенные знаком ";"

            формат файла: "name.type.version.xml"

            поддерживаются следующие типы файлов:

                        view

                        group

                        book

OnBeforeInstall - имя функции, которую надо выполнять при инсталяции. OnBeforeInstall(SchemaObj, NewVersion, OldVersion)

OnAfterInstall - имя функции, которую надо выполнять при инсталяции. OnAfterInstall(SchemaObj, NewVersion, OldVersion)

LinkedInstall - перечень схем через ";", которые надо проинсталить перед текущей

LdgTypeField - Указывает имя поля, в котором находится ссылка на типовую операцию. Используется в новых БП для действий генерации проводок

У поля

У Файла

InstallIni - перечень ини файлов, перечисленных через запятую

----

1.схема system/setup.xml должна быть подключена. Желательно в паре с VB скрипт system/RunVB.xml
2. надо на базе выполнить запрос ExecSQL.1.sql (каталог SQL в СС)
3.для установки автоинстала надо выполнить команду 
RunScript InstallModule(INST)


Далее для установки других схем используются команды:
InstallModule(ModuleName) - Инсталлирует указанный модуль (набор функций). Уже поддерживаются модули:

            INST - начальная инициализация автоинстала

            BUDGET - бюджетные схемы (пока статьи)

            TR - табличные отчеты, конструктор отчетов

            FINACC - новые вводы в финансах

InstallSchema(SchemaName) - Инсталляция схемы. Проверяет версии. Если версия схемы более записанной в базе - устанавливает.

ReInstallSchema(SchemaName) - Переинсталляция схемы. Если версия более ИЛИ РАВНА записанной в базе - устанавливает. Последняя будет переставлена в любом случае. Рекомендуется для использования.

-----

В функциях до или после инсталляции полезно использовать следующие функции:

MenuAdd(MenuName, CommandStr, MemoStr, AppName) - Добавляет в меню пункт. Если такой уже существует, ничего не меняется

MenuUpdate(MenuName, CommandStr, MemoStr, AppName) - Добавляет в меню пункт. Если такой уже существует, изменяется командная строка и мемо

Пример:

MenuUpdate "Процедуры/Настройки/VB скрипт", "NewBP RunVBTempl, RunVB", "en=VB script" & chr(13) & "uk=VB скрипт", "DEF_APP"

Для описания действий при инсталляции пока предусмотрены следующие аттрибуты:

У схемы

Version - текщая версия схемы

InstallDB - выполнять ли синхронизацию базы данных. Если ="False" апдейт не производится. Используется для схем на запросах или виртуальных схем.

InstallSQL - перечень имен файлов из каталога SQL, которые надо проапдейтить при инсталляции, разделенные знаком ";"

            формат файла:

                        Для части, которая должна быть выполнена перед установкой (например удалить запрос) "name.ini.version.sql"

                        Для основной части - "name.ini.version.sql"

InstallFile - перечень имен файлов из каталога Install, которые надо проапдейтить при инсталляции, разделенные знаком ";"

            формат файла: "name.type.version.xml"

            поддерживаются следующие типы файлов:

                        view

                        group

                        book

OnBeforeInstall - имя функции, которую надо выполнять при инсталяции. OnBeforeInstall(SchemaObj, NewVersion, OldVersion)

OnAfterInstall - имя функции, которую надо выполнять при инсталяции. OnAfterInstall(SchemaObj, NewVersion, OldVersion)

LinkedInstall - перечень схем через ";", которые надо проинсталить перед текущей