1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-11-25 22:12:29 +02:00

Доработка тестов и правка документации, первые методы MongoDB

This commit is contained in:
Anton Titovets
2025-10-16 16:33:45 +03:00
parent 5b7cc69807
commit 9dd2f85798
21 changed files with 9355 additions and 9232 deletions

68
ci/os/docs_main.os vendored
View File

@@ -23,6 +23,7 @@
Перем ТекущаяБиблиотека; Перем ТекущаяБиблиотека;
Перем КаталогИнструкцийОригинал; Перем КаталогИнструкцийОригинал;
Перем КаталогИнструкцийЛокализация; Перем КаталогИнструкцийЛокализация;
Перем СоответствиеМетодовПутям;
Процедура ПриСозданииОбъекта() Процедура ПриСозданииОбъекта()
@@ -57,7 +58,6 @@
СоответствиеЗаголовков = Новый Соответствие(); СоответствиеЗаголовков = Новый Соответствие();
ОчиститьКаталогиДокументов(); ОчиститьКаталогиДокументов();
ПолучитьТаблицуТранслитации(); ПолучитьТаблицуТранслитации();
ПроверитьСоздатьКаталог(КаталогДокументации); ПроверитьСоздатьКаталог(КаталогДокументации);
СоздатьФайлыДокументации(); СоздатьФайлыДокументации();
@@ -112,11 +112,8 @@
ТранслитированноеИмя = ПеревестиИмя(СтруктураМетода["ИмяМетода"]); ТранслитированноеИмя = ПеревестиИмя(СтруктураМетода["ИмяМетода"]);
ТранслитированнаяОбласть = ПеревестиИмя(Область); ТранслитированнаяОбласть = ПеревестиИмя(Область);
ТранслитированноеИмя = СтрЗаменить(Синонимайзер(ТранслитированноеИмя), " ", "-"); ТранслитированноеИмя = ЗначениеКакЧастьПути(ТранслитированноеИмя);
ТранслитированнаяОбласть = СтрЗаменить(Синонимайзер(ТранслитированнаяОбласть), " ", "-"); ТранслитированнаяОбласть = ЗначениеКакЧастьПути(ТранслитированнаяОбласть);
ТранслитированноеИмя = ВРег(Лев(ТранслитированноеИмя,1)) + нРег(Сред(ТранслитированноеИмя,2));
ТранслитированнаяОбласть = ВРег(Лев(ТранслитированнаяОбласть,1)) + нРег(Сред(ТранслитированнаяОбласть,2));
СинонимОбласти = СтрЗаменить(ТранслитированнаяОбласть, "-", " "); СинонимОбласти = СтрЗаменить(ТранслитированнаяОбласть, "-", " ");
ЗаголовокОбласти = Синонимайзер(Область); ЗаголовокОбласти = Синонимайзер(Область);
@@ -220,6 +217,10 @@
СтруктураОбщихДанных = Новый Структура(); СтруктураОбщихДанных = Новый Структура();
СтруктураОбщихДанных.Вставить("ИмяМодуля", ИмяМодуля); СтруктураОбщихДанных.Вставить("ИмяМодуля", ИмяМодуля);
СоответствиеМетодовПутям = Новый Соответствие();
ТекущаяОбласть = "";
ИмяМодуляБезПрефикса = СтрЗаменить(ИмяМодуля, "OPI_", "");
ПолучитьДанныеМодуля(СтруктураОбщихДанных, ТекущийМодуль); ПолучитьДанныеМодуля(СтруктураОбщихДанных, ТекущийМодуль);
Если Не ЗначениеЗаполнено(СтруктураОбщихДанных["Библиотека"]) Тогда Если Не ЗначениеЗаполнено(СтруктураОбщихДанных["Библиотека"]) Тогда
@@ -236,6 +237,26 @@
А = ОписаниеОшибки(); А = ОписаниеОшибки();
КонецПопытки; КонецПопытки;
Для Каждого Метод Из СтруктураМодуля.Объявления Цикл
Если Метод.Тип = "ОбъявлениеМетода" И Метод.Сигнатура.Экспорт = Истина Тогда
ИмяМетода = Метод.Сигнатура.Имя;
ПутьМетода = СтрШаблон("/docs/%1/%2/%3"
, ИмяМодуляБезПрефикса
, ЗначениеКакЧастьПути(ТекущаяОбласть)
, ЗначениеКакЧастьПути(ИмяМетода));
СоответствиеМетодовПутям.Вставить(ИмяМетода, ПутьМетода);
КонецЕсли;
Если Метод.Тип = "ИнструкцияПрепроцессораОбласть" Тогда
ТекущаяОбласть = Метод.Имя;
КонецЕсли;
КонецЦикла;
Для Каждого Метод Из СтруктураМодуля.Объявления Цикл Для Каждого Метод Из СтруктураМодуля.Объявления Цикл
Если Метод.Тип = "ОбъявлениеМетода" И Метод.Сигнатура.Экспорт = Истина Тогда Если Метод.Тип = "ОбъявлениеМетода" И Метод.Сигнатура.Экспорт = Истина Тогда
@@ -523,6 +544,8 @@
Описание = ?(КоличествоЭлементов >= 5, МассивЭлементовПараметра[4], МассивЭлементовПараметра[2]); Описание = ?(КоличествоЭлементов >= 5, МассивЭлементовПараметра[4], МассивЭлементовПараметра[2]);
ДополнитьОписаниеСсылкой(Описание);
СтруктураПараметра = Новый Структура; СтруктураПараметра = Новый Структура;
СтруктураПараметра.Вставить("Имя" , Имя1С); СтруктураПараметра.Вставить("Имя" , Имя1С);
СтруктураПараметра.Вставить("Опция" , Имя); СтруктураПараметра.Вставить("Опция" , Имя);
@@ -874,6 +897,39 @@
КонецФункции КонецФункции
Процедура ДополнитьОписаниеСсылкой(Описание)
Если СтрНайти(Описание, "См. ") = 0 Тогда
Возврат;
КонецЕсли;
ЧастиОписания = СтрРазделить(СокрЛП(Описание), "См. ");
ЧастьМетода = СокрЛП(ЧастиОписания[1]);
Если СтрНайти(ЧастьМетода, " ") Или ЧастиОписания.Количество() > 2 Тогда
Возврат;
КонецЕсли;
ПутьМетода = СоответствиеМетодовПутям.Получить(ЧастьМетода);
Если Не ЗначениеЗаполнено(ПутьМетода) Тогда
Сообщить("Метод используется как подсказка но не найден: " + ЧастьМетода);
Возврат;
КонецЕсли;
Описание = СтрШаблон("%1 См. [%1](%2)", СокрЛП(ЧастиОписания[0]), ЧастьМетода, ПутьМетода);
КонецПроцедуры
Функция ЗначениеКакЧастьПути(Значение)
ЗначениеПути = СтрЗаменить(Синонимайзер(Значение), " ", "-");
ЗначениеПути = ВРег(Лев(ЗначениеПути,1)) + нРег(Сред(ЗначениеПути,2));
Возврат ЗначениеПути;
КонецФункции
Процедура ПолучитьТаблицуТранслитации() Процедура ПолучитьТаблицуТранслитации()
Транслитация = Новый Соответствие(); Транслитация = Новый Соответствие();

