1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2026-06-09 23:56:48 +02:00

Main build (Jenkins)

This commit is contained in:
Vitaly the Alpaca (bot)
2026-05-23 10:34:54 +03:00
parent 2a485c5673
commit 503f37bdbd
37 changed files with 12445 additions and 11406 deletions
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001
+1
View File
@@ -0,0 +1 @@
{"Address":"127.0.0.1","Password":"12we..."}
+19
View File
@@ -0,0 +1,19 @@
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = "127.0.0.1";
Login = "SA";
Password = "12we...";
ConnectionString = OPI_MSSQL.GenerateConnectionString(Address, , Login, Password);
TLSSettings = OPI_MSSQL.GetTLSSettings(True);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Result = OPI_MSSQL.ExecuteSQLQuery("SELECT 1 AS n", , , Connection);
Result = OPI_MSSQL.GetLog(Connection);
+1
View File
@@ -0,0 +1 @@
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
+2 -1
View File
@@ -17,12 +17,13 @@ import Admonition from '@theme/Admonition';
<Tabs>
<TabItem value="params" label="Parameters" default>
`Function CreateConnection(Val ConnectionString = "", Val Tls = "") Export`
`Function CreateConnection(Val ConnectionString = "", Val Tls = "", Val Logging = Undefined) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| ConnectionString | - | String | &#x2716; | Connection string. See GenerateConnectionString |
| Tls | - | Structure Of KeyAndValue | &#x2716; | TLS settings, if necessary. See GetTlsSettings |
| Logging | - | Structure Of KeyAndValue | &#x2716; | Logging settings. See GetLoggingSettings |
<div className="return-value-note">
+78
View File
@@ -0,0 +1,78 @@
---
sidebar_position: 8
sidebar_class_name: doc-no-cli
description: Get log and other functions to work with MSSQL in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, MSSQL]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import Admonition from '@theme/Admonition';
# Get log
Retrieves connection log data (when in-memory logging is enabled)
<Tabs>
<TabItem value="params" label="Parameters" default>
`Function GetLog(Val Connection, Val AsString = False, Val EventCount = 100) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| Connection | - | Arbitrary | &#x2714; | AddIn object with open connection |
| AsString | - | Boolean | &#x2716; | True > returns log as a single string, False > as an array |
| EventCount | - | Number | &#x2716; | Number of recent events to retrieve. 0 > no limits |
<div className="return-value-note">
<div className="return-value-note__title">Returns</div>
<div className="return-value-note__value">
String, Map Of KeyAndValue - Log as a string or a map with the full execution result
</div>
</div>
</TabItem>
<TabItem value="extended" label={<span>Advanced call{' '}<a href="/docs/Start/Advanced-call" target="_blank" rel="noreferrer" title="About advanced call" onClick={(e) => e.stopPropagation()}>?</a></span>}>
*This method has no additional advanced call parameters.*
</TabItem>
</Tabs>
<Admonition type="caution" title="Caution" className="nocli-admonition">
<div className="addin">
<strong>NOCLI:</strong> this method is not available in CLI version
</div>
</Admonition>
```bsl title="1C:Enterprise/OneScript code example"
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = "127.0.0.1";
Login = "SA";
Password = "12we...";
ConnectionString = OPI_MSSQL.GenerateConnectionString(Address, , Login, Password);
TLSSettings = OPI_MSSQL.GetTLSSettings(True);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Result = OPI_MSSQL.ExecuteSQLQuery("SELECT 1 AS n", , , Connection);
Result = OPI_MSSQL.GetLog(Connection);
```
@@ -0,0 +1,60 @@
---
sidebar_position: 7
sidebar_class_name: doc-no-cli
description: Get logging settings and other functions to work with MSSQL in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, MSSQL]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import Admonition from '@theme/Admonition';
# Get logging settings
Retrieves settings structure for enabling logging when opening a connection
<Tabs>
<TabItem value="params" label="Parameters" default>
`Function GetLoggingSettings(Val WriteToMemory = True, Val MaxEvents = 300, Val FilePath = "") Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| WriteToMemory | - | Boolean | &#x2716; | Logging to memory for further retrieval from the addin object |
| MaxEvents | - | Number | &#x2716; | Maximum number of events stored in memory |
| FilePath | - | String | &#x2716; | Path to file for saving full log, if necessary |
<div className="return-value-note">
<div className="return-value-note__title">Returns</div>
<div className="return-value-note__value">
Structure Of KeyAndValue - Settings structure
</div>
</div>
</TabItem>
<TabItem value="extended" label={<span>Advanced call{' '}<a href="/docs/Start/Advanced-call" target="_blank" rel="noreferrer" title="About advanced call" onClick={(e) => e.stopPropagation()}>?</a></span>}>
*This method has no additional advanced call parameters.*
</TabItem>
</Tabs>
<Admonition type="caution" title="Caution" className="nocli-admonition">
<div className="addin">
<strong>NOCLI:</strong> this method is not available in CLI version
</div>
</Admonition>
```bsl title="1C:Enterprise/OneScript code example"
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
```
+1
View File
@@ -0,0 +1 @@
{"Адрес":"127.0.0.1","Пароль":"12we..."}
+19
View File
@@ -0,0 +1,19 @@
ФайлЛога = ПолучитьИмяВременногоФайла("txt");
НастройкиЛогирования = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ФайлЛога);
Адрес = "127.0.0.1";
Логин = "SA";
Пароль = "12we...";
СтрокаПодключения = OPI_MSSQL.СформироватьСтрокуПодключения(Адрес, , Логин, Пароль);
НастройкиTLS = OPI_MSSQL.ПолучитьНастройкиTLS(Истина);
Соединение = OPI_MSSQL.ОткрытьСоединение(СтрокаПодключения, НастройкиTLS, НастройкиЛогирования);
Если Не OPI_MSSQL.ЭтоКоннектор(Соединение) Тогда
ВызватьИсключение OPI_Инструменты.JSONСтрокой(Соединение);
КонецЕсли;
Результат = OPI_MSSQL.ВыполнитьЗапросSQL("SELECT 1 AS n", , , Соединение);
Результат = OPI_MSSQL.ПолучитьЛог(Соединение);
@@ -0,0 +1 @@
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ПолучитьИмяВременногоФайла());
+2 -1
View File
@@ -17,12 +17,13 @@ import Admonition from '@theme/Admonition';
<Tabs>
<TabItem value="params" label="Параметры" default>
`Функция ОткрытьСоединение(Знач СтрокаПодключения = "", Знач Tls = "") Экспорт`
`Функция ОткрытьСоединение(Знач СтрокаПодключения = "", Знач Tls = "", Знач Логирование = Неопределено) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| СтрокаПодключения | - | Строка | &#x2716; | Строка подключения. См. [`СформироватьСтрокуПодключения`](/docs/MSSQL/Common-methods/Generate-connection-string) |
| Tls | - | Структура Из КлючИЗначение | &#x2716; | Настройки TLS, если необходимо. См. [`ПолучитьНастройкиTls`](/docs/MSSQL/Common-methods/Get-tls-settings) |
| Логирование | - | Структура Из КлючИЗначение | &#x2716; | Настройки логирования. См. [`ПолучитьНастройкиЛогирования`](/docs/MSSQL/Common-methods/Get-logging-settings) |
<div className="return-value-note">
+78
View File
@@ -0,0 +1,78 @@
---
sidebar_position: 8
sidebar_class_name: doc-no-cli
description: Получить лог и другие функции для работы с MSSQL в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, MSSQL]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import Admonition from '@theme/Admonition';
# Получить лог
Получает данные лога соединения (при включенном логировании в память)
<Tabs>
<TabItem value="params" label="Параметры" default>
`Функция ПолучитьЛог(Знач Соединение, Знач КакСтрока = Ложь, Знач ЧислоСобытий = 100) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| Соединение | - | Произвольный | &#x2714; | Объект компоненты с открытым соединением |
| КакСтрока | - | Булево | &#x2716; | Истина > возвращает лог одной строкой, Ложь > как массив |
| ЧислоСобытий | - | Число | &#x2716; | Число последних событий для получения. 0 > без ограничений |
<div className="return-value-note">
<div className="return-value-note__title">Возвращаемое значение</div>
<div className="return-value-note__value">
Строка, Соответствие Из КлючИЗначение - Лог как строка или соответствие с полным результатом выполнения
</div>
</div>
</TabItem>
<TabItem value="extended" label={<span>Расширенный вызов{' '}<a href="/docs/Start/Advanced-call" target="_blank" rel="noreferrer" title="Справка о расширенном вызове" onClick={(e) => e.stopPropagation()}>?</a></span>}>
*Для текущего метода нет дополнительных параметров расширенного вызова.*
</TabItem>
</Tabs>
<Admonition type="caution" title="Предупреждение" className="nocli-admonition">
<div className="addin">
<strong>NOCLI:</strong> данный метод недоступен для использования в CLI версии
</div>
</Admonition>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
ФайлЛога = ПолучитьИмяВременногоФайла("txt");
НастройкиЛогирования = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ФайлЛога);
Адрес = "127.0.0.1";
Логин = "SA";
Пароль = "12we...";
СтрокаПодключения = OPI_MSSQL.СформироватьСтрокуПодключения(Адрес, , Логин, Пароль);
НастройкиTLS = OPI_MSSQL.ПолучитьНастройкиTLS(Истина);
Соединение = OPI_MSSQL.ОткрытьСоединение(СтрокаПодключения, НастройкиTLS, НастройкиЛогирования);
Если Не OPI_MSSQL.ЭтоКоннектор(Соединение) Тогда
ВызватьИсключение OPI_Инструменты.JSONСтрокой(Соединение);
КонецЕсли;
Результат = OPI_MSSQL.ВыполнитьЗапросSQL("SELECT 1 AS n", , , Соединение);
Результат = OPI_MSSQL.ПолучитьЛог(Соединение);
```
@@ -0,0 +1,60 @@
---
sidebar_position: 7
sidebar_class_name: doc-no-cli
description: Получить настройки логирования и другие функции для работы с MSSQL в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, MSSQL]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import Admonition from '@theme/Admonition';
# Получить настройки логирования
Получает структуру настроек для запуска логирования при открытии соединения
<Tabs>
<TabItem value="params" label="Параметры" default>
`Функция ПолучитьНастройкиЛогирования(Знач ЗаписьВПамять = Истина, Знач МаксимумСобытий = 300, Знач ПутьКФайлу = "") Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| ЗаписьВПамять | - | Булево | &#x2716; | Запись лога в память для дальнейшего получения из объекта компоненты |
| МаксимумСобытий | - | Число | &#x2716; | Максимальное число событий, хранящееся в память |
| ПутьКФайлу | - | Строка | &#x2716; | Путь к файлу для сохранения полного лога, если необходимо |
<div className="return-value-note">
<div className="return-value-note__title">Возвращаемое значение</div>
<div className="return-value-note__value">
Структура Из КлючИЗначение - Структура настроек
</div>
</div>
</TabItem>
<TabItem value="extended" label={<span>Расширенный вызов{' '}<a href="/docs/Start/Advanced-call" target="_blank" rel="noreferrer" title="Справка о расширенном вызове" onClick={(e) => e.stopPropagation()}>?</a></span>}>
*Для текущего метода нет дополнительных параметров расширенного вызова.*
</TabItem>
</Tabs>
<Admonition type="caution" title="Предупреждение" className="nocli-admonition">
<div className="addin">
<strong>NOCLI:</strong> данный метод недоступен для использования в CLI версии
</div>
</Admonition>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ПолучитьИмяВременногоФайла());
```
+11378 -11378
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001
@@ -32,7 +32,7 @@
Function GetHashSum() Export
LastBuildHash = "6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E";
LastBuildHash = "07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001";
Return LastBuildHash;
@@ -61,10 +61,11 @@
// Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// Logging - Structure Of KeyAndValue - Logging settings. See GetLoggingSettings - log
//
// Returns:
// Arbitrary - Connector object or structure with error information
Function CreateConnection(Val ConnectionString = "", Val Tls = "") Export
Function CreateConnection(Val ConnectionString = "", Val Tls = "", Val Logging = Undefined) Export
If IsConnector(ConnectionString) Then
Return ConnectionString;
@@ -75,6 +76,29 @@ Function CreateConnection(Val ConnectionString = "", Val Tls = "") Export
Connector = OPI_AddIns.GetAddIn("MSSQL");
If Logging = Undefined Then
SettingsString = "";
Else
ErrorText = "Incorrect logging settings";
OPI_TypeConversion.GetKeyValueCollection(Logging, ErrorText);
SettingsString = OPI_Tools.JSONString(Logging);
EndIf;
If ValueIsFilled(SettingsString) Then
LogResult = Connector.SetLogger(SettingsString);
LogResult = OPI_Tools.JsonToStructure(LogResult, False);
If Not LogResult["result"] Then
Return LogResult;
EndIf;
EndIf;
Tls = OPI_AddIns.SetTls(Connector, Tls);
If Not OPI_Tools.GetOr(Tls, "result", False) Then
@@ -255,6 +279,43 @@ Function GetTlsSettings(Val DisableCertVerification, Val CertFilepath = "") Expo
EndFunction
// Get logging settings !NOCLI
// Retrieves settings structure for enabling logging when opening a connection
//
// Parameters:
// WriteToMemory - Boolean - Logging to memory for further retrieval from the addin object - memory
// MaxEvents - Number - Maximum number of events stored in memory - count
// FilePath - String - Path to file for saving full log, if necessary - path
//
// Returns:
// Structure Of KeyAndValue - Settings structure
Function GetLoggingSettings(Val WriteToMemory = True
, Val MaxEvents = 300
, Val FilePath = "") Export
//@skip-check constructor-function-return-section
Return OPI_AddIns.GetLoggingSettings(WriteToMemory, MaxEvents, FilePath);
EndFunction
// Get log !NOCLI
// Retrieves connection log data (when in-memory logging is enabled)
//
// Parameters:
// Connection - Arbitrary - AddIn object with open connection - conn
// AsString - Boolean - True > returns log as a single string, False > as an array - str
// EventCount - Number - Number of recent events to retrieve. 0 > no limits - count
//
// Returns:
// String, Map Of KeyAndValue - Log as a string or a map with the full execution result
Function GetLog(Val Connection, Val AsString = False, Val EventCount = 100) Export
Return OPI_AddIns.GetLog(Connection
, AsString
, EventCount);
EndFunction
#EndRegion
#Region DatabaseManagement
@@ -11464,6 +11464,58 @@ Function Check_MSSQL_GetTLSSettings(Val Result, Val Option)
EndFunction
Function Check_MSSQL_GetLoggingSettings(Val Result, Val Option)
If Option = "File" Then
ExpectsThat(Result["mode"]).Равно("file");
ExpectsThat(ValueIsFilled(Result["file_path"])).Равно(True);
ElsIf Option = "Memory" Then
ExpectsThat(Result["mode"]).Равно("memory");
ExpectsThat(ValueIsFilled(Result["max_entries"])).Равно(True);
Else
ExpectsThat(Result["mode"]).Равно("both");
ExpectsThat(ValueIsFilled(Result["file_path"])).Равно(True);
ExpectsThat(ValueIsFilled(Result["max_entries"])).Равно(True);
EndIf;
Return Result;
EndFunction
Function Check_MSSQL_GetLog(Val Result, Val Option, LogFile = "")
If Option = "AsString" Then
ExpectsThat(TypeOf(Result)).Равно(Type("String"));
ExpectsThat(StrLen(Result) > 0).Равно(True);
LogObject = New File(LogFile);
ExpectsThat(LogObject.Exists()).Равно(True);
ExpectsThat(LogObject.Size() > 0).Равно(True);
Else
ExpectsThat(Result["result"]).Равно(True);
ExpectsThat(Result["logs"]).ИмеетТип("Array");
ExpectsThat(Result["logs"].Count() > 0).Равно(True);
LogObject = New File(LogFile);
ExpectsThat(LogObject.Exists()).Равно(True);
ExpectsThat(LogObject.Size() > 0).Равно(True);
EndIf;
Return Result;
EndFunction
Function Check_MSSQL_CreateDatabase(Val Result, Val Option)
If Option = "Openning" Then
@@ -109,6 +109,8 @@ Procedure MSS_CommonMethods() Export
MSSQL_IsConnector(TestParameters);
MSSQL_ExecuteSQLQuery(TestParameters);
MSSQL_GetTLSSettings(TestParameters);
MSSQL_GetLoggingSettings(TestParameters);
MSSQL_GetLog(TestParameters);
EndProcedure
@@ -323,6 +325,59 @@ Procedure MSSQL_GetTLSSettings(FunctionParameters)
EndProcedure
Procedure MSSQL_GetLoggingSettings(FunctionParameters)
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
// END
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings");
Result = OPI_MSSQL.GetLoggingSettings(False, , GetTempFileName());
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings", "File");
Result = OPI_MSSQL.GetLoggingSettings(True);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings", "Memory");
EndProcedure
Procedure MSSQL_GetLog(FunctionParameters)
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = FunctionParameters["PG_IP"];
Login = "SA";
Password = FunctionParameters["PG_Password"];
ConnectionString = OPI_MSSQL.GenerateConnectionString(Address, , Login, Password);
TLSSettings = OPI_MSSQL.GetTLSSettings(True);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Result = OPI_MSSQL.ExecuteSQLQuery("SELECT 1 AS n", , , Connection);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "ExecuteSQLQuery", "Select"); // SKIP
Result = OPI_MSSQL.GetLog(Connection);
// END
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLog", , LogFile);
Result = OPI_MSSQL.GetLog(Connection, True);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLog", "AsString", LogFile);
OPI_MSSQL.CloseConnection(Connection);
EndProcedure
Procedure MSSQL_CreateDatabase(FunctionParameters)
Address = FunctionParameters["PG_IP"];
@@ -110,6 +110,8 @@ Procedure MSS_CommonMethods() Export
MSSQL_IsConnector(TestParameters);
MSSQL_ExecuteSQLQuery(TestParameters);
MSSQL_GetTLSSettings(TestParameters);
MSSQL_GetLoggingSettings(TestParameters);
MSSQL_GetLog(TestParameters);
EndProcedure
@@ -382,6 +384,71 @@ Procedure MSSQL_GetTLSSettings(FunctionParameters)
EndProcedure
Procedure MSSQL_GetLoggingSettings(FunctionParameters)
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
// END
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings");
Result = OPI_MSSQL.GetLoggingSettings(False, , GetTempFileName());
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings", "File");
Result = OPI_MSSQL.GetLoggingSettings(True);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings", "Memory");
EndProcedure
Procedure MSSQL_GetLog(FunctionParameters)
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = FunctionParameters["PG_IP"];
Login = "SA";
Password = FunctionParameters["PG_Password"];
Options = New Structure;
Options.Insert("addr", Address);
Options.Insert("login", Login);
Options.Insert("pass", Password);
ConnectionString = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "GenerateConnectionString", Options);
Options = New Structure;
Options.Insert("trust", Истина);
TLSSettings = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "GetTLSSettings", Options);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Options = New Structure;
Options.Insert("sql", "SELECT 1 AS n");
Options.Insert("dbc", Connection);
Result = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "ExecuteSQLQuery", Options);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "ExecuteSQLQuery", "Select"); // SKIP
Result = OPI_MSSQL.GetLog(Connection);
// END
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLog", , LogFile);
Result = OPI_MSSQL.GetLog(Connection, True);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLog", "AsString", LogFile);
OPI_MSSQL.CloseConnection(Connection);
EndProcedure
Procedure MSSQL_CreateDatabase(FunctionParameters)
Address = FunctionParameters["PG_IP"];
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001
+72 -3
View File
@@ -60,10 +60,11 @@
// Parameters:
// ConnectionString - String - Connection string. See GenerateConnectionString - string
// Tls - Structure Of KeyAndValue - TLS settings, if necessary. See GetTlsSettings - tls
// Logging - Structure Of KeyAndValue - Logging settings. See GetLoggingSettings - log
//
// Returns:
// Arbitrary - Connector object or structure with error information
Function CreateConnection(Val ConnectionString = "", Val Tls = "") Export
Function CreateConnection(Val ConnectionString = "", Val Tls = "", Val Logging = Undefined) Export
If IsConnector(ConnectionString) Then
Return ConnectionString;
@@ -74,6 +75,29 @@ Function CreateConnection(Val ConnectionString = "", Val Tls = "") Export
Connector = OPI_AddIns.GetAddIn("MSSQL");
If Logging = Undefined Then
SettingsString = "";
Else
ErrorText = "Incorrect logging settings";
OPI_TypeConversion.GetKeyValueCollection(Logging, ErrorText);
SettingsString = OPI_Tools.JSONString(Logging);
EndIf;
If ValueIsFilled(SettingsString) Then
LogResult = Connector.SetLogger(SettingsString);
LogResult = OPI_Tools.JsonToStructure(LogResult, False);
If Not LogResult["result"] Then
Return LogResult;
EndIf;
EndIf;
Tls = OPI_AddIns.SetTls(Connector, Tls);
If Not OPI_Tools.GetOr(Tls, "result", False) Then
@@ -254,6 +278,43 @@ Function GetTlsSettings(Val DisableCertVerification, Val CertFilepath = "") Expo
EndFunction
// Get logging settings !NOCLI
// Retrieves settings structure for enabling logging when opening a connection
//
// Parameters:
// WriteToMemory - Boolean - Logging to memory for further retrieval from the addin object - memory
// MaxEvents - Number - Maximum number of events stored in memory - count
// FilePath - String - Path to file for saving full log, if necessary - path
//
// Returns:
// Structure Of KeyAndValue - Settings structure
Function GetLoggingSettings(Val WriteToMemory = True
, Val MaxEvents = 300
, Val FilePath = "") Export
//@skip-check constructor-function-return-section
Return OPI_AddIns.GetLoggingSettings(WriteToMemory, MaxEvents, FilePath);
EndFunction
// Get log !NOCLI
// Retrieves connection log data (when in-memory logging is enabled)
//
// Parameters:
// Connection - Arbitrary - AddIn object with open connection - conn
// AsString - Boolean - True > returns log as a single string, False > as an array - str
// EventCount - Number - Number of recent events to retrieve. 0 > no limits - count
//
// Returns:
// String, Map Of KeyAndValue - Log as a string or a map with the full execution result
Function GetLog(Val Connection, Val AsString = False, Val EventCount = 100) Export
Return OPI_AddIns.GetLog(Connection
, AsString
, EventCount);
EndFunction
#EndRegion
#Region DatabaseManagement
@@ -640,8 +701,8 @@ EndFunction
#Region Alternate
Function ОткрытьСоединение(Val СтрокаПодключения = "", Val Tls = "") Export
Return CreateConnection(СтрокаПодключения, Tls);
Function ОткрытьСоединение(Val СтрокаПодключения = "", Val Tls = "", Val Логирование = Undefined) Export
Return CreateConnection(СтрокаПодключения, Tls, Логирование);
EndFunction
Function ЗакрытьСоединение(Val Соединение) Export
@@ -664,6 +725,14 @@ Function ПолучитьНастройкиTls(Val ОтключитьПрове
Return GetTlsSettings(ОтключитьПроверкуСертификатов, ПутьКСертификату);
EndFunction
Function ПолучитьНастройкиЛогирования(Val ЗаписьВПамять = True, Val МаксимумСобытий = 300, Val ПутьКФайлу = "") Export
Return GetLoggingSettings(ЗаписьВПамять, МаксимумСобытий, ПутьКФайлу);
EndFunction
Function ПолучитьЛог(Val Соединение, Val КакСтрока = False, Val ЧислоСобытий = 100) Export
Return GetLog(Соединение, КакСтрока, ЧислоСобытий);
EndFunction
Function СоздатьБазуДанных(Val База, Val Соединение = "", Val Tls = "") Export
Return CreateDatabase(База, Соединение, Tls);
EndFunction
+55
View File
@@ -108,6 +108,8 @@ Procedure MSS_CommonMethods() Export
MSSQL_IsConnector(TestParameters);
MSSQL_ExecuteSQLQuery(TestParameters);
MSSQL_GetTLSSettings(TestParameters);
MSSQL_GetLoggingSettings(TestParameters);
MSSQL_GetLog(TestParameters);
EndProcedure
@@ -322,6 +324,59 @@ Procedure MSSQL_GetTLSSettings(FunctionParameters)
EndProcedure
Procedure MSSQL_GetLoggingSettings(FunctionParameters)
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
// END
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings");
Result = OPI_MSSQL.GetLoggingSettings(False, , GetTempFileName());
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings", "File");
Result = OPI_MSSQL.GetLoggingSettings(True);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLoggingSettings", "Memory");
EndProcedure
Procedure MSSQL_GetLog(FunctionParameters)
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = FunctionParameters["PG_IP"];
Login = "SA";
Password = FunctionParameters["PG_Password"];
ConnectionString = OPI_MSSQL.GenerateConnectionString(Address, , Login, Password);
TLSSettings = OPI_MSSQL.GetTLSSettings(True);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Result = OPI_MSSQL.ExecuteSQLQuery("SELECT 1 AS n", , , Connection);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "ExecuteSQLQuery", "Select"); // SKIP
Result = OPI_MSSQL.GetLog(Connection);
// END
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLog", , LogFile);
Result = OPI_MSSQL.GetLog(Connection, True);
OPI_TestDataRetrieval.Process(Result, "MSSQL", "GetLog", "AsString", LogFile);
OPI_MSSQL.CloseConnection(Connection);
EndProcedure
Procedure MSSQL_CreateDatabase(FunctionParameters)
Address = FunctionParameters["PG_IP"];
+67
View File
@@ -110,6 +110,8 @@ Procedure MSS_CommonMethods() Export
MSSQL_IsConnector(TestParameters);
MSSQL_ExecuteSQLQuery(TestParameters);
MSSQL_GetTLSSettings(TestParameters);
MSSQL_GetLoggingSettings(TestParameters);
MSSQL_GetLog(TestParameters);
EndProcedure
@@ -382,6 +384,71 @@ Procedure MSSQL_GetTLSSettings(FunctionParameters)
EndProcedure
Procedure MSSQL_GetLoggingSettings(FunctionParameters)
Result = OPI_MSSQL.GetLoggingSettings(True, 100, GetTempFileName());
// END
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings");
Result = OPI_MSSQL.GetLoggingSettings(False, , GetTempFileName());
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings", "File");
Result = OPI_MSSQL.GetLoggingSettings(True);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLoggingSettings", "Memory");
EndProcedure
Procedure MSSQL_GetLog(FunctionParameters)
LogFile = GetTempFileName("txt");
LoggingSettings = OPI_MSSQL.GetLoggingSettings(True, 100, LogFile);
Address = FunctionParameters["PG_IP"];
Login = "SA";
Password = FunctionParameters["PG_Password"];
Options = New Structure;
Options.Insert("addr", Address);
Options.Insert("login", Login);
Options.Insert("pass", Password);
ConnectionString = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "GenerateConnectionString", Options);
Options = New Structure;
Options.Insert("trust", Истина);
TLSSettings = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "GetTLSSettings", Options);
Connection = OPI_MSSQL.CreateConnection(ConnectionString, TLSSettings, LoggingSettings);
If Not OPI_MSSQL.IsConnector(Connection) Then
Raise OPI_Tools.JSONString(Connection);
EndIf;
Options = New Structure;
Options.Insert("sql", "SELECT 1 AS n");
Options.Insert("dbc", Connection);
Result = OPI_TestDataRetrieval.ExecuteTestCLI("mssql", "ExecuteSQLQuery", Options);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "ExecuteSQLQuery", "Select"); // SKIP
Result = OPI_MSSQL.GetLog(Connection);
// END
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLog", , LogFile);
Result = OPI_MSSQL.GetLog(Connection, True);
OPI_TestDataRetrieval.ProcessCLI(Result, "MSSQL", "GetLog", "AsString", LogFile);
OPI_MSSQL.CloseConnection(Connection);
EndProcedure
Procedure MSSQL_CreateDatabase(FunctionParameters)
Address = FunctionParameters["PG_IP"];
@@ -11460,6 +11460,58 @@ Function Check_MSSQL_GetTLSSettings(Val Result, Val Option)
EndFunction
Function Check_MSSQL_GetLoggingSettings(Val Result, Val Option)
If Option = "File" Then
ExpectsThat(Result["mode"]).Равно("file");
ExpectsThat(ValueIsFilled(Result["file_path"])).Равно(True);
ElsIf Option = "Memory" Then
ExpectsThat(Result["mode"]).Равно("memory");
ExpectsThat(ValueIsFilled(Result["max_entries"])).Равно(True);
Else
ExpectsThat(Result["mode"]).Равно("both");
ExpectsThat(ValueIsFilled(Result["file_path"])).Равно(True);
ExpectsThat(ValueIsFilled(Result["max_entries"])).Равно(True);
EndIf;
Return Result;
EndFunction
Function Check_MSSQL_GetLog(Val Result, Val Option, LogFile = "")
If Option = "AsString" Then
ExpectsThat(TypeOf(Result)).Равно(Type("String"));
ExpectsThat(StrLen(Result) > 0).Равно(True);
LogObject = New File(LogFile);
ExpectsThat(LogObject.Exists()).Равно(True);
ExpectsThat(LogObject.Size() > 0).Равно(True);
Else
ExpectsThat(Result["result"]).Равно(True);
ExpectsThat(Result["logs"]).ИмеетТип("Array");
ExpectsThat(Result["logs"].Count() > 0).Равно(True);
LogObject = New File(LogFile);
ExpectsThat(LogObject.Exists()).Равно(True);
ExpectsThat(LogObject.Size() > 0).Равно(True);
EndIf;
Return Result;
EndFunction
Function Check_MSSQL_CreateDatabase(Val Result, Val Option)
If Option = "Openning" Then
@@ -32,7 +32,7 @@
Function GetHashSum() Export
LastBuildHash = "6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E";
LastBuildHash = "07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001";
Return LastBuildHash;
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001
@@ -32,7 +32,7 @@
Function GetHashSum() Export
LastBuildHash = "6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E";
LastBuildHash = "07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001";
Return LastBuildHash;
@@ -61,7 +61,7 @@
// Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// Логирование - Структура Из КлючИЗначение - Настройки логирования. См. ПолучитьНастройкиЛогирования - log
// Логирование - Структура Из КлючИЗначение - Настройки логирования. См. ПолучитьНастройкиЛогирования - log
//
// Возвращаемое значение:
// Произвольный - Объект коннектора или структура с информацией об ошибке
@@ -302,7 +302,7 @@
// Получает данные лога соединения (при включенном логировании в память)
//
// Параметры:
// Соединение - Произвольный - Объект компоненты с открытым соединением - conn
// Соединение - Произвольный - Объект компоненты с открытым соединением - conn
// КакСтрока - Булево - Истина > возвращает лог одной строкой, Ложь > как массив - str
// ЧислоСобытий - Число - Число последних событий для получения. 0 > без ограничений - count
//
@@ -110,6 +110,8 @@
MSSQL_ЭтоКоннектор(ПараметрыТеста);
MSSQL_ВыполнитьЗапросSQL(ПараметрыТеста);
MSSQL_ПолучитьНастройкиTLS(ПараметрыТеста);
MSSQL_ПолучитьНастройкиЛогирования(ПараметрыТеста);
MSSQL_ПолучитьЛог(ПараметрыТеста);
КонецПроцедуры
@@ -382,6 +384,71 @@
КонецПроцедуры
Процедура MSSQL_ПолучитьНастройкиЛогирования(ПараметрыФункции)
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ПолучитьИмяВременногоФайла());
// END
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Ложь, , ПолучитьИмяВременногоФайла());
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Файл");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Память");
КонецПроцедуры
Процедура MSSQL_ПолучитьЛог(ПараметрыФункции)
ФайлЛога = ПолучитьИмяВременногоФайла("txt");
НастройкиЛогирования = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ФайлЛога);
Адрес = ПараметрыФункции["PG_IP"];
Логин = "SA";
Пароль = ПараметрыФункции["PG_Password"];
Опции = Новый Структура;
Опции.Вставить("addr", Адрес);
Опции.Вставить("login", Логин);
Опции.Вставить("pass", Пароль);
СтрокаПодключения = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "СформироватьСтрокуПодключения", Опции);
Опции = Новый Структура;
Опции.Вставить("trust", Истина);
НастройкиTLS = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "ПолучитьНастройкиTLS", Опции);
Соединение = OPI_MSSQL.ОткрытьСоединение(СтрокаПодключения, НастройкиTLS, НастройкиЛогирования);
Если Не OPI_MSSQL.ЭтоКоннектор(Соединение) Тогда
ВызватьИсключение OPI_Инструменты.JSONСтрокой(Соединение);
КонецЕсли;
Опции = Новый Структура;
Опции.Вставить("sql", "SELECT 1 AS n");
Опции.Вставить("dbc", Соединение);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "ВыполнитьЗапросSQL", Опции);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ВыполнитьЗапросSQL", "Select"); // SKIP
Результат = OPI_MSSQL.ПолучитьЛог(Соединение);
// END
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьЛог", , ФайлЛога);
Результат = OPI_MSSQL.ПолучитьЛог(Соединение, Истина);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьЛог", "КакСтрока", ФайлЛога);
OPI_MSSQL.ЗакрытьСоединение(Соединение);
КонецПроцедуры
Процедура MSSQL_СоздатьБазуДанных(ПараметрыФункции)
Адрес = ПараметрыФункции["PG_IP"];
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001
+10 -10
View File
@@ -60,7 +60,7 @@
// Параметры:
// СтрокаПодключения - Строка - Строка подключения. См. СформироватьСтрокуПодключения - string
// Tls - Структура Из КлючИЗначение - Настройки TLS, если необходимо. См. ПолучитьНастройкиTls - tls
// Логирование - Структура Из КлючИЗначение - Настройки логирования. См. ПолучитьНастройкиЛогирования - log
// Логирование - Структура Из КлючИЗначение - Настройки логирования. См. ПолучитьНастройкиЛогирования - log
//
// Возвращаемое значение:
// Произвольный - Объект коннектора или структура с информацией об ошибке
@@ -301,7 +301,7 @@
// Получает данные лога соединения (при включенном логировании в память)
//
// Параметры:
// Соединение - Произвольный - Объект компоненты с открытым соединением - conn
// Соединение - Произвольный - Объект компоненты с открытым соединением - conn
// КакСтрока - Булево - Истина > возвращает лог одной строкой, Ложь > как массив - str
// ЧислоСобытий - Число - Число последних событий для получения. 0 > без ограничений - count
//
@@ -701,14 +701,6 @@
#Region Alternate
Function GetLoggingSettings(Val WriteToMemory = True, Val MaxEvents = 300, Val FilePath = "") Export
Return ПолучитьНастройкиЛогирования(WriteToMemory, MaxEvents, FilePath);
EndFunction
Function GetLog(Val Connection, Val AsString = False, Val EventCount = 100) Export
Return ПолучитьЛог(Connection, AsString, EventCount);
EndFunction
Function CreateConnection(Val ConnectionString = "", Val Tls = "", Val Logging = Undefined) Export
Return ОткрытьСоединение(ConnectionString, Tls, Logging);
EndFunction
@@ -733,6 +725,14 @@ Function GetTlsSettings(Val DisableCertVerification, Val CertFilepath = "") Expo
Return ПолучитьНастройкиTls(DisableCertVerification, CertFilepath);
EndFunction
Function GetLoggingSettings(Val WriteToMemory = True, Val MaxEvents = 300, Val FilePath = "") Export
Return ПолучитьНастройкиЛогирования(WriteToMemory, MaxEvents, FilePath);
EndFunction
Function GetLog(Val Connection, Val AsString = False, Val EventCount = 100) Export
Return ПолучитьЛог(Connection, AsString, EventCount);
EndFunction
Function CreateDatabase(Val Base, Val Connection = "", Val Tls = "") Export
Return СоздатьБазуДанных(Base, Connection, Tls);
EndFunction
+55
View File
@@ -108,6 +108,8 @@
MSSQL_ЭтоКоннектор(ПараметрыТеста);
MSSQL_ВыполнитьЗапросSQL(ПараметрыТеста);
MSSQL_ПолучитьНастройкиTLS(ПараметрыТеста);
MSSQL_ПолучитьНастройкиЛогирования(ПараметрыТеста);
MSSQL_ПолучитьЛог(ПараметрыТеста);
КонецПроцедуры
@@ -322,6 +324,59 @@
КонецПроцедуры
Процедура MSSQL_ПолучитьНастройкиЛогирования(ПараметрыФункции)
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ПолучитьИмяВременногоФайла());
// END
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ПолучитьНастройкиЛогирования");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Ложь, , ПолучитьИмяВременногоФайла());
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Файл");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина);
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Память");
КонецПроцедуры
Процедура MSSQL_ПолучитьЛог(ПараметрыФункции)
ФайлЛога = ПолучитьИмяВременногоФайла("txt");
НастройкиЛогирования = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ФайлЛога);
Адрес = ПараметрыФункции["PG_IP"];
Логин = "SA";
Пароль = ПараметрыФункции["PG_Password"];
СтрокаПодключения = OPI_MSSQL.СформироватьСтрокуПодключения(Адрес, , Логин, Пароль);
НастройкиTLS = OPI_MSSQL.ПолучитьНастройкиTLS(Истина);
Соединение = OPI_MSSQL.ОткрытьСоединение(СтрокаПодключения, НастройкиTLS, НастройкиЛогирования);
Если Не OPI_MSSQL.ЭтоКоннектор(Соединение) Тогда
ВызватьИсключение OPI_Инструменты.JSONСтрокой(Соединение);
КонецЕсли;
Результат = OPI_MSSQL.ВыполнитьЗапросSQL("SELECT 1 AS n", , , Соединение);
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ВыполнитьЗапросSQL", "Select"); // SKIP
Результат = OPI_MSSQL.ПолучитьЛог(Соединение);
// END
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ПолучитьЛог", , ФайлЛога);
Результат = OPI_MSSQL.ПолучитьЛог(Соединение, Истина);
OPI_ПолучениеДанныхТестов.Обработать(Результат, "MSSQL", "ПолучитьЛог", "КакСтрока", ФайлЛога);
OPI_MSSQL.ЗакрытьСоединение(Соединение);
КонецПроцедуры
Процедура MSSQL_СоздатьБазуДанных(ПараметрыФункции)
Адрес = ПараметрыФункции["PG_IP"];
+67
View File
@@ -110,6 +110,8 @@
MSSQL_ЭтоКоннектор(ПараметрыТеста);
MSSQL_ВыполнитьЗапросSQL(ПараметрыТеста);
MSSQL_ПолучитьНастройкиTLS(ПараметрыТеста);
MSSQL_ПолучитьНастройкиЛогирования(ПараметрыТеста);
MSSQL_ПолучитьЛог(ПараметрыТеста);
КонецПроцедуры
@@ -382,6 +384,71 @@
КонецПроцедуры
Процедура MSSQL_ПолучитьНастройкиЛогирования(ПараметрыФункции)
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ПолучитьИмяВременногоФайла());
// END
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Ложь, , ПолучитьИмяВременногоФайла());
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Файл");
Результат = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьНастройкиЛогирования", "Память");
КонецПроцедуры
Процедура MSSQL_ПолучитьЛог(ПараметрыФункции)
ФайлЛога = ПолучитьИмяВременногоФайла("txt");
НастройкиЛогирования = OPI_MSSQL.ПолучитьНастройкиЛогирования(Истина, 100, ФайлЛога);
Адрес = ПараметрыФункции["PG_IP"];
Логин = "SA";
Пароль = ПараметрыФункции["PG_Password"];
Опции = Новый Структура;
Опции.Вставить("addr", Адрес);
Опции.Вставить("login", Логин);
Опции.Вставить("pass", Пароль);
СтрокаПодключения = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "СформироватьСтрокуПодключения", Опции);
Опции = Новый Структура;
Опции.Вставить("trust", Истина);
НастройкиTLS = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "ПолучитьНастройкиTLS", Опции);
Соединение = OPI_MSSQL.ОткрытьСоединение(СтрокаПодключения, НастройкиTLS, НастройкиЛогирования);
Если Не OPI_MSSQL.ЭтоКоннектор(Соединение) Тогда
ВызватьИсключение OPI_Инструменты.JSONСтрокой(Соединение);
КонецЕсли;
Опции = Новый Структура;
Опции.Вставить("sql", "SELECT 1 AS n");
Опции.Вставить("dbc", Соединение);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("mssql", "ВыполнитьЗапросSQL", Опции);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ВыполнитьЗапросSQL", "Select"); // SKIP
Результат = OPI_MSSQL.ПолучитьЛог(Соединение);
// END
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьЛог", , ФайлЛога);
Результат = OPI_MSSQL.ПолучитьЛог(Соединение, Истина);
OPI_ПолучениеДанныхТестов.ОбработатьCLI(Результат, "MSSQL", "ПолучитьЛог", "КакСтрока", ФайлЛога);
OPI_MSSQL.ЗакрытьСоединение(Соединение);
КонецПроцедуры
Процедура MSSQL_СоздатьБазуДанных(ПараметрыФункции)
Адрес = ПараметрыФункции["PG_IP"];
@@ -11460,6 +11460,58 @@
КонецФункции
Функция Проверка_MSSQL_ПолучитьНастройкиЛогирования(Знач Результат, Знач Вариант)
Если Вариант = "Файл" Тогда
ОжидаетЧто(Результат["mode"]).Равно("file");
ОжидаетЧто(ЗначениеЗаполнено(Результат["file_path"])).Равно(Истина);
ИначеЕсли Вариант = "Память" Тогда
ОжидаетЧто(Результат["mode"]).Равно("memory");
ОжидаетЧто(ЗначениеЗаполнено(Результат["max_entries"])).Равно(Истина);
Иначе
ОжидаетЧто(Результат["mode"]).Равно("both");
ОжидаетЧто(ЗначениеЗаполнено(Результат["file_path"])).Равно(Истина);
ОжидаетЧто(ЗначениеЗаполнено(Результат["max_entries"])).Равно(Истина);
КонецЕсли;
Возврат Результат;
КонецФункции
Функция Проверка_MSSQL_ПолучитьЛог(Знач Результат, Знач Вариант, ФайлЛога = "")
Если Вариант = "КакСтрока" Тогда
ОжидаетЧто(ТипЗнч(Результат)).Равно(Тип("Строка"));
ОжидаетЧто(СтрДлина(Результат) > 0).Равно(Истина);
ОбъектЛога = Новый Файл(ФайлЛога);
ОжидаетЧто(ОбъектЛога.Существует()).Равно(Истина);
ОжидаетЧто(ОбъектЛога.Размер() > 0).Равно(Истина);
Иначе
ОжидаетЧто(Результат["result"]).Равно(Истина);
ОжидаетЧто(Результат["logs"]).ИмеетТип("Массив");
ОжидаетЧто(Результат["logs"].Количество() > 0).Равно(Истина);
ОбъектЛога = Новый Файл(ФайлЛога);
ОжидаетЧто(ОбъектЛога.Существует()).Равно(Истина);
ОжидаетЧто(ОбъектЛога.Размер() > 0).Равно(Истина);
КонецЕсли;
Возврат Результат;
КонецФункции
Функция Проверка_MSSQL_СоздатьБазуДанных(Знач Результат, Знач Вариант)
Если Вариант = "Открытие" Тогда
@@ -32,7 +32,7 @@
Function GetHashSum() Export
LastBuildHash = "6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E";
LastBuildHash = "07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001";
Return LastBuildHash;
+1 -1
View File
@@ -1 +1 @@
6459AC6EEE62580EBEAF4095C93DD11A5C11EA62F5ED86846175E5FA70B4AF9E
07C9B62003773CCAABF4D52D15728FCB03623E0636DAF7EA586DED35C7FF0001