Skip to content

Commit

Permalink
Добавлен справочник настройки отбора объектов для создания и хранения…
Browse files Browse the repository at this point in the history
… отбора компоновки данных для произвольных объектов конфигурации. Добавлены функции для работы с XML в модуль ОбщегоНазначения
  • Loading branch information
perlusha committed Apr 17, 2024
1 parent 89a04c6 commit feaa045
Show file tree
Hide file tree
Showing 12 changed files with 1,534 additions and 0 deletions.
462 changes: 462 additions & 0 deletions src/Catalogs/__НастройкиОтбораОбъектов.xml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

Процедура ИнициализироватьКомпоновщик(КомпоновщикНастроек, ОбъектМетаданных, ДополнительнаяСтрока = "") Экспорт

Check notice on line 2 in src/Catalogs/__НастройкиОтбораОбъектов/Ext/ManagerModule.bsl

View check run for this annotation

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

src/Catalogs/__НастройкиОтбораОбъектов/Ext/ManagerModule.bsl#L2

Переместите код в область

ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ * ИЗ " + ОбъектМетаданных + " " + ДополнительнаяСтрока;

Check warning on line 5 in src/Catalogs/__НастройкиОтбораОбъектов/Ext/ManagerModule.bsl

View check run for this annotation

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

src/Catalogs/__НастройкиОтбораОбъектов/Ext/ManagerModule.bsl#L5

Текст запроса должен быть корректным и открываться конструктором запросов

СхемаКомпоновкиДанных = Новый СхемаКомпоновкиДанных;
ИсточникДанных = СхемаКомпоновкиДанных.ИсточникиДанных.Добавить();
ИсточникДанных.Имя = "ИсточникДанных1";
ИсточникДанных.ТипИсточникаДанных = "Local";

НаборДанных = СхемаКомпоновкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных"));
НаборДанных.Имя = "НаборДанных1";
НаборДанных.ИсточникДанных = ИсточникДанных.Имя;
НаборДанных.Запрос = ТекстЗапроса;

АдресКомпоновки = ПоместитьВоВременноеХранилище(СхемаКомпоновкиДанных, Новый УникальныйИдентификатор);
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресКомпоновки));
КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);

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

Процедура СкопироватьЭлементыОтбора(НовыйОтбор, СтарыйОтбор) Экспорт

Для Каждого Элемент Из СтарыйОтбор.Элементы Цикл
Если ТипЗнч(Элемент) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
НовыйЭлемент = НовыйОтбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ЗаполнитьЗначенияСвойств(НовыйЭлемент, Элемент);
СкопироватьЭлементыОтбора(НовыйЭлемент, Элемент);
Иначе
НовыйЭлемент = НовыйОтбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЗаполнитьЗначенияСвойств(НовыйЭлемент, Элемент);
КонецЕсли;
КонецЦикла;

КонецПроцедуры
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<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">
<Form uuid="1b463292-adbe-4510-8686-82c974fb20da">
<Properties>
<Name>ФормаВыбораОбъектаМетаданныхУправляемая</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма выбора объекта метаданных управляемая</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
</Properties>
</Form>
</MetaDataObject>
Loading

0 comments on commit feaa045

Please sign in to comment.