diff --git a/.bsl-language-server.json b/.bsl-language-server.json
index befc2b5b..29807935 100644
--- a/.bsl-language-server.json
+++ b/.bsl-language-server.json
@@ -5,7 +5,10 @@
"skipSupport": "withSupport",
"ordinaryAppSupport": false,
"parameters": {
- "OrdinaryAppSupport": false
+ "OrdinaryAppSupport": false,
+ "Typo": {
+ "userWordsToIgnore": "пбп"
+ }
}
}
}
diff --git "a/docs/\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217.md" "b/docs/\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217.md"
index 9133c895..c775e5d6 100644
--- "a/docs/\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217.md"
+++ "b/docs/\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217.md"
@@ -1,30 +1,16 @@
# Подсистема "предопределенные значения"
-Для обращения к ссылкам из кода используем предопределенные значения, добавляем их в план видов характеристик (ПВХ) "пбп_ПредопределенныеЗначения"
+## Описание подсистемы
-Для удобной работы с ПВХ у нас есть следующие функции:
- - **пбп_ОбщегоНазначенияСервер.ПолучитьПредопределенноеЗначение(Имя, ИспользоватьКэш)** - если это единичное значение, возвращается сразу оно, если установлен флаг "Список значений" то возвращает массив значений. Для получения часто используемых предопределенных значений, установите ИспользоватьКэш = Истина.
- - Параметры:
- - Имя - Строка
- - ИспользоватьКэш - Булево
- - Возвращаемое значение:
- - ПроизвольныйТип - Значение переменной ПВХ.
- - Массив - Массив значений переменной ПВХ.
- - **пбп_ОбщегоНазначенияСервер.ПолучитьПредопределенныеЗначения(Имена, ВРазрезеКлючей, ИспользоватьКэш)** - если "ВРазрезеКлючей" то возвращает соответствие нескольких элементов ПВХ, если ВРазрезеКлючей = ложь, то возвращает массив значений. Для получения часто используемых предопределенных значений, установите ИспользоватьКэш = Истина.
- - Параметры:
- - Имена - Строка - Имена переменных ПВХ, перечисленные через запятую.
- - ВРазрезеКлючей - Булево
- - ИспользоватьКэш - Булево
- - Возвращаемое значение:
- - Соответствие - Соответствие имен и значений переменных ПВХ.
- - Ключ - Строка - имя значения
- - Значение - ПроизвольныйТип
- - Массив - ПроизвольныйТип
+По стандартам разработки поиск ссылочных объектов в программном коде по наименованию, коду, гуиду и т.д. не рекомендуется. Для возможности получения ссылок из программного кода предлагается использовать элементы плана видов характеристик. Чтобы избежать необходимости реструктуризации при добавлении новых элементов в ПВХ, формирование иерархии и элементов делается программно и обновляется в пользовательском режиме. Получение элементов стандартизируется через общий модуль с возможностью кэширования.
+При коментировании или удалении из кода предопределенных элементов и последующем перезаполнении, элемент будет помечен на удаление, включая все его подчиненные элементы.
+
+## Добавление новых элементов
В модуле **пбп_ПредопределенныеЗначенияПереопределяемый** значения добавляются через метод **Добавить()** коллекции **Результат**, которая представляет собой таблицу предопределённых значений. Каждая новая запись в этой таблице может быть настроена как группа путём установки свойства ЭтоГруппа в значение Истина.
-**ИдентификаторНастройки**: Уникальный идентификатор группы, который используется для внутренних ссылок и связей между группами.
-**Родитель**: Идентификатор настройки родительской группы, указывается для элементов и групп являющихся подгруппами.
-**УровеньИерархии**: Целочисленное значение, определяющее уровень группы в иерархической структуре. Этот параметр используется для обеспечения правильного порядка создания групп, где сначала должны быть созданы группы верхнего уровня, а затем вложенные.
+- **ИдентификаторНастройки**: Уникальный идентификатор группы, который используется для внутренних ссылок и связей между группами.
+- **Родитель**: Идентификатор настройки родительской группы, указывается для элементов и групп являющихся подгруппами.
+- **УровеньИерархии**: Целочисленное значение, определяющее уровень группы в иерархической структуре. Этот параметр используется для обеспечения правильного порядка создания групп, где сначала должны быть созданы группы верхнего уровня, а затем вложенные.
Пример добавления нового элемента в модуле пбп_ПредопределенныеЗначенияПереопределяемый:
@@ -75,6 +61,27 @@
КонецФункции
```
+## Получение значения элементов
+
+Для удобной работы с ПВХ у нас есть следующие функции:
+ - **пбп_ОбщегоНазначенияСервер.ПолучитьПредопределенноеЗначение(Имя, ИспользоватьКэш)** - если это единичное значение, возвращается сразу оно, если установлен флаг "Список значений" то возвращает массив значений. Для получения часто используемых предопределенных значений, установите ИспользоватьКэш = Истина.
+ - Параметры:
+ - Имя - Строка
+ - ИспользоватьКэш - Булево
+ - Возвращаемое значение:
+ - ПроизвольныйТип - Значение переменной ПВХ.
+ - Массив - Массив значений переменной ПВХ.
+ - **пбп_ОбщегоНазначенияСервер.ПолучитьПредопределенныеЗначения(Имена, ВРазрезеКлючей, ИспользоватьКэш)** - если "ВРазрезеКлючей" то возвращает соответствие нескольких элементов ПВХ, если ВРазрезеКлючей = ложь, то возвращает массив значений. Для получения часто используемых предопределенных значений, установите ИспользоватьКэш = Истина.
+ - Параметры:
+ - Имена - Строка - Имена переменных ПВХ, перечисленные через запятую.
+ - ВРазрезеКлючей - Булево
+ - ИспользоватьКэш - Булево
+ - Возвращаемое значение:
+ - Соответствие - Соответствие имен и значений переменных ПВХ.
+ - Ключ - Строка - имя значения
+ - Значение - ПроизвольныйТип
+ - Массив - ПроизвольныйТип
+
Пример получения множественного результата:
```1C (BSL)
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Ext/ManagerModule.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Ext/ManagerModule.bsl"
index 3573aec0..5f282702 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Ext/ManagerModule.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Ext/ManagerModule.bsl"
@@ -1,41 +1 @@
-// Библиотека проектных подсистем для упрощения разработки архитектуры на 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/
-//
-
-#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
-
-#Область ПрограммныйИнтерфейс
-
-Процедура ЗаполнитьПредопределенныеСоответствия() Экспорт
-
- ТЗПредопределенныхЗначений = пбп_ИнтеграцииПереопределяемый.ПредопределенныеЗначенияИнтегрируемыеСистемы();
-
- ТЗПредопределенныхЗначенийКСозданию = пбп_ПредопределенныеЗначения.ПредопределенныеЗначенияКСозданию(
- ТЗПредопределенныхЗначений,
- "Справочник.пбп_ИнтегрируемыеСистемы");
-
- пбп_ПредопределенныеЗначения.СоздатьПредопределенныеЗначения(
- ТЗПредопределенныхЗначенийКСозданию,
- Справочники.пбп_ИнтегрируемыеСистемы);
-
-КонецПроцедуры
-
-#КонецОбласти
-
-#КонецЕсли
\ No newline at end of file
+
\ No newline at end of file
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
index a650ae82..d6b22674 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\270\321\200\321\203\320\265\320\274\321\213\320\265\320\241\320\270\321\201\321\202\320\265\320\274\321\213/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
@@ -26,9 +26,7 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьПредопределенныеНаСервере()
-
- Справочники.пбп_ИнтегрируемыеСистемы.ЗаполнитьПредопределенныеСоответствия();
-
+ пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_ИнтегрируемыеСистемы);
КонецПроцедуры
&НаКлиенте
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
index 50615d39..0e8c10a9 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
@@ -22,20 +22,6 @@
#Область ПрограммныйИнтерфейс
-Процедура ЗаполнитьПредопределенныеСоответствия() Экспорт
-
- ТЗПредопределенныхЗначений = пбп_ИнтеграцииПереопределяемый.ПредопределенныеЗначенияМетодыИнтеграции();
-
- ТЗПредопределенныхЗначенийКСозданию = пбп_ПредопределенныеЗначения.ПредопределенныеЗначенияКСозданию(
- ТЗПредопределенныхЗначений,
- "Справочник.пбп_МетодыИнтеграции");
-
- пбп_ПредопределенныеЗначения.СоздатьПредопределенныеЗначения(
- ТЗПредопределенныхЗначенийКСозданию,
- Справочники.пбп_МетодыИнтеграции);
-
-КонецПроцедуры
-
// Получает структуру параметров метода интеграции со значениями по умолчанию
//
// Параметры:
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
index 0a7c5cfd..89cf39c4 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\234\320\265\321\202\320\276\320\264\321\213\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
@@ -26,9 +26,7 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьПредопределенныеНаСервере()
-
- Справочники.пбп_МетодыИнтеграции.ЗаполнитьПредопределенныеСоответствия();
-
+ пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_МетодыИнтеграции);
КонецПроцедуры
&НаКлиенте
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
index 39dbd96a..5f282702 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Ext/ManagerModule.bsl"
@@ -1,41 +1 @@
-// Библиотека проектных подсистем для упрощения разработки архитектуры на 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/
-//
-
-#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
-
-#Область ПрограммныйИнтерфейс
-
-Процедура ЗаполнитьПредопределенныеСоответствия() Экспорт
-
- ТЗПредопределенныхЗначений = пбп_ИнтеграцииПереопределяемый.ПредопределенныеЗначенияНастройкиИнтеграции();
-
- ТЗПредопределенныхЗначенийКСозданию = пбп_ПредопределенныеЗначения.ПредопределенныеЗначенияКСозданию(
- ТЗПредопределенныхЗначений,
- "Справочник.пбп_НастройкиИнтеграции");
-
- пбп_ПредопределенныеЗначения.СоздатьПредопределенныеЗначения(
- ТЗПредопределенныхЗначенийКСозданию,
- Справочники.пбп_НастройкиИнтеграции);
-
-КонецПроцедуры
-
-#КонецОбласти
-
-#КонецЕсли
\ No newline at end of file
+
\ No newline at end of file
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
index 0b2a7f40..4e33d702 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
@@ -26,9 +26,7 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьПредопределенныеНаСервере()
-
- Справочники.пбп_НастройкиИнтеграции.ЗаполнитьПредопределенныеСоответствия();
-
+ пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_НастройкиИнтеграции);
КонецПроцедуры
&НаКлиенте
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Ext/ManagerModule.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Ext/ManagerModule.bsl"
index 35049b52..3e720346 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Ext/ManagerModule.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Ext/ManagerModule.bsl"
@@ -49,20 +49,6 @@
КонецФункции
-Процедура ЗаполнитьПредопределенныеСоответствия() Экспорт
-
- ТЗПредопределенныхЗначений = пбп_ТипСоответствияОбъектовИБПереопределяемый.ПредопределенныеЗначения();
-
- ТЗПредопределенныхЗначенийКСозданию = пбп_ПредопределенныеЗначения.ПредопределенныеЗначенияКСозданию(
- ТЗПредопределенныхЗначений,
- "Справочник.пбп_ТипСоответствияОбъектовИБ");
-
- пбп_ПредопределенныеЗначения.СоздатьПредопределенныеЗначения(
- ТЗПредопределенныхЗначенийКСозданию,
- Справочники.пбп_ТипСоответствияОбъектовИБ);
-
-КонецПроцедуры
-
#КонецОбласти
#КонецЕсли
\ No newline at end of file
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
index 319a3ce7..6fbacddd 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
@@ -26,9 +26,7 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьПредопределенныеНаСервере()
-
- Справочники.пбп_ТипСоответствияОбъектовИБ.ЗаполнитьПредопределенныеСоответствия();
-
+ пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(Справочники.пбп_ТипСоответствияОбъектовИБ);
КонецПроцедуры
&НаКлиенте
diff --git "a/src/cf/ChartsOfCharacteristicTypes/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl" "b/src/cf/ChartsOfCharacteristicTypes/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
index 3ac5599f..85125840 100644
--- "a/src/cf/ChartsOfCharacteristicTypes/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
+++ "b/src/cf/ChartsOfCharacteristicTypes/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form/Module.bsl"
@@ -14,7 +14,8 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьПредопределенныеНаСервере()
- пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения();
+ пбп_ПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначения(
+ ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения);
КонецПроцедуры
&НаКлиенте
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml"
deleted file mode 100644
index 5cccd90b..00000000
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml"
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
- пбп_ИнтеграцииПереопределяемый
-
-
- ru
- Интеграции переопределяемый
-
-
-
- false
- false
- true
- true
- false
- false
- false
- DontUse
-
-
-
\ No newline at end of file
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
deleted file mode 100644
index e7fe4ef0..00000000
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
+++ /dev/null
@@ -1,103 +0,0 @@
-// Библиотека проектных подсистем для упрощения разработки архитектуры на 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/
-//
-
-#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
-
-#Область ПрограммныйИнтерфейс
-
-Функция ПредопределенныеЗначенияИнтегрируемыеСистемы() Экспорт
-
- Результат = ТаблицаПредопределенныхИнтегрируемыеСистемы();
-
- // Добавление
- НоваяСистема = Результат.Добавить();
- НоваяСистема.Наименование = "Система N";
- НоваяСистема.ИдентификаторНастройки = "СистемаN";
- // КонецДобавления
-
- Возврат Результат;
-
-КонецФункции
-
-Функция ПредопределенныеЗначенияМетодыИнтеграции() Экспорт
-
- Результат = ТаблицаПредопределенныхМетодыИнтеграции();
-
- // Добавление
- НовыйМетод = Результат.Добавить();
- НовыйМетод.Наименование = "Метод интеграции системы N";
- НовыйМетод.ИдентификаторНастройки = "МетодИнтеграцииСистемыN";
- // КонецДобавления
-
- Возврат Результат;
-
-КонецФункции
-
-Функция ПредопределенныеЗначенияНастройкиИнтеграции() Экспорт
-
- Результат = ТаблицаПредопределенныхНастройкиИнтеграции();
-
- // Добавление
- НоваяНастройка = Результат.Добавить();
- НоваяНастройка.Наименование = "Интеграция с системой N";
- НоваяНастройка.ИдентификаторНастройки = "ИнтеграцияССистемойN";
- // КонецДобавления
-
- Возврат Результат;
-
-КонецФункции
-
-#КонецОбласти
-
-#Область СлужебныеПроцедурыИФункции
-
-Функция ТаблицаПредопределенныхИнтегрируемыеСистемы()
-
- Результат = Новый ТаблицаЗначений;
-
- пбп_ПредопределенныеЗначенияПереопределяемый.ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
-
- Возврат Результат;
-
-КонецФункции
-
-Функция ТаблицаПредопределенныхМетодыИнтеграции()
-
- Результат = Новый ТаблицаЗначений;
-
- пбп_ПредопределенныеЗначенияПереопределяемый.ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
-
- Возврат Результат;
-
-КонецФункции
-
-Функция ТаблицаПредопределенныхНастройкиИнтеграции()
-
- Результат = Новый ТаблицаЗначений;
-
- пбп_ПредопределенныеЗначенияПереопределяемый.ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
-
- Возврат Результат;
-
-КонецФункции
-
-#КонецОбласти
-
-#КонецЕсли
\ No newline at end of file
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\320\275\320\276\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\206\320\270\320\276\320\275\320\275\320\276\320\271\320\221\320\260\320\267\321\213\320\237\320\221\320\237/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\320\275\320\276\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\206\320\270\320\276\320\275\320\275\320\276\320\271\320\221\320\260\320\267\321\213\320\237\320\221\320\237/Ext/Module.bsl"
index 0aa14522..28cad647 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\320\275\320\276\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\206\320\270\320\276\320\275\320\275\320\276\320\271\320\221\320\260\320\267\321\213\320\237\320\221\320\237/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\320\275\320\276\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\204\320\276\321\200\320\274\320\260\321\206\320\270\320\276\320\275\320\275\320\276\320\271\320\221\320\260\320\267\321\213\320\237\320\221\320\237/Ext/Module.bsl"
@@ -74,7 +74,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "ПроектнаяБиблиотекаПодсистем";
- Описание.Версия = "1.0.1.2";
+ Описание.Версия = "1.0.1.3";
// Требуется библиотека стандартных подсистем.
Описание.ТребуемыеПодсистемы.Добавить("СтандартныеПодсистемы");
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Ext/Module.bsl"
index ba28d11b..1a525d75 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Ext/Module.bsl"
@@ -27,31 +27,31 @@
// Возвращает значение предопределенного элемента ПВХ по имени.
//
// Параметры:
-// Имя - Строка - Имя переменной ПВХ.
+// Идентификатор - Строка - Идентификатор переменной ПВХ.
//
// Возвращаемое значение:
// - ПроизвольныйТип - Значение переменной ПВХ.
// - Массив - Массив значений переменной ПВХ.
//
-Функция ПолучитьПредопределенноеЗначение(Имя) Экспорт
+Функция ПолучитьПредопределенноеЗначение(Идентификатор) Экспорт
- Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначение(Имя);
+ Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначение(Идентификатор);
КонецФункции
-// Возвращает соответствие предопределенных элементов ПВХ по имени.
+// Возвращает соответствие предопределенных элементов ПВХ по идентификаторам.
//
// Параметры:
-// Имя - Строка - Имена переменных ПВХ, перечисленные через запятую.
+// Идентификаторы - Строка - Идентификаторы переменных ПВХ, перечисленные через запятую.
// ВРазрезеКлючей - Булево - Признак получения данных в виде соответствия, где Ключ - Имя переменной.
//
// Возвращаемое значение:
-// - Соответствие - Соответствие имен и значений переменных ПВХ.
+// - Соответствие - Соответствие идентификаторов и значений переменных ПВХ.
// - Массив - Массив значений переменных ПВХ.
//
-Функция ПолучитьПредопределенныеЗначения(Имена, ВРазрезеКлючей = Ложь) Экспорт
+Функция ПолучитьПредопределенныеЗначения(Идентификаторы, ВРазрезеКлючей = Ложь) Экспорт
- Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначения(Имена, ВРазрезеКлючей);
+ Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначения(Идентификаторы, ВРазрезеКлючей);
КонецФункции
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
index 1a1531a8..2a9e4f18 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
@@ -54,22 +54,22 @@
Конецфункции
-// Возвращает значение предопределенного элемента ПВХ по имени.
+// Возвращает значение предопределенного элемента ПВХ по идентификатору.
//
// Параметры:
-// Имя - Строка - Имя переменной ПВХ.
+// Идентификатор - Строка - Идентификатор переменной ПВХ.
// ИспользоватьКэш - Булево - Признак получения данных из кэша.
//
// Возвращаемое значение:
// - ПроизвольныйТип - Значение переменной ПВХ.
// - Массив - Массив значений переменной ПВХ.
//
-Функция ПолучитьПредопределенноеЗначение(Имя, ИспользоватьКэш = Ложь) Экспорт
+Функция ПолучитьПредопределенноеЗначение(Идентификатор, ИспользоватьКэш = Ложь) Экспорт
Если ИспользоватьКэш Тогда
- Возврат пбп_ОбщегоНазначенияПовтИсп.ПолучитьПредопределенноеЗначение(Имя);
+ Возврат пбп_ОбщегоНазначенияПовтИсп.ПолучитьПредопределенноеЗначение(Идентификатор);
Иначе
- Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначение(Имя);
+ Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначение(Идентификатор);
КонецЕсли;
КонецФункции
@@ -77,20 +77,20 @@
// Возвращает соответствие предопределенных элементов ПВХ по имени.
//
// Параметры:
-// Имя - Строка - Имена переменных ПВХ, перечисленные через запятую.
-// ВРазрезеКлючей - Булево - Признак получения данных в виде соответствия, где Ключ - Имя переменной.
+// Идентификаторы - Строка - Идентификаторы переменных ПВХ, перечисленные через запятую.
+// ВРазрезеКлючей - Булево - Признак получения данных в виде соответствия, где Ключ - Идентификатор переменной.
// ИспользоватьКэш - Булево - Признак получения данных из кэша.
//
// Возвращаемое значение:
-// - Соответствие - Соответствие имен и значений переменных ПВХ.
+// - Соответствие - Соответствие идентификаторов и значений переменных ПВХ.
// - Массив - Массив значений переменных ПВХ.
//
-Функция ПолучитьПредопределенныеЗначения(Имена, ВРазрезеКлючей = Ложь, ИспользоватьКэш = Ложь) Экспорт
+Функция ПолучитьПредопределенныеЗначения(Идентификаторы, ВРазрезеКлючей = Ложь, ИспользоватьКэш = Ложь) Экспорт
Если ИспользоватьКэш Тогда
- Возврат пбп_ОбщегоНазначенияПовтИсп.ПолучитьПредопределенныеЗначения(Имена, ВРазрезеКлючей);
+ Возврат пбп_ОбщегоНазначенияПовтИсп.ПолучитьПредопределенныеЗначения(Идентификаторы, ВРазрезеКлючей);
Иначе
- Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначения(Имена, ВРазрезеКлючей);
+ Возврат ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения.ПолучитьЗначения(Идентификаторы, ВРазрезеКлючей);
КонецЕсли;
КонецФункции
@@ -1815,6 +1815,124 @@
#КонецОбласти
+// Аналог метода БСП. Возвращает менеджер объекта по полному имени объекта метаданных.
+// Ограничение: не обрабатываются точки маршрутов бизнес-процессов.
+//
+// Параметры:
+// ПолноеИмя - Строка - полное имя объекта метаданных. Пример: "Справочник.Организации".
+//
+// Возвращаемое значение:
+// СправочникМенеджер, ДокументМенеджер, ОбработкаМенеджер, РегистрСведенийМенеджер - менеджер объекта.
+//
+// Пример:
+// МенеджерСправочника = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени("Справочник.Организации");
+// ПустаяСсылка = МенеджерСправочника.ПустаяСсылка();
+//
+Функция МенеджерОбъектаПоПолномуИмени(ПолноеИмя) Экспорт
+
+ Перем КлассОМ, ИмяОМ, Менеджер;
+
+ ЧастиИмени = СтрРазделить(ПолноеИмя, ".");
+
+ Если ЧастиИмени.Количество() >= 2 Тогда
+ КлассОМ = ЧастиИмени[0];
+ ИмяОМ = ЧастиИмени[1];
+ Иначе
+ Менеджер = Неопределено;
+ КонецЕсли;
+
+ Если ВРег(КлассОМ) = "ПЛАНОБМЕНА" Тогда
+ Менеджер = ПланыОбмена;
+
+ ИначеЕсли ВРег(КлассОМ) = "СПРАВОЧНИК" Тогда
+ Менеджер = Справочники;
+
+ ИначеЕсли ВРег(КлассОМ) = "ДОКУМЕНТ" Тогда
+ Менеджер = Документы;
+
+ ИначеЕсли ВРег(КлассОМ) = "ЖУРНАЛДОКУМЕНТОВ" Тогда
+ Менеджер = ЖурналыДокументов;
+
+ ИначеЕсли ВРег(КлассОМ) = "ПЕРЕЧИСЛЕНИЕ" Тогда
+ Менеджер = Перечисления;
+
+ ИначеЕсли ВРег(КлассОМ) = "ОТЧЕТ" Тогда
+ Менеджер = Отчеты;
+
+ ИначеЕсли ВРег(КлассОМ) = "ОБРАБОТКА" Тогда
+ Менеджер = Обработки;
+
+ ИначеЕсли ВРег(КлассОМ) = "ПЛАНВИДОВХАРАКТЕРИСТИК" Тогда
+ Менеджер = ПланыВидовХарактеристик;
+
+ ИначеЕсли ВРег(КлассОМ) = "ПЛАНСЧЕТОВ" Тогда
+ Менеджер = ПланыСчетов;
+
+ ИначеЕсли ВРег(КлассОМ) = "ПЛАНВИДОВРАСЧЕТА" Тогда
+ Менеджер = ПланыВидовРасчета;
+
+ ИначеЕсли ВРег(КлассОМ) = "РЕГИСТРСВЕДЕНИЙ" Тогда
+ Менеджер = РегистрыСведений;
+
+ ИначеЕсли ВРег(КлассОМ) = "РЕГИСТРНАКОПЛЕНИЯ" Тогда
+ Менеджер = РегистрыНакопления;
+
+ ИначеЕсли ВРег(КлассОМ) = "РЕГИСТРБУХГАЛТЕРИИ" Тогда
+ Менеджер = РегистрыБухгалтерии;
+
+ ИначеЕсли ВРег(КлассОМ) = "РЕГИСТРРАСЧЕТА" Тогда
+
+ Если ЧастиИмени.Количество() = 2 Тогда
+ Менеджер = РегистрыРасчета;
+
+ ИначеЕсли ЧастиИмени.Количество() = 4 Тогда
+ КлассПодчиненногоОМ = ЧастиИмени[2];
+ ИмяПодчиненногоОМ = ЧастиИмени[3];
+
+ Если ВРег(КлассПодчиненногоОМ) = "ПЕРЕРАСЧЕТ" Тогда
+ Менеджер = РегистрыРасчета[ИмяОМ].Перерасчеты;
+ ИмяОм = ИмяПодчиненногоОМ;
+
+ Иначе
+ Менеджер = Неопределено;
+ КонецЕсли;
+
+ Иначе
+ Менеджер = Неопределено;
+ КонецЕсли;
+
+ ИначеЕсли ВРег(КлассОМ) = "БИЗНЕСПРОЦЕСС" Тогда
+ Менеджер = БизнесПроцессы;
+
+ ИначеЕсли ВРег(КлассОМ) = "ЗАДАЧА" Тогда
+ Менеджер = Задачи;
+
+ ИначеЕсли ВРег(КлассОМ) = "КОНСТАНТА" Тогда
+ Менеджер = Константы;
+
+ ИначеЕсли ВРег(КлассОМ) = "ПОСЛЕДОВАТЕЛЬНОСТЬ" Тогда
+ Менеджер = Последовательности;
+
+ Иначе
+ Менеджер = Неопределено;
+ КонецЕсли;
+
+ Если Менеджер = Неопределено Тогда
+ ПроверитьОбъектМетаданныхСуществует(ПолноеИмя);
+ ВызватьИсключение пбп_СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
+ НСтр("ru = 'Объект метаданных ""%1"" не имеет менеджера объекта.';
+ |en = 'Metadata object %1 has no object manager.'"), ПолноеИмя);
+ КонецЕсли;
+
+ Попытка
+ Возврат Менеджер[ИмяОМ];
+ Исключение
+ ПроверитьОбъектМетаданныхСуществует(ПолноеИмя);
+ ВызватьИсключение;
+ КонецПопытки;
+
+КонецФункции
+
#КонецОбласти
#Область ПользовательскиеФункции
@@ -2383,6 +2501,25 @@
#КонецОбласти
+#Область Метаданные
+
+// Аналог метода БСП.
+//
+// Параметры:
+// ПолноеИмя - Строка - Полное имя объекта метаданных.
+//
+Процедура ПроверитьОбъектМетаданныхСуществует(ПолноеИмя)
+
+ Если ОбъектМетаданныхПоПолномуИмени(ПолноеИмя) = Неопределено Тогда
+ ВызватьИсключение пбп_СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
+ НСтр("ru = 'Неизвестный тип объекта метаданных ""%1"".';
+ |en = 'Unknown metadata object type: ""%1"".'"), ПолноеИмя);
+ КонецЕсли;
+
+КонецПроцедуры
+
+#КонецОбласти
+
#КонецОбласти
#Область ПользовательскиеФункции
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
index 080dc6b4..38bccb98 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
@@ -148,6 +148,14 @@
#КонецОбласти
+// См. пбп_ОбщегоНазначенияСервер.МенеджерОбъектаПоПолномуИмени.
+Функция МенеджерОбъектаПоПолномуИмени(ПолноеИмя) Экспорт
+
+ Модуль = ПолучитьМодуль();
+ Возврат Модуль.МенеджерОбъектаПоПолномуИмени(ПолноеИмя);
+
+КонецФункции
+
#КонецОбласти
#КонецОбласти
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Ext/Module.bsl"
index 3678234e..8d618810 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217/Ext/Module.bsl"
@@ -20,38 +20,60 @@
#Область ПрограммныйИнтерфейс
-Процедура ИнициализироватьПредопределенныеЗначения() Экспорт
-
- ТЗПредопределенныхЗначений = пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначения();
+// Инициализирует предопределенные значения из таблицы.
+//
+// Параметры:
+// МенеджерОбъекта - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
+//
+Процедура ИнициализироватьПредопределенныеЗначения(МенеджерОбъекта) Экспорт
- ТЗПредопределенныхЗначенийКСозданию = ПредопределенныеЗначенияКСозданию(ТЗПредопределенныхЗначений);
+ ТипЗначения = ТипЗнч(МенеджерОбъекта);
+ Если ТипЗначения = Тип("ПланВидовХарактеристикМенеджер.пбп_ПредопределенныеЗначения") Тогда
+ ТЗПредопределенныхЗначений = пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначения();
+ ИначеЕсли ТипЗначения = Тип("СправочникМенеджер.пбп_ИнтегрируемыеСистемы") Тогда
+ ТЗПредопределенныхЗначений =
+ пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначенияИнтегрируемыеСистемы();
+ ИначеЕсли ТипЗначения = Тип("СправочникМенеджер.пбп_МетодыИнтеграции") Тогда
+ ТЗПредопределенныхЗначений = пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначенияМетодыИнтеграции();
+ ИначеЕсли ТипЗначения = Тип("СправочникМенеджер.пбп_НастройкиИнтеграции") Тогда
+ ТЗПредопределенныхЗначений =
+ пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначенияНастройкиИнтеграции();
+ ИначеЕсли ТипЗначения = Тип("СправочникМенеджер.пбп_ТипСоответствияОбъектовИБ") Тогда
+ ТЗПредопределенныхЗначений =
+ пбп_ПредопределенныеЗначенияПереопределяемый.ПредопределенныеЗначенияТипСоответствияОбъектовИБ();
+ Иначе
+ Возврат;
+ КонецЕсли;
- СоздатьПредопределенныеЗначения(
- ТЗПредопределенныхЗначенийКСозданию,
- ПланыВидовХарактеристик.пбп_ПредопределенныеЗначения);
+ ОбработатьПредопределенныеЗначения(ТЗПредопределенныхЗначений, МенеджерОбъекта);
КонецПроцедуры
// Создание предопределенных значений на основании заполненной таблицы
//
// Параметры:
-// Таблица - ТаблицаЗначений - см. пбп_ПредопределенныеЗначенияПереопределяемыйТаблицаПредопределенных,
+// ТаблицаПредопределенных - ТаблицаЗначений - см. пбп_ПредопределенныеЗначенияПереопределяемыйТаблицаПредопределенных,
// пбп_ТипСоответствияОбъектовИБПереопределяемый.ТаблицаПредопределенных
-// МенеджерОбъекта - СправочникМенеджер, ДокументМенеджер, ОбработкаМенеджер, РегистрСведенийМенеджер - менеджер объекта.
+// МенеджерОбъекта - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
+// ПолноеИмяОбъекта - Строка - Полное имя объекта метаданных.
//
-Процедура СоздатьПредопределенныеЗначения(Таблица, МенеджерОбъекта) Экспорт
+Процедура СоздатьОбновитьПредопределенныеЗначения(ТаблицаПредопределенных, МенеджерОбъекта, ПолноеИмяОбъекта = "") Экспорт
- Если Не ЗначениеЗаполнено(Таблица) Тогда
+ Если Не ЗначениеЗаполнено(ТаблицаПредопределенных) Тогда
Возврат;
КонецЕсли;
+ Если ПустаяСтрока(ПолноеИмяОбъекта) Тогда
+ ПолноеИмяОбъекта = ПолноеИмяОбъектаПоУмолчанию();
+ КонецЕсли;
+
Группы = Новый Соответствие;
- КолонкаСуществует = Таблица.Колонки.Найти("ЭтоГруппа") <> Неопределено;
+ КолонкаСуществует = ТаблицаПредопределенных.Колонки.Найти("ЭтоГруппа") <> Неопределено;
Если КолонкаСуществует Тогда
// Сначала создаются группы, затем элементы
- Таблица.Сортировать("ЭтоГруппа УБЫВ, УровеньИерархии");
+ ТаблицаПредопределенных.Сортировать("ЭтоГруппа УБЫВ, УровеньИерархии");
ТекстЗапроса =
"ВЫБРАТЬ
@@ -62,10 +84,8 @@
|ГДЕ
| пбп_ПредопределенныеЗначения.ЭтоГруппа";
- ПолноеИмяОМ = Метаданные.НайтиПоТипу(ТипЗнч(МенеджерОбъекта)).ПолноеИмя();
-
Запрос = Новый Запрос;
- Запрос.Текст = СтрШаблон(ТекстЗапроса, ПолноеИмяОМ);
+ Запрос.Текст = СтрШаблон(ТекстЗапроса, ПолноеИмяОбъекта);
ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
@@ -74,56 +94,150 @@
КонецЦикла;
КонецЕсли;
- Для Каждого СтрокаТаблицы Из Таблица Цикл
- Если КолонкаСуществует И СтрокаТаблицы.ЭтоГруппа Тогда
- СоздатьПредопределеннуюГруппу(МенеджерОбъекта, СтрокаТаблицы, Группы);
+ Для Каждого СтрокаТаблицы Из ТаблицаПредопределенных Цикл
+ Если СтрокаТаблицы.Служеб_ОбновитьРасположениеЭлемента Тогда
+ ОбновитьПредопределенныйЭлемент(МенеджерОбъекта, СтрокаТаблицы, Группы);
Иначе
- СоздатьПредопределенныйЭлемент(МенеджерОбъекта, СтрокаТаблицы, Группы, КолонкаСуществует);
+ Если КолонкаСуществует И СтрокаТаблицы.ЭтоГруппа Тогда
+ СоздатьПредопределеннуюГруппу(МенеджерОбъекта, СтрокаТаблицы, Группы);
+ Иначе
+ СоздатьПредопределенныйЭлемент(МенеджерОбъекта, СтрокаТаблицы, Группы, КолонкаСуществует);
+ КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
+// Получает все предопределенные элементы объекта, помечает на удаление те, которые удалены из кода.
+// При установке пометки удаления для групп, также устанавливается для всех подчиенных элементов.
+//
+// Параметры:
+// ТаблицаПредопределенных - ТаблицаЗначений - см. пбп_ПредопределенныеЗначенияПереопределяемыйТаблицаПредопределенных,
+// пбп_ТипСоответствияОбъектовИБПереопределяемый.ТаблицаПредопределенных.
+// ПолноеИмяОбъекта - Строка - Полное имя объекта метаданных.
+//
+Процедура ОбработатьНеиспользуемыеЭлементы(ТаблицаПредопределенных, ПолноеИмяОбъекта = "") Экспорт
+
+ Если ПустаяСтрока(ПолноеИмяОбъекта) Тогда
+ ПолноеИмяОбъекта = ПолноеИмяОбъектаПоУмолчанию();
+ КонецЕсли;
+
+ ТаблицаПредопределенных.Индексы.Добавить("ИдентификаторНастройки");
+
+ Запрос = Новый Запрос;
+ ТекстЗапроса =
+ "ВЫБРАТЬ
+ | пбп_ПредопределенныеЗначения.Ссылка КАК Ссылка,
+ | пбп_ПредопределенныеЗначения.ИдентификаторНастройки КАК ИдентификаторНастройки
+ |ИЗ
+ | %1 КАК пбп_ПредопределенныеЗначения
+ |ГДЕ
+ | НЕ пбп_ПредопределенныеЗначения.ПометкаУдаления
+ |
+ |УПОРЯДОЧИТЬ ПО
+ | Ссылка
+ |ИТОГИ ПО
+ | Ссылка ИЕРАРХИЯ";
+
+ Запрос.Текст = СтрШаблон(ТекстЗапроса, ПолноеИмяОбъекта);
+
+ Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
+
+ ПометитьНаУдалениеВсеВложения(Выборка, ТаблицаПредопределенных);
+
+КонецПроцедуры
+
+// Подготавливает параметры необходимые для обработки предопределенных элементов
+//
+// Параметры:
+// МенеджерОбъекта - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
+//
+// Возвращаемое значение:
+// Структура - Данные Менеджера объекта
+// * Менеджер - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
+// * ПолноеИмя - Строка - Полное имя объекта метаданных.
+//
+Функция ПараметрыМенеджераОбъекта(МенеджерОбъекта) Экспорт
+
+ Параметры = Новый Структура;
+ Параметры.Вставить("Менеджер", МенеджерОбъекта);
+ Параметры.Вставить("ПолноеИмя", Метаданные.НайтиПоТипу(ТипЗнч(МенеджерОбъекта)).ПолноеИмя());
+
+ Возврат Параметры;
+
+КонецФункции
+
+// Обрабатывает таблицу предопределенных элементов. Операции включают в себя: установка пометок удаления
+// на неиспользуемые элементы, отбор предопределенных значений, создание предопределенных элементов.
+//
+// Параметры:
+// ТаблицаПредопределенных - ТаблицаЗначений - см. пбп_ПредопределенныеЗначенияПереопределяемыйТаблицаПредопределенных,
+// пбп_ТипСоответствияОбъектовИБПереопределяемый.ТаблицаПредопределенных.
+// МенеджерОбъекта - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта.
+//
+Процедура ОбработатьПредопределенныеЗначения(ТаблицаПредопределенных, МенеджерОбъекта) Экспорт
+
+ Параметры = ПараметрыМенеджераОбъекта(МенеджерОбъекта);
+
+ ОбработатьНеиспользуемыеЭлементы(ТаблицаПредопределенных, Параметры.ПолноеИмя);
+ УдалитьИзТаблицыСуществующиеЭлементы(ТаблицаПредопределенных, Параметры.ПолноеИмя);
+ СоздатьОбновитьПредопределенныеЗначения(ТаблицаПредопределенных, Параметры.Менеджер, Параметры.ПолноеИмя);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
-Функция ПредопределенныеЗначенияКСозданию(ТЗПредопределенныхЗначений, ПутьПоиска = "ПланВидовХарактеристик.пбп_ПредопределенныеЗначения") Экспорт
-
- ИдентификаторыНастроек = ТЗПредопределенныхЗначений.ВыгрузитьКолонку("ИдентификаторНастройки");
+Процедура УдалитьИзТаблицыСуществующиеЭлементы(ТаблицаПредопределенных, ПолноеИмяОбъекта = "") Экспорт
+
+ Если Не ЗначениеЗаполнено(ТаблицаПредопределенных) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если ПустаяСтрока(ПолноеИмяОбъекта) Тогда
+ ПолноеИмяОбъекта = ПолноеИмяОбъектаПоУмолчанию();
+ КонецЕсли;
+
+ ИдентификаторыНастроек = ТаблицаПредопределенных.ВыгрузитьКолонку("ИдентификаторНастройки");
Запрос = Новый Запрос;
ТекстЗапроса =
"ВЫБРАТЬ
- | пбп_ПредопределенныеЗначения.ИдентификаторНастройки КАК ИдентификаторНастройки
+ | пбп_ПредопределенныеЗначения.Ссылка КАК Ссылка,
+ | пбп_ПредопределенныеЗначения.ИдентификаторНастройки КАК ИдентификаторНастройки,
+ | ЕСТЬNULL(Родители.ИдентификаторНастройки, """") КАК ИдентификаторНастройкиРодитель
|ИЗ
| %1 КАК пбп_ПредопределенныеЗначения
+ | ЛЕВОЕ СОЕДИНЕНИЕ %1 КАК Родители
+ | ПО пбп_ПредопределенныеЗначения.Родитель = Родители.Ссылка
|ГДЕ
- | пбп_ПредопределенныеЗначения.ИдентификаторНастройки В (&СписокИдентификаторов)";
+ | пбп_ПредопределенныеЗначения.ИдентификаторНастройки В(&СписокИдентификаторов)";
- Запрос.Текст = СтрШаблон(ТекстЗапроса, ПутьПоиска);
+ Запрос.Текст = СтрШаблон(ТекстЗапроса, ПолноеИмяОбъекта);
Запрос.УстановитьПараметр("СписокИдентификаторов", ИдентификаторыНастроек);
- РезультатЗапроса = Запрос.Выполнить();
-
- ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
+ ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
СтрокиДляУдаления = Новый Массив;
- Для Каждого Строка Из ТЗПредопределенныхЗначений Цикл
+ Для Каждого Строка Из ТаблицаПредопределенных Цикл
ВыборкаДетальныеЗаписи.Сбросить();
Если ВыборкаДетальныеЗаписи.НайтиСледующий(Строка.ИдентификаторНастройки, "ИдентификаторНастройки") Тогда
- СтрокиДляУдаления.Добавить(Строка);
+ Если ВыборкаДетальныеЗаписи.ИдентификаторНастройкиРодитель = Строка.Родитель Тогда
+ СтрокиДляУдаления.Добавить(Строка);
+ Иначе
+ Строка.Служеб_СсылкаНаПредопределенныйЭлемент = ВыборкаДетальныеЗаписи.Ссылка;
+ Строка.Служеб_ОбновитьРасположениеЭлемента = Истина;
+ КонецЕсли;
КонецЕсли;
КонецЦикла;
Для Каждого Строка Из СтрокиДляУдаления Цикл
- ТЗПредопределенныхЗначений.Удалить(Строка);
+ ТаблицаПредопределенных.Удалить(Строка);
КонецЦикла;
- Возврат ТЗПредопределенныхЗначений;
-
-КонецФункции
+КонецПроцедуры
Процедура СоздатьПредопределеннуюГруппу(МенеджерОбъекта, СтрокаТаблицы, Группы)
@@ -146,8 +260,6 @@
Процедура СоздатьПредопределенныйЭлемент(МенеджерОбъекта, СтрокаТаблицы, Родители, ЗаполнитьРодителя = Ложь)
- ПроверяемыйТип = ТипЗнч(МенеджерОбъекта);
-
НовыйЭлемент = МенеджерОбъекта.СоздатьЭлемент();
ЗаполнитьЗначенияСвойств(НовыйЭлемент, СтрокаТаблицы);
Если ЗаполнитьРодителя И ЗначениеЗаполнено(СтрокаТаблицы.Родитель) Тогда
@@ -156,6 +268,7 @@
КонецЕсли;
// инициализация значения по умолчанию
+ ПроверяемыйТип = ТипЗнч(МенеджерОбъекта);
Если ПроверяемыйТип = Тип("ПланВидовХарактеристикМенеджер.пбп_ПредопределенныеЗначения") Тогда
НовыйЭлемент.Значение = СтрокаТаблицы.ТипЗначения.ПривестиЗначение();
КонецЕсли;
@@ -168,4 +281,80 @@
КонецПроцедуры
+Процедура ОбновитьПредопределенныйЭлемент(МенеджерОбъекта, СтрокаТаблицы, Родители)
+
+ Если Не ЗначениеЗаполнено(СтрокаТаблицы.Служеб_СсылкаНаПредопределенныйЭлемент) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Элемент = СтрокаТаблицы.Служеб_СсылкаНаПредопределенныйЭлемент.ПолучитьОбъект();
+ Элемент.Родитель = Родители[СтрокаТаблицы.Родитель];
+
+ Попытка
+ Элемент.Записать();
+ СообщитьОбИзмененииРасположенияЭлемента(Элемент);
+ Исключение
+ пбп_ОбщегоНазначенияСлужебный.СообщитьПользователю(ОписаниеОшибки());
+ КонецПопытки;
+
+КонецПроцедуры
+
+Процедура ПометитьНаУдалениеВсеВложения(ИерархическаяВыборка, ТаблицаАктуальныхЭлементов)
+
+ Пока ИерархическаяВыборка.Следующий() Цикл
+
+ Строка = ТаблицаАктуальныхЭлементов.Найти(ИерархическаяВыборка.ИдентификаторНастройки, "ИдентификаторНастройки");
+ Если Строка = Неопределено Тогда
+ Элемент = ИерархическаяВыборка.Ссылка.ПолучитьОбъект();
+ Элемент.УстановитьПометкуУдаления(Истина, Истина);
+ СообщитьОПомеченномНаУдалениеЭлементе(Элемент);
+ Продолжить;
+ КонецЕсли;
+
+ СпособВыборки = ОбходРезультатаЗапроса.ПоГруппировкамСИерархией;
+
+ Если ИерархическаяВыборка.ТипЗаписи() = ТипЗаписиЗапроса.ИтогПоИерархии Тогда
+ ДочерняяВыборка = ИерархическаяВыборка.Выбрать(СпособВыборки, ИерархическаяВыборка.Группировка());
+ Иначе
+ ДочерняяВыборка = ИерархическаяВыборка.Выбрать(СпособВыборки);
+ КонецЕсли;
+
+ ПометитьНаУдалениеВсеВложения(ДочерняяВыборка, ТаблицаАктуальныхЭлементов);
+
+ КонецЦикла;
+
+КонецПроцедуры
+
+Функция ПолноеИмяОбъектаПоУмолчанию()
+ Возврат "ПланВидовХарактеристик.пбп_ПредопределенныеЗначения";
+КонецФункции
+
+Процедура СообщитьОПомеченномНаУдалениеЭлементе(Элемент)
+
+ ТекстСообщения = НСтр("ru = 'Элемент ''%1'' помечен на удаление';
+ |en = 'The item ''%1'' is marked for deletion'");
+ Если ЗначениеЗаполнено(Элемент.Родитель) Тогда
+ ТекстСообщения = ТекстСообщения + НСтр("ru = ', включая все его подчиненные элементы.';
+ |en = ', including all its subordinate items.'");
+ КонецЕсли;
+ ТекстСообщения = пбп_СтроковыеФункцииСлужебныйКлиентСервер.ПодставитьПараметрыВСтроку(
+ ТекстСообщения,
+ Элемент.Ссылка);
+ пбп_ОбщегоНазначенияСлужебный.СообщитьПользователю(ТекстСообщения, Элемент);
+
+КонецПроцедуры
+
+Процедура СообщитьОбИзмененииРасположенияЭлемента(Элемент)
+
+ ТекстСообщения = НСтр("ru = 'Расположение элемента ''%1'' изменено. Текущее положение: ''%2''';
+ |en = 'The location of element ''%1'' has changed. Current position: ''%2'''");
+ Родитель = ?(ЗначениеЗаполнено(Элемент.Родитель), Элемент.Родитель, НСтр("ru = '''<корень>'''; en = ''''''"));
+ ТекстСообщения = пбп_СтроковыеФункцииСлужебныйКлиентСервер.ПодставитьПараметрыВСтроку(
+ ТекстСообщения,
+ Элемент.Ссылка,
+ Родитель);
+ пбп_ОбщегоНазначенияСлужебный.СообщитьПользователю(ТекстСообщения, Элемент);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
index 72e99da0..6428222e 100644
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
+++ "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\237\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\320\265\320\227\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
@@ -1,6 +1,12 @@
#Область ПрограммныйИнтерфейс
+// Возвращает таблицу предопределенных элементов справочника
+// ПланыВидовХарактеристикСсылка.пбп_ПредопределенныеЗначения.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений - Таблица заполненная предопределенными элементами.
+//
Функция ПредопределенныеЗначения() Экспорт
Результат = ТаблицаПредопределенных();
@@ -62,15 +68,100 @@
КонецФункции
+// Возвращает таблицу предопределенных элементов справочника СправочникСсылка.пбп_ИнтегрируемыеСистемы.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений - Таблица заполненная предопределенными элементами.
+//
+Функция ПредопределенныеЗначенияИнтегрируемыеСистемы() Экспорт
+
+ Результат = ТаблицаПредопределенныхИнтегрируемыеСистемы();
+
+ // Добавление
+ НоваяСистема = Результат.Добавить();
+ НоваяСистема.Наименование = "Система N";
+ НоваяСистема.ИдентификаторНастройки = "СистемаN";
+ // КонецДобавления
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращает таблицу предопределенных элементов справочника СправочникСсылка.пбп_МетодыИнтеграции.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений - Таблица заполненная предопределенными элементами.
+//
+Функция ПредопределенныеЗначенияМетодыИнтеграции() Экспорт
+
+ Результат = ТаблицаПредопределенныхМетодыИнтеграции();
+
+ // Добавление
+ НовыйМетод = Результат.Добавить();
+ НовыйМетод.Наименование = "Метод интеграции системы N";
+ НовыйМетод.ИдентификаторНастройки = "МетодИнтеграцииСистемыN";
+ // КонецДобавления
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращает таблицу предопределенных элементов справочника СправочникСсылка.пбп_НастройкиИнтеграции.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений - Таблица заполненная предопределенными элементами.
+//
+Функция ПредопределенныеЗначенияНастройкиИнтеграции() Экспорт
+
+ Результат = ТаблицаПредопределенныхНастройкиИнтеграции();
+
+ // Добавление
+ НоваяНастройка = Результат.Добавить();
+ НоваяНастройка.Наименование = "Интеграция с системой N";
+ НоваяНастройка.ИдентификаторНастройки = "ИнтеграцияССистемойN";
+ // КонецДобавления
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращает таблицу предопределенных элементов справочника СправочникСсылка.пбп_ТипСоответствияОбъектовИБ.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений - Таблица заполненная предопределенными элементами.
+//
+Функция ПредопределенныеЗначенияТипСоответствияОбъектовИБ() Экспорт
+
+ Результат = ТаблицаПредопределенныхТипСоответствияОбъектовИБ();
+
+ // Добавление
+ НоваяНастройка = Результат.Добавить();
+ НоваяНастройка.Наименование = "Тест";
+ НоваяНастройка.ИдентификаторНастройки = "Тест";
+ // КонецДобавления
+
+ Возврат Результат;
+
+КонецФункции
+
+// Добавляет общие колонки таблицы предопределенных значений.
+//
+// Параметры:
+// Таблица - ТаблицаЗначений - Таблица для заполнения предопределенными.
+//
Процедура ОбщиеКолонкиТаблицыПредопределенныхЗначений(Таблица) Экспорт
ОписаниеСтрока = Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(150));
+ ОписаниеБулево = Новый ОписаниеТипов("Булево");
Таблица.Колонки.Добавить("ИдентификаторНастройки", ОписаниеСтрока);
Таблица.Колонки.Добавить("Наименование", ОписаниеСтрока);
- Таблица.Колонки.Добавить("ЭтоГруппа", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("ЭтоГруппа", ОписаниеБулево);
Таблица.Колонки.Добавить("Родитель", ОписаниеСтрока);
Таблица.Колонки.Добавить("УровеньИерархии", Новый ОписаниеТипов("Число",,,Новый КвалификаторыЧисла(2,0)));
+ // Служебные колонки
+ Таблица.Колонки.Добавить("Служеб_ОбновитьРасположениеЭлемента", ОписаниеБулево);
+ Таблица.Колонки.Добавить("Служеб_СсылкаНаПредопределенныйЭлемент", Неопределено);
КонецПроцедуры
@@ -80,10 +171,10 @@
Функция ТаблицаПредопределенных()
- Результат = Новый ТаблицаЗначений;
-
ОписаниеБулево = Новый ОписаниеТипов("Булево");
+ Результат = Новый ТаблицаЗначений;
+
ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
Результат.Колонки.Добавить("Пароль", ОписаниеБулево);
@@ -94,4 +185,44 @@
КонецФункции
+Функция ТаблицаПредопределенныхИнтегрируемыеСистемы()
+
+ Результат = Новый ТаблицаЗначений;
+
+ ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
+
+ Возврат Результат;
+
+КонецФункции
+
+Функция ТаблицаПредопределенныхМетодыИнтеграции()
+
+ Результат = Новый ТаблицаЗначений;
+
+ ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
+
+ Возврат Результат;
+
+КонецФункции
+
+Функция ТаблицаПредопределенныхНастройкиИнтеграции()
+
+ Результат = Новый ТаблицаЗначений;
+
+ ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
+
+ Возврат Результат;
+
+КонецФункции
+
+Функция ТаблицаПредопределенныхТипСоответствияОбъектовИБ()
+
+ Результат = Новый ТаблицаЗначений;
+
+ ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
+
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml"
deleted file mode 100644
index b8ec3414..00000000
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271.xml"
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
- пбп_ТипСоответствияОбъектовИБПереопределяемый
-
-
- ru
- Тип соответствия объектов ИБПереопределяемый
-
-
- en
- IB object compliance type Overridden
-
-
-
- false
- false
- true
- true
- false
- false
- false
- DontUse
-
-
-
\ No newline at end of file
diff --git "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl" "b/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
deleted file mode 100644
index 8c7dab16..00000000
--- "a/src/cf/CommonModules/\320\277\320\261\320\277_\320\242\320\270\320\277\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221\320\237\320\265\321\200\320\265\320\276\320\277\321\200\320\265\320\264\320\265\320\273\321\217\320\265\320\274\321\213\320\271/Ext/Module.bsl"
+++ /dev/null
@@ -1,55 +0,0 @@
-// Библиотека проектных подсистем для упрощения разработки архитектуры на 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/
-//
-
-#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
-
-#Область ПрограммныйИнтерфейс
-
-Функция ПредопределенныеЗначения() Экспорт
-
- Результат = ТаблицаПредопределенных();
-
- // Добавление
- НоваяНастройка = Результат.Добавить();
- НоваяНастройка.Наименование = "Тест";
- НоваяНастройка.ИдентификаторНастройки = "Тест";
- // КонецДобавления
-
- Возврат Результат;
-
-КонецФункции
-
-#КонецОбласти
-
-#Область СлужебныеПроцедурыИФункции
-
-Функция ТаблицаПредопределенных()
-
- Результат = Новый ТаблицаЗначений;
-
- пбп_ПредопределенныеЗначенияПереопределяемый.ОбщиеКолонкиТаблицыПредопределенныхЗначений(Результат);
-
- Возврат Результат;
-
-КонецФункции
-
-#КонецОбласти
-
-#КонецЕсли
\ No newline at end of file
diff --git a/src/cf/Configuration.xml b/src/cf/Configuration.xml
index 0524e335..8b0d4664 100644
--- a/src/cf/Configuration.xml
+++ b/src/cf/Configuration.xml
@@ -57,7 +57,7 @@
Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок
Первый БИТ
- 1.0.1.2
+ 1.0.1.3
false
false
@@ -271,7 +271,6 @@
пбп_ЖурналРегистрацииСлужебный
пбп_ЗагрузкаФайлаЧерезТабличныйДокументВызовСервера
пбп_ЗагрузкаФайлаЧерезТабличныйДокументКлиент
- пбп_ИнтеграцииПереопределяемый
пбп_ИнтеграцииСервер
пбп_КоннекторHTTP
пбп_МетодыРегламентныхЗаданийСервер
@@ -313,7 +312,6 @@
пбп_СтроковыеФункцииКлиентСервер
пбп_СтроковыеФункцииСлужебныйКлиентСервер
пбп_СхемыЗапросов
- пбп_ТипСоответствияОбъектовИБПереопределяемый
пбп_ДокументыОбработкаЗаполнения
пбп_ДокументыОбработкаПроведения
пбп_ДокументыОбработкаПроверкиЗаполнения
diff --git "a/src/cf/Subsystems/\320\277\320\261\320\277_\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\320\265\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221.xml" "b/src/cf/Subsystems/\320\277\320\261\320\277_\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\320\265\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221.xml"
index b0349d0b..ae2c0c8c 100644
--- "a/src/cf/Subsystems/\320\277\320\261\320\277_\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\320\265\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221.xml"
+++ "b/src/cf/Subsystems/\320\277\320\261\320\277_\320\241\320\276\320\276\321\202\320\262\320\265\321\202\321\201\321\202\320\262\320\270\320\265\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\230\320\221.xml"
@@ -26,7 +26,6 @@
Role.пбп_РедактированиеРегистраСведенийСоответствияОбъектовИБ
Role.пбп_ЧтениеРегистраСведенийСоответствияОбъектовИБ
DefinedType.пбп_ТипыОбъектовСоответствийИБ
- CommonModule.пбп_ТипСоответствияОбъектовИБПереопределяемый
Catalog.пбп_ТипСоответствияОбъектовИБ
CommonModule.пбп_ПредопределенныеЗначения
Role.пбп_ЧтениеТиповСоответствияОбъектовИБ
diff --git "a/src/cf/Subsystems/\320\277\320\261\320\277_\320\243\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.xml" "b/src/cf/Subsystems/\320\277\320\261\320\277_\320\243\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.xml"
index 305c97dd..ba4e621c 100644
--- "a/src/cf/Subsystems/\320\277\320\261\320\277_\320\243\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.xml"
+++ "b/src/cf/Subsystems/\320\277\320\261\320\277_\320\243\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\320\265\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.xml"
@@ -38,7 +38,6 @@
CommonTemplate.пбп_XMLEditor
CommonModule.пбп_КоннекторHTTP
Enum.пбп_ТипыJSON
- CommonModule.пбп_ИнтеграцииПереопределяемый