Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Архитектурный рефакторинг подсистемы управления интеграциями #99

Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
12 commits
Select commit Hold shift + click to select a range
9e8f4cb
Архитектурный рефакторинг подсистемы управления интеграциями. Добавле…
Sep 10, 2024
816f5c6
Даунгрейд выгрузки на 8.3.23 платформу с 8.3.25
Sep 10, 2024
804f653
Исправление ошибок сонара
Sep 11, 2024
dff0a8b
Добавление исключения для сонара в наименованиях реквизитов и функций…
Sep 11, 2024
26efa4f
Повторное исправление ошибок сонара и дженкинса
Sep 11, 2024
d29e388
Исправление добавления параметра проверки LatinAndCyrillicSymbolInWor…
Sep 11, 2024
4c2df6f
Обновил роли под константу использования пользовательских функций
Sep 11, 2024
c98c759
Поправил настройку доступности при изменении используемой внешней ком…
Sep 11, 2024
958e25b
Проверены объекты метаданных на наличие в подсистемах. Отсутствующие …
thvvmas Sep 13, 2024
5360823
Поправил code smells по сонару
thvvmas Sep 13, 2024
ab93c0f
Удаленвнешний источник данных. Версия конфигурации увеличена
thvvmas Sep 13, 2024
40e084c
Поправлена опечатка в коде определения представления внешнего источни…
thvvmas Sep 13, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,33 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
<Catalog uuid="66713231-4a79-48b8-856c-10d2717a63e7">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.пбп_МетодыИнтеграции" category="Object">
<xr:GeneratedType name="CatalogObject.пбп_ИнтеграционныеПотоки" category="Object">
<xr:TypeId>27e4477a-30c0-46c0-99d5-1662d5278fbf</xr:TypeId>
<xr:ValueId>950612ee-2c6e-4a4a-a7ae-02716a74d3fa</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.пбп_МетодыИнтеграции" category="Ref">
<xr:GeneratedType name="CatalogRef.пбп_ИнтеграционныеПотоки" category="Ref">
<xr:TypeId>a43f4bad-6139-42b3-9f28-c55d60b71fb8</xr:TypeId>
<xr:ValueId>59d0a00d-ee1c-48e5-8e2b-3949a70cc3c1</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.пбп_МетодыИнтеграции" category="Selection">
<xr:GeneratedType name="CatalogSelection.пбп_ИнтеграционныеПотоки" category="Selection">
<xr:TypeId>a19a8ac0-76a9-4657-981e-7e53c430f242</xr:TypeId>
<xr:ValueId>fd8a81a3-26c0-4982-96f9-ab40d9fad50b</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.пбп_МетодыИнтеграции" category="List">
<xr:GeneratedType name="CatalogList.пбп_ИнтеграционныеПотоки" category="List">
<xr:TypeId>30e79f29-fec1-4060-af9d-0bde4238e4c9</xr:TypeId>
<xr:ValueId>5e4ead15-4199-4d03-8ec9-e6d666e1cfde</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.пбп_МетодыИнтеграции" category="Manager">
<xr:GeneratedType name="CatalogManager.пбп_ИнтеграционныеПотоки" category="Manager">
<xr:TypeId>f9fd23df-8010-4128-8546-9a3c88ce3dcd</xr:TypeId>
<xr:ValueId>9a054a13-ab52-4669-9039-fb486e762445</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>пбп_МетодыИнтеграции</Name>
<Name>пбп_ИнтеграционныеПотоки</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Методы интеграции</v8:content>
<v8:content>Интеграционные потоки</v8:content>
</v8:item>
<v8:item>
<v8:lang>en</v8:lang>
Expand Down Expand Up @@ -58,15 +58,15 @@
<QuickChoice>false</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.пбп_МетодыИнтеграции.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.пбп_МетодыИнтеграции.StandardAttribute.Code</xr:Field>
<xr:Field>Catalog.пбп_ИнтеграционныеПотоки.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.пбп_ИнтеграционныеПотоки.StandardAttribute.Code</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.пбп_МетодыИнтеграции.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultObjectForm>Catalog.пбп_ИнтеграционныеПотоки.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultFolderForm/>
<DefaultListForm>Catalog.пбп_МетодыИнтеграции.Form.ФормаСписка</DefaultListForm>
<DefaultListForm>Catalog.пбп_ИнтеграционныеПотоки.Form.ФормаСписка</DefaultListForm>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
Expand All @@ -82,14 +82,14 @@
<ObjectPresentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Метод интеграции</v8:content>
<v8:content>Интеграционный поток</v8:content>
</v8:item>
</ObjectPresentation>
<ExtendedObjectPresentation/>
<ListPresentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Методы интеграции</v8:content>
<v8:content>Интеграционные потоки</v8:content>
</v8:item>
</ListPresentation>
<ExtendedListPresentation/>
Expand All @@ -103,11 +103,11 @@
<ChildObjects>
<Attribute uuid="2d7cb1e2-a560-4707-bf23-e029fd3a4a04">
<Properties>
<Name>Метод</Name>
<Name>ТочкаВхода</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Метод</v8:content>
<v8:content>Точка входа</v8:content>
</v8:item>
<v8:item>
<v8:lang>en</v8:lang>
Expand Down Expand Up @@ -241,23 +241,143 @@
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="1efe076f-d213-4e40-a7f0-b52336b08d83">
<Properties>
<Name>МетодЗапроса</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Метод запроса</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:EnumRef.пбп_МетодыЗапросаREST</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="7a390105-a477-4812-8f06-571a65355a9f">
<Properties>
<Name>ПользовательскаяФункция</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пользовательская функция</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:CatalogRef.пбп_ПользовательскиеФункции</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="2f33fcf4-18bb-40de-9936-72f2681930fe">
<Properties>
<Name>ИзмененВручную</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Изменен вручную</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<TabularSection uuid="2a6450ad-2f8e-4dab-bdcb-6a6acaf132f9">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.пбп_МетодыИнтеграции.ПараметрыREST" category="TabularSection">
<xr:GeneratedType name="CatalogTabularSection.пбп_ИнтеграционныеПотоки.ПараметрыВхода" category="TabularSection">
<xr:TypeId>6a32aa61-64ff-42c6-b4e1-58ae1428c549</xr:TypeId>
<xr:ValueId>45199e31-ad67-4e15-84fc-a1ae2066e542</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.пбп_МетодыИнтеграции.ПараметрыREST" category="TabularSectionRow">
<xr:GeneratedType name="CatalogTabularSectionRow.пбп_ИнтеграционныеПотоки.ПараметрыВхода" category="TabularSectionRow">
<xr:TypeId>02a0b998-bcb9-461a-aa4d-c3d67079a49b</xr:TypeId>
<xr:ValueId>a1db27da-6351-42bc-ab03-d4e10c8e7ebf</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>ПараметрыREST</Name>
<Name>ПараметрыВхода</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры REST</v8:content>
<v8:content>Параметры входа</v8:content>
</v8:item>
</Synonym>
<Comment/>
Expand Down Expand Up @@ -344,6 +464,43 @@
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="a35a3112-2d42-4c11-832e-72ece2038866">
<Properties>
<Name>ПараметрURL</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметр URL</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="c577c4d1-aa38-4c9b-9839-103837f5554f">
<Properties>
<Name>ЗначениеПоУмолчанию</Name>
Expand Down Expand Up @@ -396,6 +553,47 @@
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="09be51cc-4e80-483a-9f87-4ab683c643f0">
<Properties>
<Name>ПолеОбъекта</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле объекта</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>100</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<Form>ФормаЭлемента</Form>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,26 +25,28 @@
// Получает структуру параметров метода интеграции со значениями по умолчанию
//
// Параметры:
// *МетодИнтеграции - СправочникСсылка.пбп_МетодыИнтеграции - ссылка на метод, параметры которого получаем.
// *ИнтеграционныйПоток - СправочникСсылка.пбп_ИнтеграционныеПотоки - ссылка на поток, параметры которого получаем.
// *ЗаполнятьПоУмолчанию - Булево - добавлять ли в возвращаемую структуру значения по умолчанию
// **Ложь - возвращает структуру вида ИмяПараметра<Строка>:ТипЗначения<ПеречислениеСсылка.пбп_ТипыJSON>
// **Истина - возвращает структуру вида ИмяПараметра<Строка>:ЗначениеПоУмолчанию<Строка>
// Возвращаемое значение:
// Структура
Функция ПолучитьСтруктуруПараметровREST(МетодИнтеграции, ЗаполнятьПоУмолчанию = Ложь) Экспорт
Функция ПолучитьСтруктуруПараметровВхода(ИнтеграционныйПоток, ЗаполнятьПоУмолчанию = Ложь) Экспорт