View File

@@ -17,6 +17,7 @@
--docusaurus-highlighted-code-line-bg: #004943; --docusaurus-highlighted-code-line-bg: #004943;
--ifm-tabs-color-active: #004943; --ifm-tabs-color-active: #004943;
--ifm-pagination-nav-color-hover: black; --ifm-pagination-nav-color-hover: black;
--ifm-footer-link-hover-color: black;
} }
p{ p{

View File

@@ -26,4 +26,4 @@ sidebar_position: 4
### 1.28.0 -> 1.29.0 ### 1.28.0 -> 1.29.0
**Ozon**: Библиотека работы с Ozon Seller API была удалена и ее поддержка прекращается. Если вы уже используете данную библиотеку в своем проекте, то вам необходимо сохранить ее отдельно перед обновлением **Ozon**: Библиотека работы с Ozon Seller API была удалена и ее поддержка прекращается. Если вы уже используете данную библиотеку в своем проекте, то вам необходимо сохранить ее отдельно перед обновлением

File diff suppressed because it is too large Load Diff

View File

@@ -48,6 +48,7 @@ impl AddIn {
} }
pub fn initialize(&mut self) -> String { pub fn initialize(&mut self) -> String {
if self.connection_string.is_empty() { if self.connection_string.is_empty() {
return format_json_error("Empty connection string!"); return format_json_error("Empty connection string!");
} }
@@ -62,7 +63,7 @@ impl AddIn {
}; };
match guard.connect(self.connection_string.as_str()){ match guard.connect(self.connection_string.as_str()){
Ok(b) => { Ok(_) => {
self.initialized = true; self.initialized = true;
json!({"result": true}).to_string() json!({"result": true}).to_string()
}, },

View File

@@ -51,7 +51,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -50,7 +50,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -51,7 +51,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -51,7 +51,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -50,7 +50,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -51,7 +51,7 @@
// Creates a connection to the specified base // Creates a connection to the specified base
// //
// Parameters: // Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - sting // ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls // Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// //
// Returns: // Returns:

View File

@@ -51,7 +51,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -50,7 +50,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -51,7 +51,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -51,7 +51,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -46,6 +46,73 @@
#Область ОсновныеМетоды #Область ОсновныеМетоды
// Открыть соединение !NOCLI
// Создает подключение к указанной базе
//
// Параметры:
// СтрокаПодключения - Строка - Строка подключения - string
//
// Возвращаемое значение:
// Произвольный - Объект коннектора или структура с информацией об ошибке
Функция ОткрытьСоединение(Знач СтрокаПодключения = "") Экспорт
Если ЭтоКоннектор(СтрокаПодключения) Тогда
Возврат СтрокаПодключения;
КонецЕсли;
OPI_ПреобразованиеТипов.ПолучитьСтроку(СтрокаПодключения);
OPI_Инструменты.ВернутьУправляющиеПоследовательности(СтрокаПодключения);
Коннектор = OPI_Компоненты.ПолучитьКомпоненту("MongoDB");
Коннектор.ConnectionString = СтрокаПодключения;
Результат = Коннектор.Connect();
Результат = OPI_Инструменты.JsonВСтруктуру(Результат, Ложь);
Возврат ?(Результат["result"], Коннектор, Результат);
КонецФункции
// Закрыть соединение !NOCLI
// Явно закрывает переданное соединение
//
// Параметры:
// Соединение - Произвольный - Объект компоненты с открытым соединением - dbc
//
// Возвращаемое значение:
// Структура Из КлючИЗначение - Результат закрытия соединения
Функция ЗакрытьСоединение(Знач Соединение) Экспорт
Если ЭтоКоннектор(Соединение) Тогда
Результат = Соединение.Close();
Результат = OPI_Инструменты.JsonВСтруктуру(Результат, Ложь);
Иначе
Результат = Новый Структура("result,error", Ложь, "It's not a connection");
КонецЕсли;
Возврат Результат;
КонецФункции
// Это коннектор !NOCLI
// Проверяет, что значение является объектом внешней компоненты MSSQL
//
// Параметры:
// Значение - Произвольный - Значение для проверки - value
//
// Возвращаемое значение:
// Булево - Это коннектор
Функция ЭтоКоннектор(Знач Значение) Экспорт
Возврат Строка(ТипЗнч(Значение)) = "AddIn.OPI_MongoDB.Main";
КонецФункции
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти

View File

@@ -3,7 +3,7 @@
<name>OPI_MongoDB</name> <name>OPI_MongoDB</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Mongo DB (ОПИ)</value> <value>MongoDB (ОПИ)</value>
</synonym> </synonym>
<comment>Модуль для работы с базами MongoDB из набора ОПИ</comment> <comment>Модуль для работы с базами MongoDB из набора ОПИ</comment>
<server>true</server> <server>true</server>

View File

@@ -50,7 +50,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -51,7 +51,7 @@
// Создает подключение к указанной базе // Создает подключение к указанной базе
// //
// Параметры: // Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - sting // СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls // Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// //
// Возвращаемое значение: // Возвращаемое значение:

View File

@@ -10972,7 +10972,7 @@
Результат["set"]["pub_path"] = "./ssh_key.pub"; Результат["set"]["pub_path"] = "./ssh_key.pub";
КонецЕсли; КонецЕсли;
Если СтрНайти(нРег(Вариант), "socks5") > 0 Или СтрНайти(нРег(Вариант), "http") > 0 Тогда Если OPI_Инструменты.ПолеКоллекцииСуществует(Результат, "proxy") Тогда
ОжидаетЧто(Результат["proxy"]).Заполнено(); ОжидаетЧто(Результат["proxy"]).Заполнено();
Результат["proxy"]["password"] = "***"; Результат["proxy"]["password"] = "***";
@@ -11255,7 +11255,7 @@
Результат["set"]["pub_path"] = "./ssh_key.pub"; Результат["set"]["pub_path"] = "./ssh_key.pub";
КонецЕсли; КонецЕсли;
Если СтрНайти(нРег(Вариант), "socks5") > 0 Или СтрНайти(нРег(Вариант), "http") > 0 Тогда Если OPI_Инструменты.ПолеКоллекцииСуществует(Результат, "proxy") Тогда
ОжидаетЧто(Результат["proxy"]).Заполнено(); ОжидаетЧто(Результат["proxy"]).Заполнено();
Результат["proxy"]["password"] = "***"; Результат["proxy"]["password"] = "***";

View File

@@ -20880,7 +20880,7 @@
Обработать(Результат , "FTP", "ЗагрузитьФайл", "Размер 1, " + Постфикс, КартинкаДД.Размер()); Обработать(Результат , "FTP", "ЗагрузитьФайл", "Размер 1, " + Постфикс, КартинкаДД.Размер());
Обработать(Результат2, "FTP", "ЗагрузитьФайл", "Размер 2, " + Постфикс, КартинкаДД.Размер()); Обработать(Результат2, "FTP", "ЗагрузитьФайл", "Размер 2, " + Постфикс, КартинкаДД.Размер());
Для Н = 1 По 7 Цикл Для Н = 1 По 5 Цикл
Результат = OPI_FTP.ЗагрузитьФайл(Соединение, Картинка, "new_dir/pic_from_disk.png"); Результат = OPI_FTP.ЗагрузитьФайл(Соединение, Картинка, "new_dir/pic_from_disk.png");
Результат2 = OPI_FTP.ЗагрузитьФайл(Соединение, КартинкаДД, "pic_from_binary.png"); Результат2 = OPI_FTP.ЗагрузитьФайл(Соединение, КартинкаДД, "pic_from_binary.png");
@@ -20895,11 +20895,6 @@
КонецЦикла; КонецЦикла;
БольшиеДанные = OPI_ЗапросыHTTP.Get(ПараметрыФункции["Big"]);
Результат = OPI_FTP.ЗагрузитьФайл(Соединение, БольшиеДанные, "new_dir/big.bin");
Обработать(Результат, "FTP", "ЗагрузитьФайл", "Большой, " + Постфикс, БольшиеДанные.Размер());
OPI_Инструменты.УдалитьФайлВПопытке(ИВФ, "Не удалось удалить временный файл после теста!"); OPI_Инструменты.УдалитьФайлВПопытке(ИВФ, "Не удалось удалить временный файл после теста!");
КонецПроцедуры КонецПроцедуры
@@ -21271,7 +21266,7 @@
Путь = "new_dir/pic_from_disk.png"; Путь = "new_dir/pic_from_disk.png";
Для Н = 1 По 20 Цикл Для Н = 1 По 5 Цикл
Результат = OPI_FTP.СохранитьФайл(Соединение, Путь, ИмяФайла); Результат = OPI_FTP.СохранитьФайл(Соединение, Путь, ИмяФайла);
@@ -21348,7 +21343,7 @@
Путь = "new_dir/pic_from_disk.png"; Путь = "new_dir/pic_from_disk.png";
Для Н = 1 По 20 Цикл Для Н = 1 По 5 Цикл
Результат = OPI_FTP.ПолучитьДанныеФайла(Соединение, Путь); Результат = OPI_FTP.ПолучитьДанныеФайла(Соединение, Путь);