Skip to content

Commit

Permalink
Merge pull request #150 from laptev-av/feature-#148
Browse files Browse the repository at this point in the history
Работа с хранилищем расширения #148
  • Loading branch information
EvilBeaver authored Dec 1, 2022
2 parents 47566fa + 5528abc commit f30ef3f
Showing 1 changed file with 55 additions and 14 deletions.
69 changes: 55 additions & 14 deletions src/v8runner.os
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,7 @@
КонецПроцедуры // УстановитьМеткуДляВерсииВХранилище()


// Выполняет подключение ранее неподключенной информационной базы к хранилищу конфигурации.
// Выполняет подключение ранее неподключенной информационной базы (конфигурации/расширения) к хранилищу конфигурации/расширения.
//
// Параметры:
// СтрокаСоединения - Строка - Строка соединения с хранилищем конфигурации
Expand All @@ -426,13 +426,15 @@
// Выполняет подключение даже в том случае, если для данного пользователя уже есть конфигурация, связанная с данным хранилищем..
// ЗаменитьКонфигурациюБД - Булево - Флаг замены конфигурации БД на конфигурацию хранилища (По умолчанию Истина)
// Если конфигурация непустая, данный ключ подтверждает замену конфигурации на конфигурацию из хранилища.
// ИмяРасширения - Строка - Имя расширения
//
Процедура ПодключитьсяКХранилищу(Знач СтрокаСоединения,
Знач ПользовательХранилища,
Знач ПарольХранилища = "",
Знач ИгнорироватьНаличиеПодключеннойБД = Ложь,
Знач ЗаменитьКонфигурациюБД = Истина
) Экспорт
Знач ЗаменитьКонфигурациюБД = Истина,
Знач ИмяРасширения = Неопределено
) Экспорт
Параметры = СтандартныеПараметрыЗапускаКонфигуратора();