Check warning on line 34 in src/cf/Catalogs/пбп_ИнтеграционныеПотоки/Ext/ManagerModule.bsl

View check run for this annotation

sonar.openbsl.ru qa-bot / 1C: Project SubSystems Library Sonarqube Results

src/cf/Catalogs/пбп_ИнтеграционныеПотоки/Ext/ManagerModule.bsl#L34

Добавьте описание возвращаемого значения функции

Check warning on line 34 in src/cf/Catalogs/пбп_ИнтеграционныеПотоки/Ext/ManagerModule.bsl

View check run for this annotation

sonar.openbsl.ru qa-bot / 1C: Project SubSystems Library Sonarqube Results

src/cf/Catalogs/пбп_ИнтеграционныеПотоки/Ext/ManagerModule.bsl#L34

Необходимо добавить описание всех параметров метода

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| пбп_МетодыИнтеграцииПараметрыREST.Имя КАК Имя,
| пбп_МетодыИнтеграцииПараметрыREST.Тип КАК Тип,
| пбп_МетодыИнтеграцииПараметрыREST.ЗначениеПоУмолчанию КАК ЗначениеПоУмолчанию
|ИЗ
| Справочник.пбп_МетодыИнтеграции.ПараметрыREST КАК пбп_МетодыИнтеграцииПараметрыREST
|ГДЕ
| пбп_МетодыИнтеграцииПараметрыREST.Ссылка = &МетодИнтеграции";
"ВЫБРАТЬ
| пбп_МетодыИнтеграцииПараметрыВхода.Имя КАК Имя,
| пбп_МетодыИнтеграцииПараметрыВхода.Тип КАК Тип,
| пбп_МетодыИнтеграцииПараметрыВхода.ПараметрURL КАК ПараметрURL,
| пбп_МетодыИнтеграцииПараметрыВхода.ЗначениеПоУмолчанию КАК ЗначениеПоУмолчанию,
| пбп_МетодыИнтеграцииПараметрыВхода.ПолеОбъекта КАК ПолеОбъекта
|ИЗ
| Справочник.пбп_ИнтеграционныеПотоки.ПараметрыВхода КАК пбп_МетодыИнтеграцииПараметрыВхода
|ГДЕ
| пбп_МетодыИнтеграцииПараметрыВхода.Ссылка = &ИнтеграционныйПоток";

Запрос.УстановитьПараметр("МетодИнтеграции", МетодИнтеграции);
Запрос.УстановитьПараметр("ИнтеграционныйПоток", ИнтеграционныйПоток);

РезультатЗапроса = Запрос.Выполнить();

Expand All @@ -56,8 +58,8 @@
Имя = Выборка.Имя;

Если ЗаполнятьПоУмолчанию Тогда
Результат.Вставить(Имя, ПривестиЗначениеПоУмолчаниюREST(Выборка.ЗначениеПоУмолчанию, Выборка.Тип));
Иначе
Результат.Вставить(Имя, ПривестиЗначениеПоУмолчаниюREST(Выборка.ЗначениеПоУмолчанию, Выборка.Тип));
Иначе
Результат.Вставить(Имя, Выборка.Тип);
КонецЕсли;

Expand Down
Loading
Loading