1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-03-29 21:57:16 +02:00

Fix CLI AddIns

This commit is contained in:
Anton Titovets 2025-01-10 15:08:01 +03:00
parent f924e80eca
commit 6d2d86ea35
2 changed files with 52 additions and 2 deletions
src/ru/OPI/src/CommonModules
OPI_SQLite
OPI_ЗапросыSQL

@ -336,6 +336,14 @@
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
Функция ИмяКоннектора() Экспорт
Возврат "OPI_SQLite";
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция ПодключитьКомпонентуНаСервере(Знач ИмяКомпоненты, Знач Класс = "Main")

@ -71,9 +71,9 @@
OPI_ПреобразованиеТипов.ПолучитьМассив(МассивДанных);
OPI_ПреобразованиеТипов.ПолучитьБулево(Транзакция);
Соединение = Модуль.ОткрытьСоединение(Соединение);
Соединение = ОткрытьСоединениеВМодуле(Модуль.ИмяКоннектора(), Соединение);
Если Не Модуль.ЭтоКоннектор(Соединение) Тогда
Если Не ЭтоКомпонента(Соединение) Тогда
Возврат Соединение;
КонецЕсли;
@ -709,6 +709,48 @@
КонецФункции
Функция ОткрытьСоединениеВМодуле(Знач Коннектор, Знач База)
Если ЭтоКомпонента(База) Тогда
Возврат База;
КонецЕсли;
OPI_ПреобразованиеТипов.ПолучитьСтроку(База);
OPI_Инструменты.ВернутьУправляющиеПоследовательности(База);
Коннектор = ПодключитьКомпонентуНаСервере("OPI_SQLite");
Коннектор.Database = База;
Результат = Коннектор.Connect();
Результат = OPI_Инструменты.JsonВСтруктуру(Результат, Ложь);
Возврат ?(Результат["result"], Коннектор, Результат);
КонецФункции
Функция ЭтоКомпонента(Знач Значение)
ТипЗначения = Строка(ТипЗнч(Значение));
Возврат СтрНачинаетсяС(ТипЗначения, "AddIn.");
КонецФункции
Функция ПодключитьКомпонентуНаСервере(Знач ИмяКомпоненты, Знач Класс = "Main")
Если OPI_Инструменты.ЭтоOneScript() Тогда
ИмяМакета = OPI_Инструменты.КаталогКомпонентOS() + ИмяКомпоненты + ".zip";
Иначе
ИмяМакета = "ОбщийМакет." + ИмяКомпоненты;
КонецЕсли;
ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native);
Компонента = Новый ("AddIn." + ИмяКомпоненты + "." + Класс);
Возврат Компонента;
КонецФункции
Процедура РазделитьКоллекциюДанных(Знач Запись, МассивПолей, МассивЗначений)
ТекстОшибки = "Некорректный набор данных для обновления";