Параметры.Добавить("/ConfigurationRepositoryF """+СтрокаСоединения + """");
Expand All @@ -450,14 +452,19 @@
Если ЗаменитьКонфигурациюБД Тогда
Параметры.Добавить("-forceReplaceCfg ");
КонецЕсли;
Если ЗначениеЗаполнено(ИмяРасширения) Тогда
Параметры.Добавить("-Extension " + ИмяРасширения);
КонецЕсли;

ВыполнитьКоманду(Параметры);
КонецПроцедуры

Процедура ОтключитьсяОтХранилища() Экспорт
Процедура ОтключитьсяОтХранилища(Знач ИмяРасширения = Неопределено) Экспорт
Параметры = СтандартныеПараметрыЗапускаКонфигуратора();
Параметры.Добавить("/ConfigurationRepositoryUnbindCfg -force ");

Если ЗначениеЗаполнено(ИмяРасширения) Тогда
Параметры.Добавить("-Extension " + ИмяРасширения);
КонецЕсли;
ВыполнитьКоманду(Параметры);
КонецПроцедуры

Expand Down Expand Up @@ -974,8 +981,14 @@

ПараметрыСвязиСБазой = СтандартныеПараметрыЗапускаКонфигуратора();
ПараметрыСвязиСБазой.Добавить("/UpdateDBCfg");
Если Не ДинамическоеОбновление И Не ЗначениеЗаполнено(ИмяРасширения) Тогда
ПараметрыСвязиСБазой.Добавить("-Dynamic-");
Если ЗначениеЗаполнено(ИмяРасширения) Тогда
ПараметрыСвязиСБазой.Добавить("-Dynamic+");
Иначе
Если Не ДинамическоеОбновление Тогда
ПараметрыСвязиСБазой.Добавить("-Dynamic-");
Иначе
ПараметрыСвязиСБазой.Добавить("-Dynamic+");
КонецЕсли;
КонецЕсли;

Если ПредупрежденияКакОшибки Тогда
Expand All @@ -985,7 +998,7 @@
ПараметрыСвязиСБазой.Добавить("-Server");
КонецЕсли;
Если ЗначениеЗаполнено(ИмяРасширения) Тогда
ПараметрыСвязиСБазой.Добавить("-Extension " + ИмяРасширения);
ПараметрыСвязиСБазой.Добавить("-Extension """ + ИмяРасширения + """");
КонецЕсли;

ВыполнитьКоманду(ПараметрыСвязиСБазой);
Expand All @@ -1001,18 +1014,19 @@
// РежимРеструктуризации - Строка, Неопределено - рекомендуем использовать значения из РежимыРеструктуризации().
// Например, РежимыРеструктуризации().Второй
// Необязательно. По Умолчанию - Неопределено. т.е. использовать режим 1С по умолчанию
// ИмяРасширения - Строка - имя расширения. Необязательно.
//
Процедура ОбновитьКонфигурациюБазыДанныхНаСервере(
ПредупрежденияКакОшибки = Ложь,
ДинамическоеОбновление = Ложь,
РежимРеструктуризации = Неопределено,
ИмяРасширения = "") Экспорт
РежимРеструктуризации = Неопределено
) Экспорт

ПараметрыСвязиСБазой = СтандартныеПараметрыЗапускаКонфигуратора();
ПараметрыСвязиСБазой.Добавить("/UpdateDBCfg");
Если Не ДинамическоеОбновление Тогда
ПараметрыСвязиСБазой.Добавить("-Dynamic-");
Иначе
ПараметрыСвязиСБазой.Добавить("-Dynamic");
КонецЕсли;

Если ПредупрежденияКакОшибки Тогда
Expand All @@ -1022,9 +1036,6 @@
Если ЗначениеЗаполнено(РежимРеструктуризации) Тогда
ПараметрыСвязиСБазой.Добавить(РежимРеструктуризации);
КонецЕсли;
Если ЗначениеЗаполнено(ИмяРасширения) Тогда
ПараметрыСвязиСБазой.Добавить("-Extension " + ИмяРасширения);
КонецЕсли;

ВыполнитьКоманду(ПараметрыСвязиСБазой);

Expand Down Expand Up @@ -2404,6 +2415,36 @@

КонецФункции

// Выполняет загрузку конфигурации расширения из хранилища, указанной версии.
//
// Параметры:
// СтрокаСоединения - Строка - Строка соединения с хранилищем расширения
// ПользовательХранилища - строка - Пользователь для подключения к хранилищу расширения
// ПарольХранилища - Строка - Пароль пользователь для подключения к хранилищу расширения
// ИмяРасширения - Строка - Имя расширения
// НомерВерсии - Число - Номер версии в истории в хранилище расширения, если 0 или меньше, то берется последняя версия.
//

Процедура РасширениеПолучитьИзХранилища(СтрокаСоединения, ПользовательХранилища, ПарольХранилища, ИмяРасширения, НомерВерсииХранилища = 0) Экспорт

ПараметрыСвязиСБазой = СтандартныеПараметрыЗапускаКонфигуратора();
ПараметрыСвязиСБазой.Добавить("/ConfigurationRepositoryF """ + СтрокаСоединения + """");
ПараметрыСвязиСБазой.Добавить("/ConfigurationRepositoryN """ + ПользовательХранилища + """");

Если Не ПустаяСтрока(ПарольХранилища) Тогда
ПараметрыСвязиСБазой.Добавить("/ConfigurationRepositoryP """ + ПарольХранилища + """");
КонецЕсли;

ПараметрыСвязиСБазой.Добавить("/ConfigurationRepositoryUpdateCfg");
Если НомерВерсииХранилища > 0 Тогда
ПараметрыСвязиСБазой.Добавить("-v " + НомерВерсииХранилища);
КонецЕсли;
ПараметрыСвязиСБазой.Добавить("-Extension """ + ИмяРасширения + """");
ПараметрыСвязиСБазой.Добавить("-force");
ВыполнитьКоманду(ПараметрыСвязиСБазой);

КонецПроцедуры

Функция ВариантОбработкиНесуществующихСсылок() Экспорт

Варианты = Новый Структура;
Expand Down

0 comments on commit f30ef3f

Please sign in to comment.