mirror of
https://github.com/firstBitSportivnaya/PSSL.git
synced 2025-01-12 02:28:02 +02:00
parent
a30f0e354d
commit
7e9eb46d52
@ -22,7 +22,7 @@
|
||||
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
//Процедура очищает записи в справочнике старше чем установленное в предопределенном значении количество дней
|
||||
// Процедура очищает записи в справочнике старше чем установленное в предопределенном значении количество дней
|
||||
Процедура ОчиститьИсториюИнтеграции() Экспорт
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
|
@ -74,7 +74,7 @@
|
||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||
|
||||
Описание.Имя = "ПроектнаяБиблиотекаПодсистем";
|
||||
Описание.Версия = "1.0.4.13";
|
||||
Описание.Версия = "1.0.4.14";
|
||||
|
||||
// Требуется библиотека стандартных подсистем.
|
||||
Описание.ТребуемыеПодсистемы.Добавить("СтандартныеПодсистемы");
|
||||
|
@ -27,13 +27,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. пбп_ОбщегоНазначенияСервер.ПереадресацияОбщегоМодуля
|
||||
Функция ПереадресацияОбщегоМодуля(ИмяМодуляБСП, ИмяМодуляВстроенного) Экспорт
|
||||
|
||||
Возврат пбп_ОбщегоНазначенияПовтИсп.ПереадресацияОбщегоМодуля(ИмяМодуляБСП, ИмяМодуляВстроенного);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. пбп_ОбщегоНазначенияСервер.ТекущаяДатаПользователя
|
||||
Функция ТекущаяДатаПользователя(ИмяПользователя = Неопределено) Экспорт
|
||||
|
||||
|
23
src/cf/CommonModules/пбп_ОбщегоНазначенияКлиент.xml
Normal file
23
src/cf/CommonModules/пбп_ОбщегоНазначенияКлиент.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?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">
|
||||
<CommonModule uuid="6534881d-6695-4307-b7c5-312a9ca9cc4b">
|
||||
<Properties>
|
||||
<Name>пбп_ОбщегоНазначенияКлиент</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Общего назначения клиент</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>true</ClientManagedApplication>
|
||||
<Server>false</Server>
|
||||
<ExternalConnection>false</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
@ -0,0 +1,64 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
#Область УсловныеВызовы
|
||||
|
||||
// Возвращает ссылку на общий модуль по имени.
|
||||
// Применяется для условного вызова процедуры или функции совместно с ОбщегоНазначенияКлиент.ПодсистемаСуществует.
|
||||
// См. также ОбщегоНазначения.ОбщийМодуль для вызова серверного кода.
|
||||
//
|
||||
// Параметры:
|
||||
// Имя - Строка - имя общего модуля, например "ОбновлениеКонфигурацииКлиент", "ОтчетыВызовСервера".
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ОбщийМодуль
|
||||
//
|
||||
// Пример:
|
||||
// Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда
|
||||
// МодульОбновлениеКонфигурацииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОбновлениеКонфигурацииКлиент");
|
||||
// МодульОбновлениеКонфигурацииКлиент.<Имя процедуры>();
|
||||
// КонецЕсли;
|
||||
//
|
||||
Функция ОбщийМодуль(Имя) Экспорт
|
||||
|
||||
Модуль = Вычислить(Имя);
|
||||
|
||||
#Если Не ВебКлиент Тогда
|
||||
|
||||
// В веб-клиенте не проверяется,
|
||||
// т.к. при обращении к модулям с вызовом сервера типа такого модуля в веб-клиенте не существует.
|
||||
Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда
|
||||
ВызватьИсключение пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Общий модуль ""%1"" не существует.'"),
|
||||
Имя);
|
||||
КонецЕсли;
|
||||
|
||||
#КонецЕсли
|
||||
|
||||
Возврат Модуль;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
@ -105,14 +105,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. пбп_ОбщегоНазначенияСервер.ПереадресацияОбщегоМодуля.
|
||||
//
|
||||
Функция ПереадресацияОбщегоМодуля(ИмяМодуляБСП, ИмяМодуляВстроенного) Экспорт
|
||||
|
||||
Возврат пбп_ОбщегоНазначенияСервер.ПереадресацияОбщегоМодуля(ИмяМодуляБСП, ИмяМодуляВстроенного);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. пбп_ОбщегоНазначенияСервер.ПолучитьЗначениеКонстанты.
|
||||
//
|
||||
Функция ПолучитьЗначениеКонстанты(ИмяКонстанты) Экспорт
|
||||
|
@ -776,7 +776,7 @@
|
||||
Если Метаданные.ОбщиеМодули.Найти("СтандартныеПодсистемыСервер") <> Неопределено Тогда
|
||||
Попытка
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
МодульБСП = пбп_Переадресация.ОбщийМодуль("СтандартныеПодсистемыСервер");
|
||||
МодульБСП = ОбщийМодуль("СтандартныеПодсистемыСервер");
|
||||
ВерсияБСП = МодульБСП.ВерсияБиблиотеки();
|
||||
Исключение
|
||||
ВерсияБСП = Неопределено;
|
||||
@ -787,31 +787,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Возвращает ссылку на общий модуль или модуль менеджера по имени. Если подключена БСП,
|
||||
// происходит переадресация на общий модуль из БСП, иначе используются встроенные модули ПБП.
|
||||
//
|
||||
// Параметры:
|
||||
// ИмяМодуляБСП - Строка - Имя Общего модуля из Библиотеки стандартных подсистем
|
||||
// ИмяМодуляВстроенного - Строка - Имя Общего модуля из Проектной библиотеки подсистем
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ОбщийМодуль
|
||||
// МодульМенеджераОбъекта
|
||||
//
|
||||
Функция ПереадресацияОбщегоМодуля(ИмяМодуляБСП, ИмяМодуляВстроенного = "") Экспорт
|
||||
|
||||
Имя = ИмяМодуляВстроенного;
|
||||
Если пбп_ОбщегоНазначенияПовтИсп.СуществуетБиблиотекаСтандартныхПодсистем()
|
||||
И Метаданные.ОбщиеМодули.Найти(ИмяМодуляБСП) <> Неопределено Тогда
|
||||
Имя = ИмяМодуляБСП;
|
||||
КонецЕсли;
|
||||
|
||||
Модуль = пбп_Переадресация.ОбщийМодуль(Имя);
|
||||
|
||||
Возврат Модуль;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#Область ПользовательскиеФункции
|
||||
|
||||
// Выполняет пользовательскую функцию с переданными параметрами.
|
||||
@ -911,6 +886,58 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#Область УсловныеВызовы
|
||||
|
||||
// Возвращает ссылку на общий модуль или модуль менеджера по имени.
|
||||
// Применяется для условного вызова процедуры или функции совместно с ОбщегоНазначения.ПодсистемаСуществует.
|
||||
// См. также ОбщегоНазначенияКлиент.ОбщийМодуль для вызова клиентского кода.
|
||||
//
|
||||
// Параметры:
|
||||
// Имя - Строка - имя общего модуля или модуля менеджера, например "ОбновлениеКонфигурации",
|
||||
// "Обработка.ПолнотекстовыйПоиск".
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ОбщийМодуль
|
||||
// МодульМенеджераОбъекта
|
||||
//
|
||||
// Пример:
|
||||
// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда
|
||||
// МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации");
|
||||
// МодульОбновлениеКонфигурации.<Имя процедуры>();
|
||||
// КонецЕсли;
|
||||
//
|
||||
// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолнотекстовыйПоиск") Тогда
|
||||
// МодульОбработкаПолнотекстовыйПоиск = ОбщегоНазначения.ОбщийМодуль("Обработка.ПолнотекстовыйПоиск");
|
||||
// МодульОбработкаПолнотекстовыйПоиск.<Имя процедуры>();
|
||||
// КонецЕсли;
|
||||
//
|
||||
Функция ОбщийМодуль(Имя) Экспорт
|
||||
|
||||
Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-off
|
||||
// ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно.
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
Модуль = Вычислить(Имя);
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-on
|
||||
ИначеЕсли СтрЧислоВхождений(Имя, ".") = 1 Тогда
|
||||
Возврат СерверныйМодульМенеджера(Имя);
|
||||
Иначе
|
||||
Модуль = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда
|
||||
ВызватьИсключение(пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Неверное значение параметра %1 в %2. Общий модуль ""%1"" не существует.'"),
|
||||
"Имя", "пбп_ОбщегоНазначенияСервер.ОбщийМодуль", Имя),
|
||||
КатегорияОшибки.ОшибкаКонфигурации);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Модуль;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти // ПрограммныйИнтерфейс
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
@ -1131,4 +1158,111 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область УсловныеВызовы
|
||||
|
||||
// Возвращает серверный модуль менеджера по имени объекта.
|
||||
//
|
||||
// Параметры:
|
||||
// Имя - Строка - Имя вычисляемого модуля
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// МодульМенеджера - Модуль менеджера объекта метаданных
|
||||
//
|
||||
Функция СерверныйМодульМенеджера(Имя)
|
||||
ОбъектНайден = Ложь;
|
||||
КоличествоЧастейИмени = 2;
|
||||
|
||||
ЧастиИмени = СтрРазделить(Имя, ".");
|
||||
Если ЧастиИмени.Количество() = КоличествоЧастейИмени Тогда
|
||||
|
||||
ИмяВида = ВРег(ЧастиИмени[0]);
|
||||
ИмяОбъекта = ЧастиИмени[1];
|
||||
|
||||
Если ИмяВида = ВРег("Константы") Тогда
|
||||
Если Метаданные.Константы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыСведений") Тогда
|
||||
Если Метаданные.РегистрыСведений.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыНакопления") Тогда
|
||||
Если Метаданные.РегистрыНакопления.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыБухгалтерии") Тогда
|
||||
Если Метаданные.РегистрыБухгалтерии.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыРасчета") Тогда
|
||||
Если Метаданные.РегистрыРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Справочники") Тогда
|
||||
Если Метаданные.Справочники.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Документы") Тогда
|
||||
Если Метаданные.Документы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Отчеты") Тогда
|
||||
Если Метаданные.Отчеты.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Обработки") Тогда
|
||||
Если Метаданные.Обработки.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("БизнесПроцессы") Тогда
|
||||
Если Метаданные.БизнесПроцессы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ЖурналыДокументов") Тогда
|
||||
Если Метаданные.ЖурналыДокументов.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Задачи") Тогда
|
||||
Если Метаданные.Задачи.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыСчетов") Тогда
|
||||
Если Метаданные.ПланыСчетов.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыОбмена") Тогда
|
||||
Если Метаданные.ПланыОбмена.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыВидовХарактеристик") Тогда
|
||||
Если Метаданные.ПланыВидовХарактеристик.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыВидовРасчета") Тогда
|
||||
Если Метаданные.ПланыВидовРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ОбъектНайден Тогда
|
||||
ВызватьИсключение(пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Неверное значение параметра %1 в функции %2. Объект метаданных ""%3"" не существует.'"),
|
||||
"Имя", "пбп_ОбщегоНазначенияСервер.СерверныйМодульМенеджера", Имя),
|
||||
КатегорияОшибки.ОшибкаКонфигурации);
|
||||
КонецЕсли;
|
||||
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-off
|
||||
// ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно.
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
Модуль = Вычислить(Имя);
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-on
|
||||
|
||||
Возврат Модуль;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти // СлужебныеПроцедурыИФункции
|
||||
|
@ -38,7 +38,7 @@
|
||||
|
||||
Если пбп_ОбщегоНазначенияПовтИсп.СуществуетБиблиотекаСтандартныхПодсистем()
|
||||
И Метаданные.ОбщиеМодули.Найти(ИмяМодуля) <> Неопределено Тогда
|
||||
Результат.Модуль = ОбщийМодуль(ИмяМодуля);
|
||||
Результат.Модуль = пбп_ОбщегоНазначенияСервер.ОбщийМодуль(ИмяМодуля);
|
||||
Результат.МодульСуществует = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
@ -145,51 +145,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Аналог метода БСП. Возвращает ссылку на общий модуль или модуль менеджера по имени.
|
||||
//
|
||||
// Параметры:
|
||||
// Имя - Строка - имя общего модуля.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ОбщийМодуль
|
||||
// МодульМенеджераОбъекта
|
||||
//
|
||||
// Пример:
|
||||
// МодульОбновлениеКонфигурации = пбп_ОбщегоНазначенияСервер.ОбщийМодуль("ОбновлениеКонфигурации");
|
||||
// МодульОбновлениеКонфигурации.<Имя метода>();
|
||||
//
|
||||
// МодульПолнотекстовыйПоискСервер = пбп_ОбщегоНазначенияСервер.ОбщийМодуль("ПолнотекстовыйПоискСервер");
|
||||
// МодульПолнотекстовыйПоискСервер.<Имя метода>();
|
||||
//
|
||||
Функция ОбщийМодуль(Имя) Экспорт
|
||||
|
||||
Результат = ПереадресацияМодуляОбщегоНазначения();
|
||||
Если Результат.МодульСуществует Тогда
|
||||
Возврат Результат.Модуль.ОбщийМодуль(Имя);
|
||||
КонецЕсли;
|
||||
|
||||
Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-off
|
||||
// ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно.
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
Модуль = Вычислить(Имя);
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-on
|
||||
ИначеЕсли СтрЧислоВхождений(Имя, ".") = 1 Тогда
|
||||
Возврат СерверныйМодульМенеджера(Имя);
|
||||
Иначе
|
||||
Модуль = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда
|
||||
ВызватьИсключение пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Общий модуль ""%1"" не существует.'"),
|
||||
Имя);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Модуль;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Аналог метода БСП. Выполнить экспортную процедуру по имени с уровнем привилегий конфигурации.
|
||||
// При включении профилей безопасности для вызова оператора Выполнить() используется
|
||||
// переход в безопасный режим с профилем безопасности, используемым для информационной базы
|
||||
@ -256,7 +211,7 @@
|
||||
ПроверитьИмяПроцедурыКонфигурации(ИмяМетода);
|
||||
|
||||
Если ПодсистемаСуществует("СтандартныеПодсистемы.ПрофилиБезопасности") Тогда
|
||||
МодульРаботаВБезопасномРежиме = ОбщийМодуль("РаботаВБезопасномРежиме");
|
||||
МодульРаботаВБезопасномРежиме = пбп_ОбщегоНазначенияСервер.ОбщийМодуль("РаботаВБезопасномРежиме");
|
||||
Если МодульРаботаВБезопасномРежиме.ИспользуютсяПрофилиБезопасности()
|
||||
И Не МодульРаботаВБезопасномРежиме.УстановленБезопасныйРежим() Тогда
|
||||
|
||||
@ -325,7 +280,7 @@
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
|
||||
Если ПодсистемаСуществует("ТехнологияСервиса.БазоваяФункциональность") Тогда
|
||||
МодульРаботаВМоделиСервиса = ОбщийМодуль("РаботаВМоделиСервиса");
|
||||
МодульРаботаВМоделиСервиса = пбп_ОбщегоНазначенияСервер.ОбщийМодуль("РаботаВМоделиСервиса");
|
||||
МассивРазделителей = МодульРаботаВМоделиСервиса.РазделителиКонфигурации();
|
||||
Иначе
|
||||
МассивРазделителей = Новый Массив;
|
||||
@ -1002,7 +957,7 @@
|
||||
КонецЕсли;
|
||||
|
||||
Если ПодсистемаСуществует("СтандартныеПодсистемы.Мультиязычность") Тогда
|
||||
МодульМультиязычностьСервер = ОбщийМодуль("МультиязычностьСервер");
|
||||
МодульМультиязычностьСервер = пбп_ОбщегоНазначенияСервер.ОбщийМодуль("МультиязычностьСервер");
|
||||
Возврат МодульМультиязычностьСервер.КодОсновногоЯзыка();
|
||||
КонецЕсли;
|
||||
|
||||
@ -1693,6 +1648,39 @@
|
||||
|
||||
#КонецОбласти // Прочее
|
||||
|
||||
// Определяет принадлежность объекта метаданных к ссылочному типу.
|
||||
//
|
||||
// Параметры:
|
||||
// ОбъектМетаданных - ОбъектМетаданных - объект, для которого необходимо определить принадлежность к заданному типу.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Булево - Истина, если объект ссылочного типа.
|
||||
//
|
||||
Функция ЭтоОбъектСсылочногоТипа(ОбъектМетаданных) Экспорт
|
||||
|
||||
Результат = ПереадресацияМодуляОбщегоНазначения();
|
||||
Если Результат.МодульСуществует Тогда
|
||||
Возврат Результат.Модуль.ЭтоОбъектСсылочногоТипа(ОбъектМетаданных);
|
||||
КонецЕсли;
|
||||
|
||||
ИмяОбъектаМетаданных = ОбъектМетаданных.ПолноеИмя();
|
||||
Позиция = СтрНайти(ИмяОбъектаМетаданных, ".");
|
||||
Если Позиция > 0 Тогда
|
||||
ИмяБазовогоТипа = Лев(ИмяОбъектаМетаданных, Позиция - 1);
|
||||
Возврат ИмяБазовогоТипа = "Справочник"
|
||||
Или ИмяБазовогоТипа = "Документ"
|
||||
Или ИмяБазовогоТипа = "БизнесПроцесс"
|
||||
Или ИмяБазовогоТипа = "Задача"
|
||||
Или ИмяБазовогоТипа = "ПланСчетов"
|
||||
Или ИмяБазовогоТипа = "ПланОбмена"
|
||||
Или ИмяБазовогоТипа = "ПланВидовХарактеристик"
|
||||
Или ИмяБазовогоТипа = "ПланВидовРасчета";
|
||||
Иначе
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ФайловаяСистема
|
||||
@ -1955,9 +1943,9 @@
|
||||
//
|
||||
Процедура ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу = Ложь) Экспорт
|
||||
|
||||
Результат = ПереадресацияМодуляСерверныеОповещения();
|
||||
Если Результат.МодульСуществует Тогда
|
||||
Результат.Модуль.ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу);
|
||||
РезультатВычисления = ПереадресацияМодуляСерверныеОповещения();
|
||||
Если РезультатВычисления.МодульСуществует Тогда
|
||||
РезультатВычисления.Модуль.ОтправитьСерверноеОповещение(ИмяОповещения, Результат, Адресаты, ОтправитьСразу);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
@ -2712,7 +2700,7 @@
|
||||
ИначеЕсли КлассОМ = "ОБЩИЙМОДУЛЬ"
|
||||
Или КлассОМ = "ОБЩИЕМОДУЛИ" Тогда
|
||||
|
||||
Возврат ОбщийМодуль(ИмяОМ);
|
||||
Возврат пбп_ОбщегоНазначенияСервер.ОбщийМодуль(ИмяОМ);
|
||||
|
||||
ИначеЕсли КлассОМ = "ОТЧЕТ"
|
||||
Или КлассОМ = "ОТЧЕТЫ" Тогда
|
||||
@ -2804,103 +2792,6 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область УсловныеВызовы
|
||||
|
||||
// Аналог метода БСП. Возвращает серверный модуль менеджера по имени объекта.
|
||||
//
|
||||
Функция СерверныйМодульМенеджера(Имя)
|
||||
ОбъектНайден = Ложь;
|
||||
|
||||
ЧастиИмени = СтрРазделить(Имя, ".");
|
||||
Если ЧастиИмени.Количество() = 2 Тогда
|
||||
|
||||
ИмяВида = ВРег(ЧастиИмени[0]);
|
||||
ИмяОбъекта = ЧастиИмени[1];
|
||||
|
||||
Если ИмяВида = ВРег("Константы") Тогда
|
||||
Если Метаданные.Константы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыСведений") Тогда
|
||||
Если Метаданные.РегистрыСведений.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыНакопления") Тогда
|
||||
Если Метаданные.РегистрыНакопления.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыБухгалтерии") Тогда
|
||||
Если Метаданные.РегистрыБухгалтерии.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("РегистрыРасчета") Тогда
|
||||
Если Метаданные.РегистрыРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Справочники") Тогда
|
||||
Если Метаданные.Справочники.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Документы") Тогда
|
||||
Если Метаданные.Документы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Отчеты") Тогда
|
||||
Если Метаданные.Отчеты.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Обработки") Тогда
|
||||
Если Метаданные.Обработки.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("БизнесПроцессы") Тогда
|
||||
Если Метаданные.БизнесПроцессы.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ЖурналыДокументов") Тогда
|
||||
Если Метаданные.ЖурналыДокументов.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("Задачи") Тогда
|
||||
Если Метаданные.Задачи.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыСчетов") Тогда
|
||||
Если Метаданные.ПланыСчетов.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыОбмена") Тогда
|
||||
Если Метаданные.ПланыОбмена.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыВидовХарактеристик") Тогда
|
||||
Если Метаданные.ПланыВидовХарактеристик.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ИмяВида = ВРег("ПланыВидовРасчета") Тогда
|
||||
Если Метаданные.ПланыВидовРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда
|
||||
ОбъектНайден = Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ОбъектНайден Тогда
|
||||
ВызватьИсключение пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Объект метаданных ""%1"" не существует.'"), Имя);
|
||||
КонецЕсли;
|
||||
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-off
|
||||
// ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно.
|
||||
УстановитьБезопасныйРежим(Истина);
|
||||
Модуль = Вычислить(Имя);
|
||||
// BSLLS:ExecuteExternalCodeInCommonModule-on
|
||||
|
||||
Возврат Модуль;
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ХранилищеНастроек
|
||||
|
||||
// Аналог метода БСП.
|
||||
|
@ -40,21 +40,7 @@
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
Модуль = Вычислить(ИмяМодуля);
|
||||
|
||||
#Если Не ВебКлиент Тогда
|
||||
|
||||
// В веб-клиенте не проверяется
|
||||
// т.к. при обращении к модулям с вызовом сервера типа такого модуля в веб-клиенте не существует.
|
||||
Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда
|
||||
ВызватьИсключение пбп_ПереадресацияКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Общий модуль ""%1"" не существует.'"),
|
||||
ИмяМодуля);
|
||||
КонецЕсли;
|
||||
|
||||
#КонецЕсли
|
||||
|
||||
Результат.Модуль = Модуль;
|
||||
Результат.Модуль = пбп_ОбщегоНазначенияКлиент.ОбщийМодуль(ИмяМодуля);
|
||||
Результат.МодульСуществует = Истина;
|
||||
|
||||
Возврат Результат;
|
||||
|
@ -30,13 +30,13 @@
|
||||
//
|
||||
Функция ИнициализироватьПредопределенныеЗначения(МенеджерОбъекта) Экспорт
|
||||
|
||||
ТЗПредопределенныхЗначений = пбп_ПредопределенныеЗначенияПереопределяемый
|
||||
.ТаблицаПредопределенныхЭлементов(МенеджерОбъекта);
|
||||
|
||||
Если Не ЗначениеЗаполнено(ТЗПредопределенныхЗначений) Тогда
|
||||
Если Не пбп_ПредопределенныеЗначенияСлужебный.МенеджерВходитВПодсистемуПредопределенных(МенеджерОбъекта) Тогда
|
||||
Возврат Новый ТаблицаЗначений;
|
||||
КонецЕсли;
|
||||
|
||||
ТЗПредопределенныхЗначений = пбп_ПредопределенныеЗначенияПереопределяемый
|
||||
.ТаблицаПредопределенныхЭлементов(МенеджерОбъекта);
|
||||
|
||||
ТаблицаКонфликтныхЭлементов = ОбработатьПредопределенныеЗначения(ТЗПредопределенныхЗначений, МенеджерОбъекта);
|
||||
|
||||
Возврат ТаблицаКонфликтныхЭлементов;
|
||||
@ -79,9 +79,25 @@
|
||||
// Структура - Данные Менеджера объекта
|
||||
// * Менеджер - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
|
||||
// * ПолноеИмя - Строка - Полное имя объекта метаданных.
|
||||
// * Иерархический - Булево - Свойство объекта метаданных.
|
||||
// * ИерархияГруппИЭлементов - Булево - Свойство объекта метаданных.
|
||||
// * КлючиХешаЭлемент - Структура - Ключевые реквизиты для формирования хеша элемента.
|
||||
// * КлючиХешаГруппа - Структура - Ключевые реквизиты для формирования хеша группы.
|
||||
//
|
||||
Функция ДопПараметрыОбработкиПредопределенныхЭлементов(Таблица, МенеджерОбъекта) Экспорт
|
||||
|
||||
Параметры = Новый Структура;
|
||||
Параметры.Вставить("Менеджер", Неопределено);
|
||||
Параметры.Вставить("ПолноеИмя", "");
|
||||
Параметры.Вставить("Иерархический", Ложь);
|
||||
Параметры.Вставить("ИерархияГруппИЭлементов", Ложь);
|
||||
Параметры.Вставить("КлючиХешаЭлемент", Новый Структура);
|
||||
Параметры.Вставить("КлючиХешаГруппа", Новый Структура);
|
||||
|
||||
Если Не пбп_ПредопределенныеЗначенияСлужебный.МенеджерВходитВПодсистемуПредопределенных(МенеджерОбъекта) Тогда
|
||||
Возврат Параметры;
|
||||
КонецЕсли;
|
||||
|
||||
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗнч(МенеджерОбъекта));
|
||||
|
||||
Параметры = Новый Структура;
|
||||
|
@ -13,17 +13,17 @@
|
||||
|
||||
Колонки = КолонкиПредопределенныхЭлементов(Менеджер);
|
||||
|
||||
Таблица = Новый ТаблицаЗначений;
|
||||
|
||||
СоздатьКолонкиТаблицыПредопределенныхЭлементов(Колонки, Таблица);
|
||||
|
||||
Выражение = пбп_ПредопределенныеЗначенияПовтИсп.ФункцииСозданияТаблицПредопределенныхЭлементов()
|
||||
.Получить(ТипЗнч(Менеджер));
|
||||
|
||||
Таблица = Новый ТаблицаЗначений;
|
||||
|
||||
Если Не ЗначениеЗаполнено(Выражение) Тогда
|
||||
Возврат Таблица;
|
||||
КонецЕсли;
|
||||
|
||||
СоздатьКолонкиТаблицыПредопределенныхЭлементов(Колонки, Таблица);
|
||||
|
||||
Параметры = Новый Массив;
|
||||
Параметры.Добавить(Таблица);
|
||||
|
||||
@ -225,21 +225,19 @@
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Где ключ имя колонки, значение описание типов колонки
|
||||
// Неопределено - если обработчика заполнения колонок не существует.
|
||||
//
|
||||
Функция КолонкиПредопределенныхЭлементов(Менеджер) Экспорт
|
||||
|
||||
Колонки = ОбщиеКолонки(Менеджер);
|
||||
|
||||
Выражение = пбп_ПредопределенныеЗначенияПовтИсп.ФункцииПолученияКолонокПредопределенныхЭлементов()
|
||||
.Получить(ТипЗнч(Менеджер));
|
||||
|
||||
Если Не ЗначениеЗаполнено(Выражение) Тогда
|
||||
Возврат Неопределено;
|
||||
Возврат Колонки;
|
||||
КонецЕсли;
|
||||
|
||||
Колонки = ОбщиеКолонки(Менеджер);
|
||||
|
||||
Параметры = Новый Массив;
|
||||
Параметры.Добавить(Менеджер);
|
||||
|
||||
ДопКолонки = пбп_Переадресация.ВычислитьВБезопасномРежиме(Выражение);
|
||||
|
||||
пбп_ПереадресацияКлиентСервер.ДополнитьСтруктуру(Колонки, ДопКолонки);
|
||||
|
@ -0,0 +1,27 @@
|
||||
<?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">
|
||||
<CommonModule uuid="f913d511-a1f5-4046-9f64-c7be0162fcc6">
|
||||
<Properties>
|
||||
<Name>пбп_ПредопределенныеЗначенияСлужебный</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Предопределенные значения служебный</v8:content>
|
||||
</v8:item>
|
||||
<v8:item>
|
||||
<v8:lang>en</v8:lang>
|
||||
<v8:content>Predefined values</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>false</ClientManagedApplication>
|
||||
<Server>true</Server>
|
||||
<ExternalConnection>true</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
@ -0,0 +1,40 @@
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
//
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
Функция МенеджерВходитВПодсистемуПредопределенных(МенеджерОбъекта) Экспорт
|
||||
|
||||
Если МенеджерОбъекта = Неопределено
|
||||
Или Не пбп_переадресация.ЭтоОбъектСсылочногоТипа(Метаданные.НайтиПоТипу(ТипЗнч(МенеджерОбъекта))) Тогда
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Типы = Метаданные.ОпределяемыеТипы.пбп_ПредопределенныеВсеСсылкиПереопределяемый.Тип.Типы();
|
||||
|
||||
Если Типы.Найти(ТипЗнч(МенеджерОбъекта.ПустаяСсылка())) = Неопределено Тогда
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Истина;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
@ -57,7 +57,7 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</xr:Item>
|
||||
</DefaultRoles>
|
||||
<Vendor>Первый БИТ</Vendor>
|
||||
<Version>1.0.4.13</Version>
|
||||
<Version>1.0.4.14</Version>
|
||||
<UpdateCatalogAddress/>
|
||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
|
||||
@ -293,6 +293,7 @@
|
||||
<CommonModule>пбп_МодификацияКонфигурацииПовтИсп</CommonModule>
|
||||
<CommonModule>пбп_ОбновлениеИнформационнойБазыПБП</CommonModule>
|
||||
<CommonModule>пбп_ОбщегоНазначенияВызовСервера</CommonModule>
|
||||
<CommonModule>пбп_ОбщегоНазначенияКлиент</CommonModule>
|
||||
<CommonModule>пбп_ОбщегоНазначенияКлиентСервер</CommonModule>
|
||||
<CommonModule>пбп_ОбщегоНазначенияПовтИсп</CommonModule>
|
||||
<CommonModule>пбп_ОбщегоНазначенияСервер</CommonModule>
|
||||
@ -306,6 +307,7 @@
|
||||
<CommonModule>пбп_ПредопределенныеЗначенияКлиент</CommonModule>
|
||||
<CommonModule>пбп_ПредопределенныеЗначенияПереопределяемый</CommonModule>
|
||||
<CommonModule>пбп_ПредопределенныеЗначенияПовтИсп</CommonModule>
|
||||
<CommonModule>пбп_ПредопределенныеЗначенияСлужебный</CommonModule>
|
||||
<CommonModule>пбп_ПредопределенныеЗначенияСлужебныйКлиент</CommonModule>
|
||||
<CommonModule>пбп_РаботаСДиалогамиКлиент</CommonModule>
|
||||
<CommonModule>пбп_РаботаСДиалогамиСервер</CommonModule>
|
||||
|
Loading…
Reference in New Issue
Block a user