This commit is contained in:
Компания 1С committed 2013-07-16 11:00:00 +03:00
1 parent b4c3b3c785
commit 7cd5f8b7ba
370 files changed
+22952 -27981

No files matched your search

@@ -9,14 +9,19 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Параметры.Свойство("Владелец") Тогда Если Параметры.Свойство("Владелец")
Если ТипЗнч(Параметры.Владелец) = Тип("ПланВидовХарактеристикСсылка.ВопросыДляАнкетирования") Тогда И ТипЗнч(Параметры.Владелец) = Тип("ПланВидовХарактеристикСсылка.ВопросыДляАнкетирования")
Если НЕ Параметры.Владелец.Пустая() Тогда И НЕ Параметры.Владелец.Пустая() Тогда
Объект.Владелец = Параметры.Владелец; Объект.Владелец = Параметры.Владелец;
КонецЕсли; Иначе
КонецЕсли;
ТекстСообщения = НСтр("ru = 'Данная форма предназначена для открытия только из формы элемента плана вида характеристик ""Вопросы для анкетирования""'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
Отказ = Истина;
Возврат;
КонецЕсли; КонецЕсли;
Если Параметры.Свойство("ТипОтвета") Тогда Если Параметры.Свойство("ТипОтвета") Тогда
@@ -22,8 +22,13 @@
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
Если РезультатВыполнения <> Неопределено Тогда Если РезультатВыполнения <> Неопределено Тогда
Если РезультатВыполнения.Свойство("Отказ") И РезультатВыполнения.Отказ = Истина Тогда
Отказ = Истина;
ПоказатьРезультатВыполнения();
Иначе
ПодключитьОбработчикОжидания("ПоказатьРезультатВыполнения", 0.2, Истина); ПодключитьОбработчикОжидания("ПоказатьРезультатВыполнения", 0.2, Истина);
КонецЕсли; КонецЕсли;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@@ -168,7 +173,7 @@
РезультатВыполнения = Новый Структура; РезультатВыполнения = Новый Структура;
РезультатВыполнения.Вставить("ВыводСообщения", Новый Структура("Использование, Текст, ПутьКРеквизитуФормы", Истина)); РезультатВыполнения.Вставить("ВыводСообщения", Новый Структура("Использование, Текст, ПутьКРеквизитуФормы", Истина));
РезультатВыполнения.ВыводСообщения.Текст = НСтр("ru = 'Необходимо добавить указать варианты отчетов'"); РезультатВыполнения.ВыводСообщения.Текст = НСтр("ru = 'Необходимо добавить указать варианты отчетов'");
РезультатВыполнения.ВыводСообщения.ПутьКРеквизитуФормы = "ИзменяемыеВарианты"; РезультатВыполнения.ВыводСообщения.ПутьКРеквизитуФормы = "";
РезультатВыполнения = Новый ФиксированнаяСтруктура(РезультатВыполнения); РезультатВыполнения = Новый ФиксированнаяСтруктура(РезультатВыполнения);
Элементы.ДеревоПодсистем.Доступность = Ложь; Элементы.ДеревоПодсистем.Доступность = Ложь;
Возврат; Возврат;
@@ -309,20 +314,26 @@
КонецЦикла; КонецЦикла;
КоличествоВариантов = ИзменяемыеВарианты.Количество(); КоличествоВариантов = ИзменяемыеВарианты.Количество();
РезультатВыполнения = Новый Структура;
Если КоличествоВариантов = 0 Тогда Если КоличествоВариантов = 0 Тогда
ТекстСообщения = НСтр("ru = 'После проверки все варианты отчетов были исключены из списка выбранных. ТекстСообщения = НСтр("ru = 'Нет прав для размещения в разделах выбранных вариантов отчетов.'");
|Необходимо заполнить поле ""Варианты отчетов"".'");
Элементы.ДеревоПодсистем.Доступность = Ложь; Элементы.ДеревоПодсистем.Доступность = Ложь;
РезультатВыполнения.Вставить("Отказ", Истина);
Иначе Иначе
ТекстСообщения = СтрЗаменить( ТекстСообщения = НСтр("ru = 'Нет прав для размещения в разделах некоторых вариантов отчетов (%1).'");
НСтр("ru = 'После проверки варианты отчетов (%1 шт.) были исключены из списка выбранных.'"), ТекстСообщения = СтрЗаменить(ТекстСообщения, "%1", Формат(КоличествоОшибок, "ЧГ="));
"%1",
Формат(КоличествоОшибок, "ЧГ="));
Элементы.ДеревоПодсистем.Доступность = Истина; Элементы.ДеревоПодсистем.Доступность = Истина;
КонецЕсли; КонецЕсли;
РезультатВыполнения.Вставить("ВыводПредупреждения", ВыводПредупреждения = Новый Структура;
Новый Структура("Использование, Текст, ПутьКРеквизитуФормы, ТекстОшибок", Истина, ТекстСообщения, "ИзменяемыеВарианты", ТекстОшибок)); ВыводПредупреждения.Вставить("Использование", Истина);
ВыводПредупреждения.Вставить("Текст", ТекстСообщения);
ВыводПредупреждения.Вставить("ПутьКРеквизитуФормы", "");
ВыводПредупреждения.Вставить("ТекстОшибок", ТекстОшибок);
РезультатВыполнения.Вставить("ВыводПредупреждения", ВыводПредупреждения);
РезультатВыполнения = Новый ФиксированнаяСтруктура(РезультатВыполнения); РезультатВыполнения = Новый ФиксированнаяСтруктура(РезультатВыполнения);
Иначе Иначе
Элементы.ДеревоПодсистем.Доступность = Истина; Элементы.ДеревоПодсистем.Доступность = Истина;
@@ -711,6 +711,7 @@
<initialTreeView>ExpandTopLevel</initialTreeView> <initialTreeView>ExpandTopLevel</initialTreeView>
<horizontalStretch>true</horizontalStretch> <horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch> <verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<enableDrag>true</enableDrag> <enableDrag>true</enableDrag>
<searchStringLocation>None</searchStringLocation> <searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation> <viewStatusLocation>None</viewStatusLocation>
@@ -66,6 +66,11 @@
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Дополнительный, НСтр("ru = 'Дополнительные'")); СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Дополнительный, НСтр("ru = 'Дополнительные'"));
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Внешний, НСтр("ru = 'Внешние'")); СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Внешний, НСтр("ru = 'Внешние'"));
Если Параметры.Отбор.Свойство("ТипОтчета", ОтборТипОтчета) Тогда
Список.Параметры.УстановитьЗначениеПараметра("ОтборТипОтчета", ОтборТипОтчета);
Параметры.Отбор.Удалить("ТипОтчета");
КонецЕсли;
ОтчетыПользователя = Новый ФиксированныйМассив(ВариантыОтчетов.ОтчетыТекущегоПользователя()); ОтчетыПользователя = Новый ФиксированныйМассив(ВариантыОтчетов.ОтчетыТекущегоПользователя());
ОтключенныеВариантыПрограммы = Новый ФиксированныйМассив(ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы()); ОтключенныеВариантыПрограммы = Новый ФиксированныйМассив(ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы());
@@ -354,7 +359,7 @@
// - варианты отчетов, доступные в этой подсистеме текущему пользователю. // - варианты отчетов, доступные в этой подсистеме текущему пользователю.
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ВариантыОтчетов.Ссылка, | ВариантыОтчетов.Ссылка,
| ПредопределенныеРазмещение.Подсистема | ПредопределенныеРазмещение.Подсистема
|ПОМЕСТИТЬ втПредопределенные |ПОМЕСТИТЬ втПредопределенные
@@ -368,7 +373,7 @@
|; |;
| |
|//////////////////////////////////////////////////////////////////////////////// |////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ |ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ВариантыРазмещение.Ссылка, | ВариантыРазмещение.Ссылка,
| ВариантыРазмещение.РазделИлиГруппа, | ВариантыРазмещение.РазделИлиГруппа,
| ВариантыРазмещение.Использование | ВариантыРазмещение.Использование
@@ -382,7 +387,7 @@
|; |;
| |
|//////////////////////////////////////////////////////////////////////////////// |////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ |ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
| ЕСТЬNULL(втПредопределенные.Ссылка, втВарианты.Ссылка) КАК Ссылка | ЕСТЬNULL(втПредопределенные.Ссылка, втВарианты.Ссылка) КАК Ссылка
|ИЗ |ИЗ
| втПредопределенные КАК втПредопределенные | втПредопределенные КАК втПредопределенные
@@ -1,3 +1,4 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ // ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
@@ -20,19 +21,25 @@
КонецЕсли; КонецЕсли;
Если ОбъектНаСервере.ЭтоНовый() Тогда Если ОбъектНаСервере.ЭтоНовый() Тогда
Объект.МожноИзменятьСпособРедактирования = Истина; Объект.МожноИзменятьСпособРедактирования = Истина;
Объект.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес; Объект.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
Иначе Иначе
Если ЭтоПредопределенный Тогда Если ЭтоПредопределенный Тогда
Элементы.Наименование.ТолькоПросмотр = Истина; Элементы.Наименование.ТолькоПросмотр = Истина;
Элементы.Родитель.ТолькоПросмотр = Истина; Элементы.Родитель.ТолькоПросмотр = Истина;
Элементы.Тип.ТолькоПросмотр = Истина; Элементы.Тип.ТолькоПросмотр = Истина;
Элементы.Подсказка.ТолькоПросмотр = Истина; Элементы.Подсказка.ТолькоПросмотр = Истина;
Иначе Иначе
Если Не ИспользуетсяЗапретРедактированияРеквизитов Тогда Если Не ИспользуетсяЗапретРедактированияРеквизитов Тогда
Элементы.Родитель.ТолькоПросмотр = Истина; Элементы.Родитель.ТолькоПросмотр = Истина;
Элементы.Тип.ТолькоПросмотр = Истина; Элементы.Тип.ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -42,9 +49,11 @@
Элементы.РазрешитьВводНесколькихЗначений.Доступность = ?(ОбъектНаСервере.Уровень() = 2, Ложь, Истина); Элементы.РазрешитьВводНесколькихЗначений.Доступность = ?(ОбъектНаСервере.Уровень() = 2, Ложь, Истина);
Если Не Объект.МожноИзменятьСпособРедактирования Тогда Если Не Объект.МожноИзменятьСпособРедактирования Тогда
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь; Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь; Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь;
Элементы.ГруппаНаименованиеНастройкиПоТипам.Доступность = Ложь; Элементы.ГруппаНаименованиеНастройкиПоТипам.Доступность = Ложь;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -52,7 +61,7 @@
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
ИзменитьОтображениеПриИзмененииТипа(); ПриИзмененииТип();
КонецПроцедуры КонецПроцедуры
@@ -69,8 +78,10 @@
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
Если Не ЭтоПредопределенный Тогда Если Не ЭтоПредопределенный Тогда
// Обработчик подсистемы запрета редактирования реквизитов объектов. // Обработчик подсистемы запрета редактирования реквизитов объектов.
УправлениеКонтактнойИнформацией.ПриБлокировкеРеквизитовОбъекта(ЭтаФорма); УправлениеКонтактнойИнформацией.ПриБлокировкеРеквизитовОбъекта(ЭтаФорма);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -88,30 +99,21 @@
&НаКлиенте &НаКлиенте
Процедура ТипПриИзменении(Элемент) Процедура ТипПриИзменении(Элемент)
ИзменитьРеквизитыПриИзмененииТипа(); ПриИзмененииТип();
ИзменитьОтображениеПриИзмененииТипа();
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура АдресТолькоРоссийскийПриИзменении(Элемент) Процедура АдресТолькоРоссийскийПриИзменении(Элемент)
ИзменитьРеквизитыПриИзмененииТолькоРоссии(); ПриИзмененииАдресТолькоРоссийский();
ИзменитьОтображениеПриИзмененииТолькоРоссии();
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПроверятьПоКлассификаторуПриИзменении(Элемент) Процедура ПроверятьПоКлассификаторуПриИзменении(Элемент)
ИзменитьРеквизитыПриИзмененииПроверятьКорректность(); ПриИзмененииПроверятьКорректность();
КонецПроцедуры
&НаКлиенте
Процедура ПроверятьКорректностьПриИзменении(Элемент)
ИзменитьРеквизитыПриИзмененииПроверятьКорректность();
КонецПроцедуры КонецПроцедуры
@@ -122,12 +124,16 @@
Процедура Подключаемый_РазрешитьРедактированиеРеквизитовОбъекта(Команда) Процедура Подключаемый_РазрешитьРедактированиеРеквизитовОбъекта(Команда)
Если Не ЭтоПредопределенный Тогда Если Не ЭтоПредопределенный Тогда
РедактированиеРазрешено = Ложь; РедактированиеРазрешено = Ложь;
УправлениеКонтактнойИнформациейКлиент.ПриРазрешенииРедактированияРеквизитовОбъекта(ЭтаФорма, РедактированиеРазрешено); УправлениеКонтактнойИнформациейКлиент.ПриРазрешенииРедактированияРеквизитовОбъекта(ЭтаФорма, РедактированиеРазрешено);
Если РедактированиеРазрешено Тогда Если РедактированиеРазрешено Тогда
УправлениеКонтактнойИнформациейКлиент.ПриУстановкеДоступностиЭлементовФормы(ЭтаФорма); УправлениеКонтактнойИнформациейКлиент.ПриУстановкеДоступностиЭлементовФормы(ЭтаФорма);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -136,75 +142,58 @@
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
&НаКлиенте &НаКлиенте
Процедура ИзменитьОтображениеПриИзмененииТипа() Процедура ПриИзмененииАдресТолькоРоссийский()
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Адрес;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
ИзменитьОтображениеПриИзмененииТолькоРоссии();
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.АдресЭлектроннойПочты;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
Иначе
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ИзменитьРеквизитыПриИзмененииТипа()
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда
ИзменитьРеквизитыПриИзмененииТолькоРоссии();
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Объект.РедактированиеТолькоВДиалоге = Ложь;
ИзменитьРеквизитыПриИзмененииПроверятьКорректность();
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
// Нет изменений
Иначе
Объект.РедактированиеТолькоВДиалоге = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ИзменитьОтображениеПриИзмененииТолькоРоссии()
Элементы.ПроверятьПоКлассификатору.Доступность = Объект.АдресТолькоРоссийский; Элементы.ПроверятьПоКлассификатору.Доступность = Объект.АдресТолькоРоссийский;
Элементы.СкрыватьНеактуальныеАдреса.Доступность = Объект.АдресТолькоРоссийский; Элементы.СкрыватьНеактуальныеАдреса.Доступность = Объект.АдресТолькоРоссийский;
КонецПроцедуры
&НаКлиенте
Процедура ИзменитьРеквизитыПриИзмененииТолькоРоссии()
Если Не Объект.АдресТолькоРоссийский Тогда Если Не Объект.АдресТолькоРоссийский Тогда
Объект.ПроверятьКорректность = Ложь; Объект.ПроверятьКорректность = Ложь;
Объект.СкрыватьНеактуальныеАдреса = Ложь; Объект.СкрыватьНеактуальныеАдреса = Ложь;
КонецЕсли; КонецЕсли;
ИзменитьРеквизитыПриИзмененииПроверятьКорректность(); ПриИзмененииПроверятьКорректность();
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ИзменитьРеквизитыПриИзмененииПроверятьКорректность() Процедура ПриИзмененииТип()
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Адрес;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
ПриИзмененииАдресТолькоРоссийский();
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.АдресЭлектроннойПочты;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Объект.РедактированиеТолькоВДиалоге = Ложь;
ПриИзмененииПроверятьКорректность();
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
Иначе
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Объект.РедактированиеТолькоВДиалоге = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПроверятьКорректностьПриИзменении(Элемент)
ПриИзмененииПроверятьКорректность();
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииПроверятьКорректность()
Объект.ЗапрещатьВводНекорректного = Объект.ПроверятьКорректность; Объект.ЗапрещатьВводНекорректного = Объект.ПроверятьКорректность;
КонецПроцедуры КонецПроцедуры
@@ -88,6 +88,9 @@
УчастникиИзменений, УчастникиИзменений,
ИзмененныеГруппы); ИзмененныеГруппы);
ПользователиСлужебный.ОбновитьИспользуемостьСоставовГруппПользователей(
Ссылка, УчастникиИзменений, ИзмененныеГруппы);
ПользователиСлужебный.ЗавершитьОбработкуПользователяИБ( ПользователиСлужебный.ЗавершитьОбработкуПользователяИБ(
ЭтотОбъект, ПараметрыОбработкиПользователяИБ); ЭтотОбъект, ПараметрыОбработкиПользователяИБ);
@@ -3,23 +3,25 @@
<item> <item>
<selection> <selection>
<item> <item>
<field>Наименование</field> <field>СоставВнешнийПользователь</field>
</item> </item>
</selection> </selection>
<filter> <filter>
<item xsi:type="FilterItemComparison"> <item xsi:type="FilterItemComparison">
<left xsi:type="dcscor:Field">Список.Ссылка</left> <left xsi:type="dcscor:Field">Объект.Состав.Недействителен</left>
<comparisonType>InList</comparisonType> <comparisonType>Equal</comparisonType>
<right xsi:type="v8:ValueListType"> <right xsi:type="xs:boolean">true</right>
<v8:valueType/>
<v8:lastId xsi:type="xs:decimal">-1</v8:lastId>
</right>
</item> </item>
</filter> </filter>
<appearance> <appearance>
<dcscor:item xsi:type="SettingsParameterValue"> <dcscor:item xsi:type="SettingsParameterValue">
<dcscor:parameter>Шрифт</dcscor:parameter> <dcscor:use>false</dcscor:use>
<dcscor:value xsi:type="v8ui:Font" ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/> <dcscor:parameter>ЦветФона</dcscor:parameter>
<dcscor:value xsi:type="v8ui:Color">web:Gray</dcscor:value>
</dcscor:item>
<dcscor:item xsi:type="SettingsParameterValue">
<dcscor:parameter>ЦветТекста</dcscor:parameter>
<dcscor:value xsi:type="v8ui:Color">web:Gray</dcscor:value>
</dcscor:item> </dcscor:item>
</appearance> </appearance>
</item> </item>
@@ -13,7 +13,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>НаименованиеРасширеннаяПодсказка</name>
<id>149</id> <id>153</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -75,7 +75,7 @@
</handlers> </handlers>
<extendedTooltip> <extendedTooltip>
<name>УчастникиГруппыРасширеннаяПодсказка</name> <name>УчастникиГруппыРасширеннаяПодсказка</name>
<id>154</id> <id>158</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -158,7 +158,7 @@
</handlers> </handlers>
<extendedTooltip> <extendedTooltip>
<name>ПредставлениеТипаОбъектовАвторизацииРасширеннаяПодсказка</name> <name>ПредставлениеТипаОбъектовАвторизацииРасширеннаяПодсказка</name>
<id>156</id> <id>160</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -202,7 +202,7 @@
</title> </title>
<extendedTooltip> <extendedTooltip>
<name>ТипПользователейРасширеннаяПодсказка</name> <name>ТипПользователейРасширеннаяПодсказка</name>
<id>153</id> <id>157</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -253,7 +253,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>СоставВнешнийПользовательРасширеннаяПодсказка</name> <name>СоставВнешнийПользовательРасширеннаяПодсказка</name>
<id>180</id> <id>184</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -285,6 +285,38 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>Недействителен</name>
<id>150</id>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Состав.Недействителен</segments>
</dataPath>
<extendedTooltip>
<name>НедействителенРасширеннаяПодсказка</name>
<id>186</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НедействителенКонтекстноеМеню</name>
<id>151</id>
<autoFill>true</autoFill>
</contextMenu>
<type>CheckBoxField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:CheckBoxFieldExtInfo"/>
</items>
<autoCommandBar> <autoCommandBar>
<name>СоставКоманднаяПанель</name> <name>СоставКоманднаяПанель</name>
<id>12</id> <id>12</id>
@@ -299,7 +331,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПодобратьРасширеннаяПодсказка</name> <name>СоставПодобратьРасширеннаяПодсказка</name>
<id>162</id> <id>166</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -326,7 +358,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставДобавитьРасширеннаяПодсказка</name> <name>СоставДобавитьРасширеннаяПодсказка</name>
<id>163</id> <id>167</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -353,7 +385,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставСкопироватьРасширеннаяПодсказка</name> <name>СоставСкопироватьРасширеннаяПодсказка</name>
<id>164</id> <id>168</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -380,7 +412,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставУдалитьРасширеннаяПодсказка</name> <name>СоставУдалитьРасширеннаяПодсказка</name>
<id>165</id> <id>169</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -407,7 +439,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПереместитьВверхРасширеннаяПодсказка</name> <name>СоставПереместитьВверхРасширеннаяПодсказка</name>
<id>166</id> <id>170</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -434,7 +466,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПереместитьВнизРасширеннаяПодсказка</name> <name>СоставПереместитьВнизРасширеннаяПодсказка</name>
<id>167</id> <id>171</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -461,7 +493,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СортироватьПоВозрастаниюРасширеннаяПодсказка</name> <name>СортироватьПоВозрастаниюРасширеннаяПодсказка</name>
<id>168</id> <id>172</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -489,7 +521,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СортироватьПоУбываниюРасширеннаяПодсказка</name> <name>СортироватьПоУбываниюРасширеннаяПодсказка</name>
<id>169</id> <id>173</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -518,10 +550,10 @@
</handlers> </handlers>
<searchStringAddition> <searchStringAddition>
<name>СоставСтрокаПоиска</name> <name>СоставСтрокаПоиска</name>
<id>171</id> <id>175</id>
<extendedTooltip> <extendedTooltip>
<name>СоставСтрокаПоискаРасширеннаяПодсказка</name> <name>СоставСтрокаПоискаРасширеннаяПодсказка</name>
<id>173</id> <id>177</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -531,7 +563,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставСтрокаПоискаКонтекстноеМеню</name> <name>СоставСтрокаПоискаКонтекстноеМеню</name>
<id>172</id> <id>176</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<source>Состав</source> <source>Состав</source>
@@ -541,10 +573,10 @@
</searchStringAddition> </searchStringAddition>
<viewStatusAddition> <viewStatusAddition>
<name>СоставСостояниеПросмотра</name> <name>СоставСостояниеПросмотра</name>
<id>174</id> <id>178</id>
<extendedTooltip> <extendedTooltip>
<name>СоставСостояниеПросмотраРасширеннаяПодсказка</name> <name>СоставСостояниеПросмотраРасширеннаяПодсказка</name>
<id>176</id> <id>180</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -554,7 +586,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставСостояниеПросмотраКонтекстноеМеню</name> <name>СоставСостояниеПросмотраКонтекстноеМеню</name>
<id>175</id> <id>179</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>ViewStatusAddition</type> <type>ViewStatusAddition</type>
@@ -565,10 +597,10 @@
</viewStatusAddition> </viewStatusAddition>
<searchControlAddition> <searchControlAddition>
<name>СоставУправлениеПоиском</name> <name>СоставУправлениеПоиском</name>
<id>177</id> <id>181</id>
<extendedTooltip> <extendedTooltip>
<name>СоставУправлениеПоискомРасширеннаяПодсказка</name> <name>СоставУправлениеПоискомРасширеннаяПодсказка</name>
<id>179</id> <id>183</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -578,7 +610,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставУправлениеПоискомКонтекстноеМеню</name> <name>СоставУправлениеПоискомКонтекстноеМеню</name>
<id>178</id> <id>182</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>SearchControlAddition</type> <type>SearchControlAddition</type>
@@ -589,7 +621,7 @@
</searchControlAddition> </searchControlAddition>
<extendedTooltip> <extendedTooltip>
<name>СоставРасширеннаяПодсказка</name> <name>СоставРасширеннаяПодсказка</name>
<id>170</id> <id>174</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -611,7 +643,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставПодобратьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставПодобратьРасширеннаяПодсказка</name>
<id>158</id> <id>162</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -638,7 +670,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставДобавитьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставДобавитьРасширеннаяПодсказка</name>
<id>159</id> <id>163</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -665,7 +697,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставСкопироватьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставСкопироватьРасширеннаяПодсказка</name>
<id>160</id> <id>164</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -692,7 +724,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставУдалитьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставУдалитьРасширеннаяПодсказка</name>
<id>161</id> <id>165</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -753,7 +785,7 @@
</title> </title>
<extendedTooltip> <extendedTooltip>
<name>ВнешниеПользователиГруппыРасширеннаяПодсказка</name> <name>ВнешниеПользователиГруппыРасширеннаяПодсказка</name>
<id>152</id> <id>156</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -819,7 +851,7 @@
</handlers> </handlers>
<extendedTooltip> <extendedTooltip>
<name>РолиПометкаРасширеннаяПодсказка</name> <name>РолиПометкаРасширеннаяПодсказка</name>
<id>207</id> <id>213</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -850,7 +882,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>РолиСинонимРасширеннаяПодсказка</name> <name>РолиСинонимРасширеннаяПодсказка</name>
<id>209</id> <id>215</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -894,7 +926,7 @@
</toolTip> </toolTip>
<extendedTooltip> <extendedTooltip>
<name>РолиКолонокРасширеннаяПодсказка</name> <name>РолиКолонокРасширеннаяПодсказка</name>
<id>206</id> <id>212</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -923,7 +955,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>РолиУстановитьФлажкиРасширеннаяПодсказка</name> <name>РолиУстановитьФлажкиРасширеннаяПодсказка</name>
<id>192</id> <id>198</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -950,7 +982,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>РолиСнятьФлажкиРасширеннаяПодсказка</name> <name>РолиСнятьФлажкиРасширеннаяПодсказка</name>
<id>193</id> <id>199</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -977,7 +1009,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>РолиПоказатьТолькоВыбранныеРолиРасширеннаяПодсказка</name> <name>РолиПоказатьТолькоВыбранныеРолиРасширеннаяПодсказка</name>
<id>194</id> <id>200</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1003,7 +1035,7 @@
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>РолиПоказатьПодсистемыРолейРасширеннаяПодсказка</name> <name>РолиПоказатьПодсистемыРолейРасширеннаяПодсказка</name>
<id>195</id> <id>201</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1023,10 +1055,10 @@
</autoCommandBar> </autoCommandBar>
<searchStringAddition> <searchStringAddition>
<name>РолиСтрокаПоиска</name> <name>РолиСтрокаПоиска</name>
<id>197</id> <id>203</id>
<extendedTooltip> <extendedTooltip>
<name>РолиСтрокаПоискаРасширеннаяПодсказка</name> <name>РолиСтрокаПоискаРасширеннаяПодсказка</name>
<id>199</id> <id>205</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1036,7 +1068,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>РолиСтрокаПоискаКонтекстноеМеню</name> <name>РолиСтрокаПоискаКонтекстноеМеню</name>
<id>198</id> <id>204</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<source>Роли</source> <source>Роли</source>
@@ -1046,10 +1078,10 @@
</searchStringAddition> </searchStringAddition>
<viewStatusAddition> <viewStatusAddition>
<name>РолиСостояниеПросмотра</name> <name>РолиСостояниеПросмотра</name>
<id>200</id> <id>206</id>
<extendedTooltip> <extendedTooltip>
<name>РолиСостояниеПросмотраРасширеннаяПодсказка</name> <name>РолиСостояниеПросмотраРасширеннаяПодсказка</name>
<id>202</id> <id>208</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1059,7 +1091,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>РолиСостояниеПросмотраКонтекстноеМеню</name> <name>РолиСостояниеПросмотраКонтекстноеМеню</name>
<id>201</id> <id>207</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>ViewStatusAddition</type> <type>ViewStatusAddition</type>
@@ -1070,10 +1102,10 @@
</viewStatusAddition> </viewStatusAddition>
<searchControlAddition> <searchControlAddition>
<name>РолиУправлениеПоиском</name> <name>РолиУправлениеПоиском</name>
<id>203</id> <id>209</id>
<extendedTooltip> <extendedTooltip>
<name>РолиУправлениеПоискомРасширеннаяПодсказка</name> <name>РолиУправлениеПоискомРасширеннаяПодсказка</name>
<id>205</id> <id>211</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1083,7 +1115,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>РолиУправлениеПоискомКонтекстноеМеню</name> <name>РолиУправлениеПоискомКонтекстноеМеню</name>
<id>204</id> <id>210</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>SearchControlAddition</type> <type>SearchControlAddition</type>
@@ -1094,7 +1126,7 @@
</searchControlAddition> </searchControlAddition>
<extendedTooltip> <extendedTooltip>
<name>РолиРасширеннаяПодсказка</name> <name>РолиРасширеннаяПодсказка</name>
<id>196</id> <id>202</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1148,7 +1180,7 @@
<width>48</width> <width>48</width>
<extendedTooltip> <extendedTooltip>
<name>ОтображениеРолейРасширеннаяПодсказка</name> <name>ОтображениеРолейРасширеннаяПодсказка</name>
<id>191</id> <id>197</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1181,7 +1213,7 @@
</toolTip> </toolTip>
<extendedTooltip> <extendedTooltip>
<name>РолиГруппыРасширеннаяПодсказка</name> <name>РолиГруппыРасширеннаяПодсказка</name>
<id>190</id> <id>196</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1210,7 +1242,7 @@
</toolTip> </toolTip>
<extendedTooltip> <extendedTooltip>
<name>СоставИРолиРасширеннаяПодсказка</name> <name>СоставИРолиРасширеннаяПодсказка</name>
<id>151</id> <id>155</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1245,7 +1277,7 @@
</handlers> </handlers>
<extendedTooltip> <extendedTooltip>
<name>РодительРасширеннаяПодсказка</name> <name>РодительРасширеннаяПодсказка</name>
<id>219</id> <id>225</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1291,7 +1323,7 @@
<titleLocation>Left</titleLocation> <titleLocation>Left</titleLocation>
<extendedTooltip> <extendedTooltip>
<name>КомментарийРасширеннаяПодсказка</name> <name>КомментарийРасширеннаяПодсказка</name>
<id>221</id> <id>227</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -1330,6 +1362,33 @@
<autoCommandBar> <autoCommandBar>
<name>ФормаКоманднаяПанель</name> <name>ФормаКоманднаяПанель</name>
<id>-1</id> <id>-1</id>
<items xsi:type="form:Button">
<name>ПоказыватьНедействительныхПользователей</name>
<id>149</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ПоказыватьНедействительныхПользователейРасширеннаяПодсказка</name>
<id>152</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.ПоказыватьНедействительныхПользователей</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
<locationInCommandBar>InAdditionalSubmenu</locationInCommandBar>
</items>
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
@@ -1375,6 +1434,28 @@
</edit> </edit>
<main>true</main> <main>true</main>
<savedData>true</savedData> <savedData>true</savedData>
<additionalColumns>
<tablePath xsi:type="form:DataPath">
<segments>Объект.Состав</segments>
</tablePath>
<columns>
<name>Недействителен</name>
<title>
<key>ru</key>
<value>Недействителен</value>
</title>
<id>1</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
</additionalColumns>
<additionalColumns> <additionalColumns>
<tablePath xsi:type="form:DataPath"> <tablePath xsi:type="form:DataPath">
<segments>Объект.Роли</segments> <segments>Объект.Роли</segments>
@@ -1762,6 +1843,28 @@
<currentRowUse>Auto</currentRowUse> <currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse> <selectedRowsUse>Auto</selectedRowsUse>
</formCommands> </formCommands>
<formCommands>
<name>ПоказыватьНедействительныхПользователей</name>
<title>
<key>ru</key>
<value>Показывать недействительных пользователей</value>
</title>
<id>4</id>
<toolTip>
<key>ru</key>
<value>Показывать недействительных пользователей</value>
</toolTip>
<use>
<common>true</common>
</use>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ПоказыватьНедействительныхПользователей</name>
</handler>
</action>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
@@ -85,6 +85,9 @@
УстановитьДоступностьСвойств(ЭтаФорма); УстановитьДоступностьСвойств(ЭтаФорма);
ЗаполнитьСтатусПользователей();
ОбновитьСписокНедействительныхПользователей(Истина);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@@ -318,6 +321,13 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьНедействительныхПользователей(Команда)
ОбновитьСписокНедействительныхПользователей(Ложь);
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Для работы интерфейса ролей // Для работы интерфейса ролей
@@ -618,6 +628,33 @@
КонецФункции КонецФункции
&НаСервере
Процедура ЗаполнитьСтатусПользователей()
Для Каждого СтрокаСоставаГруппы Из Объект.Состав Цикл
СтрокаСоставаГруппы.Недействителен =
ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СтрокаСоставаГруппы.ВнешнийПользователь, "Недействителен");
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ОбновитьСписокНедействительныхПользователей(ПередОткрытиемФормы)
Элементы.ПоказыватьНедействительныхПользователей.Пометка = ?(ПередОткрытиемФормы, Ложь,
НЕ Элементы.ПоказыватьНедействительныхПользователей.Пометка);
Отбор = Новый Структура;
Если Не Элементы.ПоказыватьНедействительныхПользователей.Пометка Тогда
Отбор.Вставить("Недействителен", Ложь);
Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура(Отбор);
Иначе
Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура();
КонецЕсли;
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Для работы интерфейса ролей // Для работы интерфейса ролей
@@ -634,5 +671,3 @@
ПользователиСлужебный.ОбработатьИнтерфейсРолей(Действие, ПараметрыДействия); ПользователиСлужебный.ОбработатьИнтерфейсРолей(Действие, ПараметрыДействия);
КонецПроцедуры КонецПроцедуры
@@ -306,6 +306,9 @@
СтарыйРодитель, , УчастникиИзменений, ИзмененныеГруппы); СтарыйРодитель, , УчастникиИзменений, ИзмененныеГруппы);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ПользователиСлужебный.ОбновитьИспользуемостьСоставовГруппПользователей(
Ссылка, УчастникиИзменений, ИзмененныеГруппы);
КонецЕсли; КонецЕсли;
Если ИзменилсяСоставРолейГруппыВнешнихПользователей Тогда Если ИзменилсяСоставРолейГруппыВнешнихПользователей Тогда
@@ -3,20 +3,20 @@
<item> <item>
<selection> <selection>
<item> <item>
<field>СписокОбращений</field> <field>Пользователь</field>
</item> </item>
</selection> </selection>
<filter> <filter>
<item xsi:type="FilterItemComparison"> <item xsi:type="FilterItemComparison">
<left xsi:type="dcscor:Field">СписокОбращений.ИмеетНовыеСообщения</left> <left xsi:type="dcscor:Field">Объект.Состав.Недействителен</left>
<comparisonType>Equal</comparisonType> <comparisonType>Equal</comparisonType>
<right xsi:type="xs:boolean">true</right> <right xsi:type="xs:boolean">true</right>
</item> </item>
</filter> </filter>
<appearance> <appearance>
<dcscor:item xsi:type="SettingsParameterValue"> <dcscor:item xsi:type="SettingsParameterValue">
<dcscor:parameter>Шрифт</dcscor:parameter> <dcscor:parameter>ЦветТекста</dcscor:parameter>
<dcscor:value xsi:type="v8ui:Font" ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/> <dcscor:value xsi:type="v8ui:Color">web:Gray</dcscor:value>
</dcscor:item> </dcscor:item>
</appearance> </appearance>
</item> </item>
@@ -13,7 +13,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>НаименованиеРасширеннаяПодсказка</name>
<id>51</id> <id>55</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -75,7 +75,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>ПользовательРасширеннаяПодсказка</name> <name>ПользовательРасширеннаяПодсказка</name>
<id>75</id> <id>79</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -106,6 +106,38 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>Недействителен</name>
<id>52</id>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Состав.Недействителен</segments>
</dataPath>
<extendedTooltip>
<name>НедействителенРасширеннаяПодсказка</name>
<id>81</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НедействителенКонтекстноеМеню</name>
<id>53</id>
<autoFill>true</autoFill>
</contextMenu>
<type>CheckBoxField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:CheckBoxFieldExtInfo"/>
</items>
<autoCommandBar> <autoCommandBar>
<name>СоставКоманднаяПанель</name> <name>СоставКоманднаяПанель</name>
<id>12</id> <id>12</id>
@@ -120,7 +152,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПодобратьРасширеннаяПодсказка</name> <name>СоставПодобратьРасширеннаяПодсказка</name>
<id>57</id> <id>61</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -147,7 +179,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставДобавитьРасширеннаяПодсказка</name> <name>СоставДобавитьРасширеннаяПодсказка</name>
<id>58</id> <id>62</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -174,7 +206,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставСкопироватьРасширеннаяПодсказка</name> <name>СоставСкопироватьРасширеннаяПодсказка</name>
<id>59</id> <id>63</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -201,7 +233,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставУдалитьРасширеннаяПодсказка</name> <name>СоставУдалитьРасширеннаяПодсказка</name>
<id>60</id> <id>64</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -228,7 +260,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПереместитьВверхРасширеннаяПодсказка</name> <name>СоставПереместитьВверхРасширеннаяПодсказка</name>
<id>61</id> <id>65</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -255,7 +287,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставПереместитьВнизРасширеннаяПодсказка</name> <name>СоставПереместитьВнизРасширеннаяПодсказка</name>
<id>62</id> <id>66</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -282,7 +314,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставСортироватьПоВозрастаниюРасширеннаяПодсказка</name> <name>СоставСортироватьПоВозрастаниюРасширеннаяПодсказка</name>
<id>63</id> <id>67</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -310,7 +342,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>СоставСортироватьПоУбываниюРасширеннаяПодсказка</name> <name>СоставСортироватьПоУбываниюРасширеннаяПодсказка</name>
<id>64</id> <id>68</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -339,10 +371,10 @@
</handlers> </handlers>
<searchStringAddition> <searchStringAddition>
<name>СоставСтрокаПоиска</name> <name>СоставСтрокаПоиска</name>
<id>66</id> <id>70</id>
<extendedTooltip> <extendedTooltip>
<name>СоставСтрокаПоискаРасширеннаяПодсказка</name> <name>СоставСтрокаПоискаРасширеннаяПодсказка</name>
<id>68</id> <id>72</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -352,7 +384,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставСтрокаПоискаКонтекстноеМеню</name> <name>СоставСтрокаПоискаКонтекстноеМеню</name>
<id>67</id> <id>71</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<source>Состав</source> <source>Состав</source>
@@ -362,10 +394,10 @@
</searchStringAddition> </searchStringAddition>
<viewStatusAddition> <viewStatusAddition>
<name>СоставСостояниеПросмотра</name> <name>СоставСостояниеПросмотра</name>
<id>69</id> <id>73</id>
<extendedTooltip> <extendedTooltip>
<name>СоставСостояниеПросмотраРасширеннаяПодсказка</name> <name>СоставСостояниеПросмотраРасширеннаяПодсказка</name>
<id>71</id> <id>75</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -375,7 +407,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставСостояниеПросмотраКонтекстноеМеню</name> <name>СоставСостояниеПросмотраКонтекстноеМеню</name>
<id>70</id> <id>74</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>ViewStatusAddition</type> <type>ViewStatusAddition</type>
@@ -386,10 +418,10 @@
</viewStatusAddition> </viewStatusAddition>
<searchControlAddition> <searchControlAddition>
<name>СоставУправлениеПоиском</name> <name>СоставУправлениеПоиском</name>
<id>72</id> <id>76</id>
<extendedTooltip> <extendedTooltip>
<name>СоставУправлениеПоискомРасширеннаяПодсказка</name> <name>СоставУправлениеПоискомРасширеннаяПодсказка</name>
<id>74</id> <id>78</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -399,7 +431,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СоставУправлениеПоискомКонтекстноеМеню</name> <name>СоставУправлениеПоискомКонтекстноеМеню</name>
<id>73</id> <id>77</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>SearchControlAddition</type> <type>SearchControlAddition</type>
@@ -410,7 +442,7 @@
</searchControlAddition> </searchControlAddition>
<extendedTooltip> <extendedTooltip>
<name>СоставРасширеннаяПодсказка</name> <name>СоставРасширеннаяПодсказка</name>
<id>65</id> <id>69</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -432,7 +464,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставПодобратьПользователейРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставПодобратьПользователейРасширеннаяПодсказка</name>
<id>53</id> <id>57</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -459,7 +491,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставДобавитьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставДобавитьРасширеннаяПодсказка</name>
<id>54</id> <id>58</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -486,7 +518,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставСкопироватьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставСкопироватьРасширеннаяПодсказка</name>
<id>55</id> <id>59</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -513,7 +545,7 @@
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<extendedTooltip> <extendedTooltip>
<name>КонтекстноеМенюСоставУдалитьРасширеннаяПодсказка</name> <name>КонтекстноеМенюСоставУдалитьРасширеннаяПодсказка</name>
<id>56</id> <id>60</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -579,7 +611,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>РодительРасширеннаяПодсказка</name> <name>РодительРасширеннаяПодсказка</name>
<id>86</id> <id>92</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -625,7 +657,7 @@
<titleLocation>Left</titleLocation> <titleLocation>Left</titleLocation>
<extendedTooltip> <extendedTooltip>
<name>КомментарийРасширеннаяПодсказка</name> <name>КомментарийРасширеннаяПодсказка</name>
<id>88</id> <id>94</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -675,7 +707,7 @@
</toolTip> </toolTip>
<extendedTooltip> <extendedTooltip>
<name>ПрочееРасширеннаяПодсказка</name> <name>ПрочееРасширеннаяПодсказка</name>
<id>85</id> <id>91</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -699,6 +731,33 @@
<autoCommandBar> <autoCommandBar>
<name>ФормаКоманднаяПанель</name> <name>ФормаКоманднаяПанель</name>
<id>-1</id> <id>-1</id>
<items xsi:type="form:Button">
<name>ПоказыватьНедействительныхПользователей</name>
<id>51</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ПоказыватьНедействительныхПользователейРасширеннаяПодсказка</name>
<id>54</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.ПоказыватьНедействительныхПользователей</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
<locationInCommandBar>InAdditionalSubmenu</locationInCommandBar>
</items>
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
@@ -731,6 +790,28 @@
</edit> </edit>
<main>true</main> <main>true</main>
<savedData>true</savedData> <savedData>true</savedData>
<additionalColumns>
<tablePath xsi:type="form:DataPath">
<segments>Объект.Состав</segments>
</tablePath>
<columns>
<name>Недействителен</name>
<title>
<key>ru</key>
<value>Недействителен</value>
</title>
<id>1</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
</additionalColumns>
</attributes> </attributes>
<formCommands> <formCommands>
<name>ПодобратьПользователей</name> <name>ПодобратьПользователей</name>
@@ -755,6 +836,28 @@
<currentRowUse>Auto</currentRowUse> <currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse> <selectedRowsUse>Auto</selectedRowsUse>
</formCommands> </formCommands>
<formCommands>
<name>ПоказыватьНедействительныхПользователей</name>
<title>
<key>ru</key>
<value>Показывать недействительных пользователей</value>
</title>
<id>2</id>
<toolTip>
<key>ru</key>
<value>Показывать недействительных пользователей</value>
</toolTip>
<use>
<common>true</common>
</use>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ПоказыватьНедействительныхПользователей</name>
</handler>
</action>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
@@ -18,6 +18,10 @@
ТолькоПросмотр = Истина; ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
ЗаполнитьСтатусПользователей();
ОбновитьСписокНедействительныхПользователей(Истина);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@@ -95,6 +99,13 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьНедействительныхПользователей(Команда)
ОбновитьСписокНедействительныхПользователей(Ложь);
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
@@ -151,3 +162,30 @@
Возврат АдресХранилища; Возврат АдресХранилища;
КонецФункции КонецФункции
&НаСервере
Процедура ЗаполнитьСтатусПользователей()
Для Каждого СтрокаСоставаГруппы Из Объект.Состав Цикл
СтрокаСоставаГруппы.Недействителен =
ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СтрокаСоставаГруппы.Пользователь, "Недействителен");
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ОбновитьСписокНедействительныхПользователей(ПередОткрытиемФормы)
Элементы.ПоказыватьНедействительныхПользователей.Пометка = ?(ПередОткрытиемФормы, Ложь,
НЕ Элементы.ПоказыватьНедействительныхПользователей.Пометка);
Отбор = Новый Структура;
Если Не Элементы.ПоказыватьНедействительныхПользователей.Пометка Тогда
Отбор.Вставить("Недействителен", Ложь);
Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура(Отбор);
Иначе
Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура();
КонецЕсли;
КонецПроцедуры
@@ -128,6 +128,9 @@
ПользователиСлужебный.ОбновитьСоставыГруппПользователей( ПользователиСлужебный.ОбновитьСоставыГруппПользователей(
СтарыйРодитель, , УчастникиИзменений, ИзмененныеГруппы); СтарыйРодитель, , УчастникиИзменений, ИзмененныеГруппы);
КонецЕсли; КонецЕсли;
ПользователиСлужебный.ОбновитьИспользуемостьСоставовГруппПользователей(
Ссылка, УчастникиИзменений, ИзмененныеГруппы);
КонецЕсли; КонецЕсли;
ПользователиСлужебный.ПослеОбновленияСоставовГруппПользователей( ПользователиСлужебный.ПослеОбновленияСоставовГруппПользователей(
@@ -2417,7 +2417,6 @@
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>InputField</type> <type>InputField</type>
<readOnly>true</readOnly>
<editMode>Enter</editMode> <editMode>Enter</editMode>
<showInHeader>true</showInHeader> <showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign> <headerHorizontalAlign>Left</headerHorizontalAlign>
@@ -25,7 +25,7 @@
КонецЦикла; КонецЦикла;
// Ограничение отображения расширенной информации // Ограничение отображения расширенной информации
ОтображениеРасширеннойИнформации = ДополнительныеОтчетыИОбработки.ОтображатьРасширеннуюИнформацию(); ОтображениеРасширеннойИнформации = ДополнительныеОтчетыИОбработки.ОтображатьРасширеннуюИнформацию(Объект.Ссылка);
Элементы.ГруппаДополнительнаяИнформация.Видимость = ОтображениеРасширеннойИнформации; Элементы.ГруппаДополнительнаяИнформация.Видимость = ОтображениеРасширеннойИнформации;
Элементы.ДополнительнаяИнформация.Видимость = ОтображениеРасширеннойИнформации; Элементы.ДополнительнаяИнформация.Видимость = ОтображениеРасширеннойИнформации;
@@ -394,6 +394,7 @@
Процедура ПриЗаписиГлобальногоОтчета(Отказ) Процедура ПриЗаписиГлобальногоОтчета(Отказ)
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.ВариантыОтчетов") Тогда Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.ВариантыОтчетов") Тогда
Попытка Попытка
Если ЭтоНовый() Тогда Если ЭтоНовый() Тогда
ВнешнийОбъект = ВнешниеОтчеты.Создать(ИмяОбъекта); ВнешнийОбъект = ВнешниеОтчеты.Создать(ИмяОбъекта);
@@ -8,7 +8,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПриСозданииФормыНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ) Тогда Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -52,10 +52,6 @@
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Родитель</name> <name>Родитель</name>
<id>5</id> <id>5</id>
<title>
<key>ru</key>
<value>Вышестоящая группа</value>
</title>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
@@ -95,13 +91,18 @@
<chooseType>true</chooseType> <chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
<choiceParameterLinks>
<name>Отбор.Владелец</name>
<datapath xsi:type="form:DataPath">
<segments>Объект.Owner</segments>
</datapath>
</choiceParameterLinks>
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Владелец</name> <name>Владелец</name>
<id>3</id> <id>3</id>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -175,6 +176,12 @@
<main>true</main> <main>true</main>
<savedData>true</savedData> <savedData>true</savedData>
</attributes> </attributes>
<parameters>
<name>СкрытьВладельца</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
@@ -15,6 +15,10 @@
Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование; Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование;
КонецЕсли; КонецЕсли;
Если НЕ Параметры.СкрытьВладельца Тогда
Элементы.Владелец.Видимость = Истина;
КонецЕсли;
УстановитьЗаголовок(); УстановитьЗаголовок();
КонецПроцедуры КонецПроцедуры
@@ -31,7 +35,10 @@
Процедура УстановитьЗаголовок() Процедура УстановитьЗаголовок()
ИмяСвойства = СокрЛП(СтрПолучитьСтроку(Объект.Владелец.СклоненияПредмета, 1)); ЗначенияРеквизитов = ОбщегоНазначения.ПолучитьЗначенияРеквизитов(
Объект.Владелец, "Заголовок, ЗаголовокФормыЗначения");
ИмяСвойства = СокрЛП(ЗначенияРеквизитов.ЗаголовокФормыЗначения);
Если НЕ ПустаяСтрока(ИмяСвойства) Тогда Если НЕ ПустаяСтрока(ИмяСвойства) Тогда
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
@@ -44,7 +51,7 @@
НСтр("ru = '%1 (Создание)'"), ИмяСвойства); НСтр("ru = '%1 (Создание)'"), ИмяСвойства);
КонецЕсли; КонецЕсли;
Иначе Иначе
ИмяСвойства = Строка(Объект.Владелец); ИмяСвойства = Строка(ЗначенияРеквизитов.Заголовок);
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
@@ -106,6 +106,11 @@
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Владелец</name> <name>Владелец</name>
<id>8</id> <id>8</id>
<title>
<key>ru</key>
<value>Свойство</value>
</title>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -149,6 +154,10 @@
<event>BeforeAddRow</event> <event>BeforeAddRow</event>
<name>СписокПередНачаломДобавления</name> <name>СписокПередНачаломДобавления</name>
</handlers> </handlers>
<handlers>
<event>BeforeRowChange</event>
<name>СписокПередНачаломИзменения</name>
</handlers>
<searchStringAddition> <searchStringAddition>
<name>СписокСтрокаПоиска</name> <name>СписокСтрокаПоиска</name>
<id>34</id> <id>34</id>
@@ -510,9 +519,22 @@
</notDefaultUseAlwaysAttributes> </notDefaultUseAlwaysAttributes>
<main>true</main> <main>true</main>
<extInfo xsi:type="form:DynamicListExtInfo"> <extInfo xsi:type="form:DynamicListExtInfo">
<queryText>ВЫБРАТЬ
Значения.Ссылка,
Значения.ВерсияДанных,
Значения.ПометкаУдаления,
Значения.Предопределенный,
Значения.Владелец,
Значения.Родитель,
Значения.ЭтоГруппа,
Значения.Наименование,
Значения.Вес
ИЗ
Справочник.ЗначенияСвойствОбъектов КАК Значения</queryText>
<mainTable>Catalog.ЗначенияСвойствОбъектов</mainTable> <mainTable>Catalog.ЗначенияСвойствОбъектов</mainTable>
<dynamicDataRead>true</dynamicDataRead> <dynamicDataRead>true</dynamicDataRead>
<autoFillAvailableFields>true</autoFillAvailableFields> <autoFillAvailableFields>true</autoFillAvailableFields>
<customQuery>true</customQuery>
<autoSaveUserSettings>true</autoSaveUserSettings> <autoSaveUserSettings>true</autoSaveUserSettings>
<getInvisibleFieldPresentations>true</getInvisibleFieldPresentations> <getInvisibleFieldPresentations>true</getInvisibleFieldPresentations>
</extInfo> </extInfo>
@@ -552,6 +574,41 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ВладелецДополнительныхЗначений</name>
<title>
<key>ru</key>
<value>Владелец дополнительных значений</value>
</title>
<id>3</id>
<valueType>
<types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<functionalOptions>FunctionalOption.ИспользоватьДополнительныеРеквизитыИСведения</functionalOptions>
</attributes>
<attributes>
<name>ДополнительныеЗначенияСВесом</name>
<title>
<key>ru</key>
<value>Дополнительные значения с весом</value>
</title>
<id>5</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
@@ -9,6 +9,12 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Параметры.РежимВыбора Тогда
КлючНазначенияИспользования = "ВыборПодбор";
КлючСохраненияПоложенияОкна = "ВыборПодбор";
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
КонецЕсли;
Если Параметры.Отбор.Свойство("Владелец") Тогда Если Параметры.Отбор.Свойство("Владелец") Тогда
Свойство = Параметры.Отбор.Владелец; Свойство = Параметры.Отбор.Владелец;
Параметры.Отбор.Удалить("Владелец"); Параметры.Отбор.Удалить("Владелец");
@@ -21,7 +27,9 @@
Если Параметры.РежимВыбора Тогда Если Параметры.РежимВыбора Тогда
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ПометкаУдаления", Ложь, , , Истина,
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ);
Если Параметры.Свойство("ВыборГруппИЭлементов") Если Параметры.Свойство("ВыборГруппИЭлементов")
И Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Группы Тогда И Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Группы Тогда
@@ -31,7 +39,6 @@
Иначе Иначе
Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Элементы; Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Элементы;
КонецЕсли; КонецЕсли;
Иначе Иначе
Элементы.Список.РежимВыбора = Ложь; Элементы.Список.РежимВыбора = Ложь;
КонецЕсли; КонецЕсли;
@@ -53,7 +60,8 @@
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "Запись_ДополнительныеРеквизитыИСведения" Если ИмяСобытия = "Запись_ДополнительныеРеквизитыИСведения"
И Источник = Свойство Тогда И ( Источник = Свойство
ИЛИ Источник = ВладелецДополнительныхЗначений) Тогда
ПодключитьОбработчикОжидания("ОбработчикОжиданияПриИзмененииСвойства", 0.1, Истина); ПодключитьОбработчикОжидания("ОбработчикОжиданияПриИзмененииСвойства", 0.1, Истина);
КонецЕсли; КонецЕсли;
@@ -90,6 +98,23 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
Отказ = Истина;
Если Элементы.Список.ТекущаяСтрока <> Неопределено Тогда
// Открытие формы значения или группы значений.
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("СкрытьВладельца", Истина);
ПараметрыФормы.Вставить("ПоказатьВес", ДополнительныеЗначенияСВесом);
ПараметрыФормы.Вставить("Ключ", Элементы.Список.ТекущаяСтрока);
ОткрытьФорму("Справочник.ЗначенияСвойствОбъектов.ФормаОбъекта", ПараметрыФормы, Элементы.Список);
КонецЕсли;
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
@@ -134,8 +159,8 @@
СтрокаЗаголовка = ""; СтрокаЗаголовка = "";
Если ЗначениеЗаполнено(Свойство) Тогда Если ЗначениеЗаполнено(Свойство) Тогда
СтрокаЗаголовка = СтрПолучитьСтроку(ОбщегоНазначения.ЗначениеРеквизитаОбъекта( СтрокаЗаголовка = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
Свойство, "СклоненияПредмета"), 2); Свойство, "ЗаголовокФормыВыбораЗначения");
КонецЕсли; КонецЕсли;
Если ПустаяСтрока(СтрокаЗаголовка) Тогда Если ПустаяСтрока(СтрокаЗаголовка) Тогда
@@ -150,7 +175,8 @@
КонецЕсли; КонецЕсли;
СтрокаЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СтрокаЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
СтрокаЗаголовка, Строка(Свойство)); СтрокаЗаголовка, Строка(ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
Свойство, "Заголовок")));
ИначеЕсли Параметры.РежимВыбора Тогда ИначеЕсли Параметры.РежимВыбора Тогда
@@ -181,10 +207,30 @@
Если ЗначениеЗаполнено(Свойство) Тогда Если ЗначениеЗаполнено(Свойство) Тогда
ВладелецДополнительныхЗначений = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
Свойство, "ВладелецДополнительныхЗначений");
Если ЗначениеЗаполнено(ВладелецДополнительныхЗначений) Тогда
ТолькоПросмотр = Истина;
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
ВладелецДополнительныхЗначений, "ТипЗначения");
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Владелец", ВладелецДополнительныхЗначений);
ДополнительныеЗначенияСВесом = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
ВладелецДополнительныхЗначений, "ДополнительныеЗначенияСВесом");
Иначе
ТолькоПросмотр = Ложь;
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Свойство, "ТипЗначения");
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Владелец", Свойство); Список, "Владелец", Свойство);
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Свойство, "ТипЗначения"); ДополнительныеЗначенияСВесом = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
Свойство, "ДополнительныеЗначенияСВесом");
КонецЕсли;
Если ТипЗнч(ТипЗначения) = Тип("ОписаниеТипов") Если ТипЗнч(ТипЗначения) = Тип("ОписаниеТипов")
И ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда И ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда
@@ -198,7 +244,8 @@
Элементы.Владелец.Видимость = Ложь; Элементы.Владелец.Видимость = Ложь;
Элементы.Список.Шапка = Ложь; Элементы.Список.Шапка = Ложь;
Иначе Иначе
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(Список, "Владелец"); ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(
Список, "Владелец");
Элементы.Список.Отображение = ОтображениеТаблицы.Список; Элементы.Список.Отображение = ОтображениеТаблицы.Список;
Элементы.Список.ИзменятьСоставСтрок = Ложь; Элементы.Список.ИзменятьСоставСтрок = Ложь;
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormGroup">
<name>ГоризонтальнаяГруппа</name>
<id>9</id>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Наименование</name> <name>Наименование</name>
<id>1</id> <id>1</id>
@@ -16,7 +13,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>НаименованиеРасширеннаяПодсказка</name>
<id>11</id> <id>9</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -43,10 +40,55 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>5</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительРасширеннаяПодсказка</name>
<id>11</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>6</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<choiceParameterLinks>
<name>Отбор.Владелец</name>
<datapath xsi:type="form:DataPath">
<segments>Объект.Owner</segments>
</datapath>
</choiceParameterLinks>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Вес</name> <name>Вес</name>
<id>7</id> <id>7</id>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -84,82 +126,9 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Горизонтальная группа</value>
</title>
<toolTip>
<key>ru</key>
<value>Горизонтальная группа</value>
</toolTip>
<extendedTooltip>
<name>ГоризонтальнаяГруппаРасширеннаяПодсказка</name>
<id>10</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>5</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительРасширеннаяПодсказка</name>
<id>15</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>6</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Владелец</name> <name>Владелец</name>
<id>3</id> <id>3</id>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -169,7 +138,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>ВладелецРасширеннаяПодсказка</name> <name>ВладелецРасширеннаяПодсказка</name>
<id>17</id> <id>15</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -203,6 +172,10 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
<handlers>
<event>NotificationProcessing</event>
<name>ОбработкаОповещения</name>
</handlers>
<handlers> <handlers>
<event>OnCreateAtServer</event> <event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name> <name>ПриСозданииНаСервере</name>
@@ -233,11 +206,25 @@
<main>true</main> <main>true</main>
<savedData>true</savedData> <savedData>true</savedData>
</attributes> </attributes>
<parameters>
<name>СкрытьВладельца</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<parameters>
<name>ПоказатьВес</name>
<valueType/>
</parameters>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
</commandInterface> </commandInterface>
<extInfo xsi:type="form:CatalogFormExtInfo"> <extInfo xsi:type="form:CatalogFormExtInfo">
<handlers>
<event>AfterWrite</event>
<name>ПослеЗаписи</name>
</handlers>
<handlers> <handlers>
<event>AfterWriteAtServer</event> <event>AfterWriteAtServer</event>
<name>ПослеЗаписиНаСервере</name> <name>ПослеЗаписиНаСервере</name>
@@ -15,10 +15,38 @@
Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование; Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование;
КонецЕсли; КонецЕсли;
Если НЕ Параметры.СкрытьВладельца Тогда
Элементы.Владелец.Видимость = Истина;
КонецЕсли;
Если ТипЗнч(Параметры.ПоказатьВес) = Тип("Булево") Тогда
Если Параметры.ПоказатьВес Тогда
Элементы.Вес.Видимость = Истина;
Иначе
Объект.Вес = 0;
КонецЕсли;
КонецЕсли;
УстановитьЗаголовок(); УстановитьЗаголовок();
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "Изменение_ЗначениеХарактеризуетсяВесовымКоэффициентом"
И Источник = Объект.Свойство Тогда
Если Параметр = Истина Тогда
Элементы.Вес.Видимость = Истина;
Иначе
Элементы.Вес.Видимость = Ложь;
Объект.Вес = 0;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере &НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
@@ -26,12 +54,23 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_ЗначенияСвойствОбъектов",
Новый Структура("Ссылка", Объект.Ссылка), Объект.Ссылка);
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
Процедура УстановитьЗаголовок() Процедура УстановитьЗаголовок()
ИмяСвойства = СокрЛП(СтрПолучитьСтроку(Объект.Владелец.СклоненияПредмета, 1)); ЗначенияРеквизитов = ОбщегоНазначения.ПолучитьЗначенияРеквизитов(
Объект.Владелец, "Заголовок, ЗаголовокФормыЗначения");
ИмяСвойства = СокрЛП(ЗначенияРеквизитов.ЗаголовокФормыЗначения);
Если НЕ ПустаяСтрока(ИмяСвойства) Тогда Если НЕ ПустаяСтрока(ИмяСвойства) Тогда
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
@@ -44,7 +83,7 @@
НСтр("ru = '%1 (Создание)'"), ИмяСвойства); НСтр("ru = '%1 (Создание)'"), ИмяСвойства);
КонецЕсли; КонецЕсли;
Иначе Иначе
ИмяСвойства = Строка(Объект.Владелец); ИмяСвойства = Строка(ЗначенияРеквизитов.Заголовок);
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
@@ -10,7 +10,7 @@
<name>ЗначенияСвойствОбъектов</name> <name>ЗначенияСвойствОбъектов</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Значения свойств объектов</value> <value>Дополнительные значения</value>
</synonym> </synonym>
<inputByString>Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description</inputByString> <inputByString>Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString> <fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
@@ -63,7 +63,7 @@
</synonym> </synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Дополнительный реквизит или дополнительное сведение.</value> <value>Дополнительный реквизит или сведение.</value>
</toolTip> </toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
@@ -79,11 +79,11 @@
<name>Parent</name> <name>Parent</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Группа</value> <value>Входит в группу</value>
</synonym> </synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Группа значений свойства объектов.</value> <value>Группа дополнительных значений свойства.</value>
</toolTip> </toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
@@ -100,13 +100,9 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>Description</name> <name>Description</name>
<synonym>
<key>ru</key>
<value>Значение</value>
</synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Значение свойства объектов.</value> <value>Наименование дополнительного значения свойства.</value>
</toolTip> </toolTip>
<fillValue xsi:type="core:StringValue"/> <fillValue xsi:type="core:StringValue"/>
<fillChecking>ShowError</fillChecking> <fillChecking>ShowError</fillChecking>
@@ -132,7 +128,7 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<objectPresentation> <objectPresentation>
<key>ru</key> <key>ru</key>
<value>Значение свойства объектов</value> <value>Дополнительное значение</value>
</objectPresentation> </objectPresentation>
<hierarchical>true</hierarchical> <hierarchical>true</hierarchical>
<levelCount>2</levelCount> <levelCount>2</levelCount>
@@ -152,7 +148,7 @@
<name>Вес</name> <name>Вес</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Вес</value> <value>Весовой коэффициент</value>
</synonym> </synonym>
<type> <type>
<types>Number</types> <types>Number</types>
@@ -163,7 +159,7 @@
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Относительный вес значения (значимость)</value> <value>Относительный вес дополнительного значения (значимость).</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -9,6 +9,12 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Параметры.РежимВыбора Тогда
КлючНазначенияИспользования = "ВыборПодбор";
КлючСохраненияПоложенияОкна = "ВыборПодбор";
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
КонецЕсли;
Если Параметры.Отбор.Свойство("Владелец") Тогда Если Параметры.Отбор.Свойство("Владелец") Тогда
Свойство = Параметры.Отбор.Владелец; Свойство = Параметры.Отбор.Владелец;
Параметры.Отбор.Удалить("Владелец"); Параметры.Отбор.Удалить("Владелец");
@@ -20,7 +26,9 @@
КонецЕсли; КонецЕсли;
Если Параметры.РежимВыбора Тогда Если Параметры.РежимВыбора Тогда
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ПометкаУдаления", Ложь, , , Истина,
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ);
Иначе Иначе
Элементы.Список.РежимВыбора = Ложь; Элементы.Список.РежимВыбора = Ложь;
КонецЕсли; КонецЕсли;
@@ -104,8 +112,8 @@
СтрокаЗаголовка = ""; СтрокаЗаголовка = "";
Если ЗначениеЗаполнено(Свойство) Тогда Если ЗначениеЗаполнено(Свойство) Тогда
СтрокаЗаголовка = СтрПолучитьСтроку(ОбщегоНазначения.ЗначениеРеквизитаОбъекта( СтрокаЗаголовка = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
Свойство, "СклоненияПредмета"), 2); Свойство, "ЗаголовокФормыВыбораЗначения");
КонецЕсли; КонецЕсли;
Если ПустаяСтрока(СтрокаЗаголовка) Тогда Если ПустаяСтрока(СтрокаЗаголовка) Тогда
@@ -144,13 +152,33 @@
Если ЗначениеЗаполнено(Свойство) Тогда Если ЗначениеЗаполнено(Свойство) Тогда
ВладелецДополнительныхЗначений = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
Свойство, "ВладелецДополнительныхЗначений");
Если ЗначениеЗаполнено(ВладелецДополнительныхЗначений) Тогда
ТолькоПросмотр = Истина;
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
ВладелецДополнительныхЗначений, "ТипЗначения");
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Владелец", ВладелецДополнительныхЗначений);
ДополнительныеЗначенияСВесом = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
ВладелецДополнительныхЗначений, "ДополнительныеЗначенияСВесом");
Иначе
ТолькоПросмотр = Ложь;
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Свойство, "ТипЗначения");
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Владелец", Свойство); Список, "Владелец", Свойство);
ТипЗначения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Свойство, "ТипЗначения"); ДополнительныеЗначенияСВесом = ОбщегоНазначения.ПолучитьЗначениеРеквизита(
Свойство, "ДополнительныеЗначенияСВесом");
КонецЕсли;
Если ТипЗнч(ТипЗначения) = Тип("ОписаниеТипов") Если ТипЗнч(ТипЗначения) = Тип("ОписаниеТипов")
И ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектовИерархия")) Тогда И ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда
Элементы.Список.ИзменятьСоставСтрок = Истина; Элементы.Список.ИзменятьСоставСтрок = Истина;
Иначе Иначе
@@ -161,7 +189,8 @@
Элементы.Владелец.Видимость = Ложь; Элементы.Владелец.Видимость = Ложь;
Элементы.Список.Шапка = Ложь; Элементы.Список.Шапка = Ложь;
Иначе Иначе
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(Список, "Владелец"); ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(
Список, "Владелец");
Элементы.Список.Отображение = ОтображениеТаблицы.Список; Элементы.Список.Отображение = ОтображениеТаблицы.Список;
Элементы.Список.ИзменятьСоставСтрок = Ложь; Элементы.Список.ИзменятьСоставСтрок = Ложь;
@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormGroup">
<name>ГоризонтальнаяГруппа</name>
<id>9</id>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Наименование</name> <name>Наименование</name>
<id>1</id> <id>1</id>
@@ -16,7 +13,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>НаименованиеРасширеннаяПодсказка</name>
<id>11</id> <id>9</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -43,10 +40,49 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>5</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительРасширеннаяПодсказка</name>
<id>11</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>6</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Вес</name> <name>Вес</name>
<id>7</id> <id>7</id>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -84,82 +120,9 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Горизонтальная группа</value>
</title>
<toolTip>
<key>ru</key>
<value>Горизонтальная группа</value>
</toolTip>
<extendedTooltip>
<name>ГоризонтальнаяГруппаРасширеннаяПодсказка</name>
<id>10</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>5</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительРасширеннаяПодсказка</name>
<id>15</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>6</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Владелец</name> <name>Владелец</name>
<id>3</id> <id>3</id>
<visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
@@ -169,7 +132,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>ВладелецРасширеннаяПодсказка</name> <name>ВладелецРасширеннаяПодсказка</name>
<id>17</id> <id>15</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -203,6 +166,10 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
<handlers>
<event>NotificationProcessing</event>
<name>ОбработкаОповещения</name>
</handlers>
<handlers> <handlers>
<event>OnCreateAtServer</event> <event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name> <name>ПриСозданииНаСервере</name>
@@ -233,11 +200,25 @@
<main>true</main> <main>true</main>
<savedData>true</savedData> <savedData>true</savedData>
</attributes> </attributes>
<parameters>
<name>ПоказатьВес</name>
<valueType/>
</parameters>
<parameters>
<name>СкрытьВладельца</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
</commandInterface> </commandInterface>
<extInfo xsi:type="form:CatalogFormExtInfo"> <extInfo xsi:type="form:CatalogFormExtInfo">
<handlers>
<event>AfterWrite</event>
<name>ПослеЗаписи</name>
</handlers>
<handlers> <handlers>
<event>AfterWriteAtServer</event> <event>AfterWriteAtServer</event>
<name>ПослеЗаписиНаСервере</name> <name>ПослеЗаписиНаСервере</name>
@@ -15,10 +15,38 @@
Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование; Объект.Наименование = Параметры.ЗначенияЗаполнения.Наименование;
КонецЕсли; КонецЕсли;
Если НЕ Параметры.СкрытьВладельца Тогда
Элементы.Владелец.Видимость = Истина;
КонецЕсли;
Если ТипЗнч(Параметры.ПоказатьВес) = Тип("Булево") Тогда
Если Параметры.ПоказатьВес Тогда
Элементы.Вес.Видимость = Истина;
Иначе
Объект.Вес = 0;
КонецЕсли;
КонецЕсли;
УстановитьЗаголовок(); УстановитьЗаголовок();
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "Изменение_ЗначениеХарактеризуетсяВесовымКоэффициентом"
И Источник = Объект.Свойство Тогда
Если Параметр = Истина Тогда
Элементы.Вес.Видимость = Истина;
Иначе
Элементы.Вес.Видимость = Ложь;
Объект.Вес = 0;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере &НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
@@ -26,12 +54,23 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_ЗначенияСвойствОбъектовИерархия",
Новый Структура("Ссылка", Объект.Ссылка), Объект.Ссылка);
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
Процедура УстановитьЗаголовок() Процедура УстановитьЗаголовок()
ИмяСвойства = СокрЛП(СтрПолучитьСтроку(Объект.Владелец.СклоненияПредмета, 1)); ЗначенияРеквизитов = ОбщегоНазначения.ПолучитьЗначенияРеквизитов(
Объект.Владелец, "Заголовок, ЗаголовокФормыЗначения");
ИмяСвойства = СокрЛП(ЗначенияРеквизитов.ЗаголовокФормыЗначения);
Если НЕ ПустаяСтрока(ИмяСвойства) Тогда Если НЕ ПустаяСтрока(ИмяСвойства) Тогда
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
@@ -44,7 +83,7 @@
НСтр("ru = '%1 (Создание)'"), ИмяСвойства); НСтр("ru = '%1 (Создание)'"), ИмяСвойства);
КонецЕсли; КонецЕсли;
Иначе Иначе
ИмяСвойства = Строка(Объект.Владелец); ИмяСвойства = Строка(ЗначенияРеквизитов.Заголовок);
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
@@ -10,7 +10,7 @@
<name>ЗначенияСвойствОбъектовИерархия</name> <name>ЗначенияСвойствОбъектовИерархия</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Значения свойств объектов (иерархия)</value> <value>Дополнительные значения (иерархия)</value>
</synonym> </synonym>
<inputByString>Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Description</inputByString> <inputByString>Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Description</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString> <fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
@@ -63,7 +63,7 @@
</synonym> </synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Дополнительный реквизит или дополнительное сведение.</value> <value>Дополнительный реквизит или сведение.</value>
</toolTip> </toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
@@ -79,11 +79,11 @@
<name>Parent</name> <name>Parent</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Родитель</value> <value>Входит в группу</value>
</synonym> </synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Вышестоящее значение свойства объектов.</value> <value>Вышестоящее дополнительное значение свойства.</value>
</toolTip> </toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
@@ -100,13 +100,9 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>Description</name> <name>Description</name>
<synonym>
<key>ru</key>
<value>Значение</value>
</synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Значение свойства объектов.</value> <value>Наименование дополнительного значения свойства.</value>
</toolTip> </toolTip>
<fillValue xsi:type="core:StringValue"/> <fillValue xsi:type="core:StringValue"/>
<fillChecking>ShowError</fillChecking> <fillChecking>ShowError</fillChecking>
@@ -132,7 +128,7 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<objectPresentation> <objectPresentation>
<key>ru</key> <key>ru</key>
<value>Значение свойства объектов (иерархия)</value> <value>Дополнительное значение (иерархия)</value>
</objectPresentation> </objectPresentation>
<hierarchical>true</hierarchical> <hierarchical>true</hierarchical>
<hierarchyType>HierarchyOfItems</hierarchyType> <hierarchyType>HierarchyOfItems</hierarchyType>
@@ -151,7 +147,7 @@
<name>Вес</name> <name>Вес</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Вес</value> <value>Весовой коэффициент</value>
</synonym> </synonym>
<type> <type>
<types>Number</types> <types>Number</types>
@@ -162,7 +158,7 @@
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Относительный вес значения (значимость)</value> <value>Относительный вес дополнительного значения (значимость).</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -1,332 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="3c4519ce-e6aa-43e3-87e5-fbd521fdc88e">
<producedTypes>
<objectType typeId="cd33a790-3b80-48ce-8ad8-da737967d8c7" valueTypeId="e748724c-1396-4f51-b601-e875a6e3a4c7"/>
<refType typeId="7dfa00f4-54d9-478f-87d0-6ee40055d2a7" valueTypeId="d3759dff-49be-4004-bc5d-a95d65f22c30"/>
<selectionType typeId="cdd703cb-16e8-4489-909d-5cef8556163a" valueTypeId="4c872055-ffe7-4843-8a53-85b036c439bd"/>
<listType typeId="03b9fb3b-b919-4cfa-90df-4f387a3a51a8" valueTypeId="a892feb9-f239-4327-9db4-d14c12f41dff"/>
<managerType typeId="d2aa4a1c-43e4-462f-bf62-bf79a3c48419" valueTypeId="a29fe075-ae89-4127-ae86-a1422e7f0439"/>
</producedTypes>
<name>ИнформационныеСсылкиДляФорм</name>
<synonym>
<key>ru</key>
<value>Информационные ссылки для форм</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.ИнформационныеСсылкиДляФорм.StandardAttribute.Description</inputByString>
<inputByString>Catalog.ИнформационныеСсылкиДляФорм.StandardAttribute.Code</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>PredefinedDataName</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Predefined</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Ref</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>DeletionMark</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>IsFolder</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Owner</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Parent</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Description</name>
<toolTip>
<key>ru</key>
<value>Наименование информационной ссылки</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Code</name>
<toolTip>
<key>ru</key>
<value>Код информационной ссылки</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Информационная ссылка</value>
</objectPresentation>
<listPresentation>
<key>ru</key>
<value>Список информационных ссылок</value>
</listPresentation>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>150</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<predefined>
<items id="110c02fa-7a18-4436-adcd-2d48a06b6620">
<name>ДомашняяСтраница</name>
<description>Домашняя страница</description>
<code xsi:type="core:StringValue">
<value>000000001</value>
</code>
</items>
<items id="4e649bc5-4c46-4572-b956-e5b579dcddfb">
<name>Форум</name>
<description>Форум</description>
<code xsi:type="core:StringValue">
<value>000000002</value>
</code>
</items>
</predefined>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
<attributes uuid="892823b2-41ea-4c87-b0d7-e6fe5f190a1c">
<name>Адрес</name>
<synonym>
<key>ru</key>
<value>Адрес</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Адрес информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="05a1450f-7593-48d5-894d-b623e4458c57">
<name>ВерсияКонфигурацииДо</name>
<synonym>
<key>ru</key>
<value>Версия конфигурации до</value>
</synonym>
<type>
<types>Number</types>
<numberQualifiers>
<precision>20</precision>
</numberQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Версия конфигурации с которой доступна информационная ссылка</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="bb8e10cb-6fa1-43f6-870f-0a26bede9d9c">
<name>ВерсияКонфигурацииОт</name>
<synonym>
<key>ru</key>
<value>Версия конфигурации от</value>
</synonym>
<type>
<types>Number</types>
<numberQualifiers>
<precision>20</precision>
</numberQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Версия конфигурации от которой доступна информационная ссылка</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="02a0da6e-4045-49cf-bd14-ff22b534c7be">
<name>Вес</name>
<synonym>
<key>ru</key>
<value>Вес</value>
</synonym>
<type>
<types>Number</types>
<numberQualifiers>
<precision>10</precision>
</numberQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Вес информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="726b9fed-3149-4697-8b0f-bc9051e939ae">
<name>ДатаНачалаАктуальности</name>
<synonym>
<key>ru</key>
<value>Дата начала актуальности</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Дата начала актуальности информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="e7050bde-5acb-4ad8-86f0-375739120d02">
<name>ДатаОбновления</name>
<synonym>
<key>ru</key>
<value>Дата обновления</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Дата обновления информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>IndexWithAdditionalOrder</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="c6b4c9b4-1064-49b0-bae4-b624582142c7">
<name>ДатаОкончанияАктуальности</name>
<synonym>
<key>ru</key>
<value>Дата окончания актуальности</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Дата окончания актуальности информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="11d5138e-df5b-4b0b-adf0-37c239d0de30">
<name>Подсказка</name>
<synonym>
<key>ru</key>
<value>Подсказка</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>200</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Подсказка информационной ссылки</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="f8b72dff-00a9-4b2f-b1a8-72d1f7670a88">
<name>ПолныйПутьКФорме</name>
<synonym>
<key>ru</key>
<value>Полный путь к форме</value>
</synonym>
<type>
<types>CatalogRef.ПолныеПутиКФормам</types>
</type>
<toolTip>
<key>ru</key>
<value>Полный путь к форме конфигурации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>IndexWithAdditionalOrder</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
</mdclass:Catalog>
@@ -1,511 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form">
<title>
<key>ru</key>
<value>Наборы дополнительных реквизитов и сведений</value>
</title>
<items xsi:type="form:Table">
<name>ДеревоНаборов</name>
<id>1</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ДеревоНаборов</segments>
</dataPath>
<skipOnInput>false</skipOnInput>
<titleLocation>None</titleLocation>
<items xsi:type="form:FormGroup">
<name>Группа</name>
<id>8</id>
<items xsi:type="form:FormField">
<name>Выбран</name>
<id>4</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ДеревоНаборов.Выбран</segments>
</dataPath>
<titleLocation>None</titleLocation>
<handlers>
<event>OnChange</event>
<name>ВыбранПриИзменении</name>
</handlers>
<extendedTooltip>
<name>ВыбранРасширеннаяПодсказка</name>
<id>26</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ВыбранКонтекстноеМеню</name>
<id>5</id>
<autoFill>true</autoFill>
</contextMenu>
<type>CheckBoxField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:CheckBoxFieldExtInfo">
<threeState>true</threeState>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Набор</name>
<id>6</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ДеревоНаборов.Набор</segments>
</dataPath>
<extendedTooltip>
<name>НаборРасширеннаяПодсказка</name>
<id>28</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаборКонтекстноеМеню</name>
<id>7</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<readOnly>true</readOnly>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ГруппаРасширеннаяПодсказка</name>
<id>25</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>ColumnGroup</type>
<extInfo xsi:type="form:ColumnGroupExtInfo">
<group>InCell</group>
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>ДеревоНаборовКоманднаяПанель</name>
<id>3</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<searchStringAddition>
<name>ДеревоНаборовСтрокаПоиска</name>
<id>16</id>
<extendedTooltip>
<name>ДеревоНаборовСтрокаПоискаРасширеннаяПодсказка</name>
<id>18</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДеревоНаборовСтрокаПоискаКонтекстноеМеню</name>
<id>17</id>
<autoFill>true</autoFill>
</contextMenu>
<source>ДеревоНаборов</source>
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchStringAddition>
<viewStatusAddition>
<name>ДеревоНаборовСостояниеПросмотра</name>
<id>19</id>
<extendedTooltip>
<name>ДеревоНаборовСостояниеПросмотраРасширеннаяПодсказка</name>
<id>21</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДеревоНаборовСостояниеПросмотраКонтекстноеМеню</name>
<id>20</id>
<autoFill>true</autoFill>
</contextMenu>
<type>ViewStatusAddition</type>
<source>ДеревоНаборов</source>
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</viewStatusAddition>
<searchControlAddition>
<name>ДеревоНаборовУправлениеПоиском</name>
<id>22</id>
<extendedTooltip>
<name>ДеревоНаборовУправлениеПоискомРасширеннаяПодсказка</name>
<id>24</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДеревоНаборовУправлениеПоискомКонтекстноеМеню</name>
<id>23</id>
<autoFill>true</autoFill>
</contextMenu>
<type>SearchControlAddition</type>
<source>ДеревоНаборов</source>
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchControlAddition>
<extendedTooltip>
<name>ДеревоНаборовРасширеннаяПодсказка</name>
<id>15</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДеревоНаборовКонтекстноеМеню</name>
<id>2</id>
</contextMenu>
<representation>Tree</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<autoMaxRowsCount>true</autoMaxRowsCount>
<headerHeight>1</headerHeight>
<footerHeight>1</footerHeight>
<horizontalScrollBar>AutoUse</horizontalScrollBar>
<verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines>
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
<autoInsertNewRow>true</autoInsertNewRow>
<searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation>
<searchControlLocation>None</searchControlLocation>
<autoMaxCardHeight>true</autoMaxCardHeight>
</items>
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<items xsi:type="form:Button">
<name>ФормаВыбрать</name>
<id>9</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<skipOnInput>false</skipOnInput>
<extendedTooltip>
<name>ФормаВыбратьРасширеннаяПодсказка</name>
<id>12</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.Выбрать</commandName>
<representation>Auto</representation>
<defaultButton>true</defaultButton>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаОтметитьВсеНаборы</name>
<id>10</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаОтметитьВсеНаборыРасширеннаяПодсказка</name>
<id>13</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.ОтметитьВсеНаборы</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаСнятьОтметкуВсемНаборам</name>
<id>11</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаСнятьОтметкуВсемНаборамРасширеннаяПодсказка</name>
<id>14</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.СнятьОтметкуВсемНаборам</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<handlers>
<event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name>
</handlers>
<windowOpeningMode>LockOwner</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings>
<autoUrl>true</autoUrl>
<group>Vertical</group>
<autoFillCheck>true</autoFillCheck>
<allowFormCustomize>true</allowFormCustomize>
<enabled>true</enabled>
<verticalScroll>UseIfNecessary</verticalScroll>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<attributes>
<name>ДеревоНаборов</name>
<title>
<key>ru</key>
<value>Дерево наборов</value>
</title>
<id>1</id>
<valueType>
<types>ValueTree</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<savedData>true</savedData>
<columns>
<name>Выбран</name>
<title>
<key>ru</key>
<value>Выбран</value>
</title>
<id>1</id>
<valueType>
<types>Number</types>
<numberQualifiers>
<precision>1</precision>
</numberQualifiers>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
<columns>
<name>Набор</name>
<title>
<key>ru</key>
<value>Набор</value>
</title>
<id>2</id>
<valueType>
<types>CatalogRef.НаборыДополнительныхРеквизитовИСведений</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
<columns>
<name>Наименование</name>
<title>
<key>ru</key>
<value>Наименование</value>
</title>
<id>3</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
</attributes>
<formCommands>
<name>Выбрать</name>
<title>
<key>ru</key>
<value>Выбрать</value>
</title>
<id>1</id>
<toolTip>
<key>ru</key>
<value>Выбрать отмеченные наборы</value>
</toolTip>
<use>
<common>true</common>
</use>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.ChooseValue</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>Выбрать</name>
</handler>
</action>
<representation>TextPicture</representation>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<formCommands>
<name>ОтметитьВсеНаборы</name>
<title>
<key>ru</key>
<value>Отметить все наборы</value>
</title>
<id>2</id>
<toolTip>
<key>ru</key>
<value>Отметить все наборы</value>
</toolTip>
<use>
<common>true</common>
</use>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.CheckAll</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ОтметитьВсеНаборы</name>
</handler>
</action>
<representation>Picture</representation>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<formCommands>
<name>СнятьОтметкуВсемНаборам</name>
<title>
<key>ru</key>
<value>Снять отметку всем наборам</value>
</title>
<id>3</id>
<toolTip>
<key>ru</key>
<value>Снять отметку всем наборам</value>
</toolTip>
<use>
<common>true</common>
</use>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.UncheckAll</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>СнятьОтметкуВсемНаборам</name>
</handler>
</action>
<representation>Picture</representation>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<parameters>
<name>ВыбранныеНаборы</name>
<valueType>
<types>ValueList</types>
</valueType>
</parameters>
<parameters>
<name>ЭтоДополнительноеСведение</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<parameters>
<name>РедактированиеСоставаНаборовРазрешено</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<commandInterface>
<navigationPanel/>
<commandBar/>
</commandInterface>
</form:Form>
@@ -1,213 +0,0 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Перем ПерваяЧастьИмени, ВтораяЧастьИмени;
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если НЕ Параметры.РедактированиеСоставаНаборовРазрешено Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Нет;
Элементы.Выбран.ТолькоПросмотр = Истина;
Элементы.Набор.ТолькоПросмотр = Истина;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| 0 КАК Выбран,
| НаборыДополнительныхРеквизитовИСведений.Ссылка КАК Набор,
| НаборыДополнительныхРеквизитовИСведений.Наименование
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений КАК НаборыДополнительныхРеквизитовИСведений
|
|УПОРЯДОЧИТЬ ПО
| НаборыДополнительныхРеквизитовИСведений.Ссылка ИЕРАРХИЯ
|АВТОУПОРЯДОЧИВАНИЕ";
НачатьТранзакцию();
Попытка
Дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
МассивУдаляемыхСтрок = Новый Массив;
Для каждого СтрокаДерева Из Дерево.Строки Цикл
ВидыСвойствНабора = УправлениеСвойствамиСлужебный.ВидыСвойствНабора(СтрокаДерева.Набор);
Если Параметры.ЭтоДополнительноеСведение
И НЕ ВидыСвойствНабора.ДополнительныеСведения Тогда
МассивУдаляемыхСтрок.Добавить(СтрокаДерева);
ИначеЕсли НЕ Параметры.ЭтоДополнительноеСведение
И НЕ ВидыСвойствНабора.ДополнительныеРеквизиты Тогда
МассивУдаляемыхСтрок.Добавить(СтрокаДерева);
КонецЕсли;
КонецЦикла;
Для Каждого ЭлементУдаляемаяСтрока Из МассивУдаляемыхСтрок Цикл
Дерево.Строки.Удалить(ЭлементУдаляемаяСтрока);
КонецЦикла;
ВыбранныеНаборы = Параметры.ВыбранныеНаборы;
Для каждого Набор Из ВыбранныеНаборы Цикл
Строка = Дерево.Строки.Найти(Набор.Значение, "Набор", Истина);
Если Строка <> Неопределено Тогда
Строка.Выбран = Истина;
КонецЕсли;
КонецЦикла;
Для Каждого Строка Из Дерево.Строки Цикл
ПроверитьФлагУСтроки(Строка);
КонецЦикла;
ЗначениеВРеквизитФормы(Дерево, "ДеревоНаборов");
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ШАПКИ ФОРМЫ
&НаКлиенте
Процедура ВыбранПриИзменении(Элемент)
ТекущиеДанные = Элементы.ДеревоНаборов.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если ТекущиеДанные.Выбран = 2 Тогда
ТекущиеДанные.Выбран = 0;
КонецЕсли;
Строки = ТекущиеДанные.ПолучитьЭлементы();
УстановитьФлагПодчиненнымСтрокам(Строки, ТекущиеДанные.Выбран);
Родитель = ТекущиеДанные.ПолучитьРодителя();
Пока Родитель <> Неопределено Цикл
Есть0 = Ложь;
Есть1 = Ложь;
Есть2 = Ложь;
Для Каждого Строка Из Родитель.ПолучитьЭлементы() Цикл
Есть0 = Есть0 ИЛИ (Строка.Выбран = 0);
Есть1 = Есть1 ИЛИ (Строка.Выбран = 1);
Есть2 = Есть2 ИЛИ (Строка.Выбран = 2);
КонецЦикла;
Если Не Есть1 И Не Есть2 Тогда
Родитель.Выбран = 0;
ИначеЕсли Не Есть2 И Не Есть0 Тогда
Родитель.Выбран = 1;
Иначе
Родитель.Выбран = 2;
КонецЕсли;
Родитель = Родитель.ПолучитьРодителя();
КонецЦикла;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ КОМАНД ФОРМЫ
&НаКлиенте
Процедура Выбрать(Команда)
ВыбранныеНаборы = Новый СписокЗначений;
ЗаполнитьВыбранныеНаборы(ВыбранныеНаборы, ДеревоНаборов.ПолучитьЭлементы());
ОповеститьОВыборе(ВыбранныеНаборы);
КонецПроцедуры
&НаКлиенте
Процедура ОтметитьВсеНаборы(Команда)
УстановитьФлагПодчиненнымСтрокам(ДеревоНаборов.ПолучитьЭлементы(), 1);
КонецПроцедуры
&НаКлиенте
Процедура СнятьОтметкуВсемНаборам(Команда)
УстановитьФлагПодчиненнымСтрокам(ДеревоНаборов.ПолучитьЭлементы(), 0);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
&НаКлиенте
Процедура ЗаполнитьВыбранныеНаборы(ВыбранныеНаборы, Строки)
Для каждого Строка Из Строки Цикл
ПодчиненныеСтроки = Строка.ПолучитьЭлементы();
Если ПодчиненныеСтроки.Количество() <> 0 Тогда
ЗаполнитьВыбранныеНаборы(ВыбранныеНаборы, ПодчиненныеСтроки);
ИначеЕсли Строка.Выбран Тогда
ВыбранныеНаборы.Добавить(Строка.Набор, Строка.Наименование);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ПроверитьФлагУСтроки(СтрокаДерева)
Если СтрокаДерева.Строки.Количество() = 0 Тогда
Возврат;
КонецЕсли;
Есть0 = Ложь;
Есть1 = Ложь;
Есть2 = Ложь;
Для Каждого Строка Из СтрокаДерева.Строки Цикл
ПроверитьФлагУСтроки(Строка);
Есть0 = Есть0 ИЛИ (Строка.Выбран = 0);
Есть1 = Есть1 ИЛИ (Строка.Выбран = 1);
Есть2 = Есть2 ИЛИ (Строка.Выбран = 2);
КонецЦикла;
Если Не Есть1 И Не Есть2 Тогда
СтрокаДерева.Выбран = 0;
ИначеЕсли Не Есть2 И Не Есть0 Тогда
СтрокаДерева.Выбран = 1;
Иначе
СтрокаДерева.Выбран = 2;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьФлагПодчиненнымСтрокам(Строки, Флаг)
Для Каждого Строка Из Строки Цикл
Строка.Выбран = Флаг;
УстановитьФлагПодчиненнымСтрокам(Строка.ПолучитьЭлементы(), Флаг)
КонецЦикла;
КонецПроцедуры
@@ -157,6 +157,7 @@
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<representation>HierarchicalList</representation> <representation>HierarchicalList</representation>
<readOnly>true</readOnly>
<changeRowSet>true</changeRowSet> <changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder> <changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
@@ -13,7 +13,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>НаименованиеРасширеннаяПодсказка</name>
<id>25</id> <id>3</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -44,461 +44,6 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormGroup">
<name>ТаблицыСвойств</name>
<id>24</id>
<items xsi:type="form:Table">
<name>ДополнительныеРеквизиты</name>
<id>10</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеРеквизиты</segments>
</dataPath>
<titleLocation>Top</titleLocation>
<items xsi:type="form:FormField">
<name>НомерСтроки</name>
<id>13</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеРеквизиты.LineNumber</segments>
</dataPath>
<extendedTooltip>
<name>НомерСтрокиРасширеннаяПодсказка</name>
<id>38</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НомерСтрокиКонтекстноеМеню</name>
<id>14</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Свойство</name>
<id>15</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеРеквизиты.Свойство</segments>
</dataPath>
<extendedTooltip>
<name>СвойствоРасширеннаяПодсказка</name>
<id>40</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СвойствоКонтекстноеМеню</name>
<id>16</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>ДополнительныеРеквизитыКоманднаяПанель</name>
<id>12</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<searchStringAddition>
<name>ДополнительныеРеквизитыСтрокаПоиска</name>
<id>29</id>
<extendedTooltip>
<name>ДополнительныеРеквизитыСтрокаПоискаРасширеннаяПодсказка</name>
<id>31</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеРеквизитыСтрокаПоискаКонтекстноеМеню</name>
<id>30</id>
<autoFill>true</autoFill>
</contextMenu>
<source>ДополнительныеРеквизиты</source>
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchStringAddition>
<viewStatusAddition>
<name>ДополнительныеРеквизитыСостояниеПросмотра</name>
<id>32</id>
<extendedTooltip>
<name>ДополнительныеРеквизитыСостояниеПросмотраРасширеннаяПодсказка</name>
<id>34</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеРеквизитыСостояниеПросмотраКонтекстноеМеню</name>
<id>33</id>
<autoFill>true</autoFill>
</contextMenu>
<type>ViewStatusAddition</type>
<source>ДополнительныеРеквизиты</source>
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</viewStatusAddition>
<searchControlAddition>
<name>ДополнительныеРеквизитыУправлениеПоиском</name>
<id>35</id>
<extendedTooltip>
<name>ДополнительныеРеквизитыУправлениеПоискомРасширеннаяПодсказка</name>
<id>37</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеРеквизитыУправлениеПоискомКонтекстноеМеню</name>
<id>36</id>
<autoFill>true</autoFill>
</contextMenu>
<type>SearchControlAddition</type>
<source>ДополнительныеРеквизиты</source>
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchControlAddition>
<extendedTooltip>
<name>ДополнительныеРеквизитыРасширеннаяПодсказка</name>
<id>28</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеРеквизитыКонтекстноеМеню</name>
<id>11</id>
<autoFill>true</autoFill>
</contextMenu>
<representation>HierarchicalList</representation>
<changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<autoMaxRowsCount>true</autoMaxRowsCount>
<selectionMode>MultiRow</selectionMode>
<header>true</header>
<headerHeight>1</headerHeight>
<footerHeight>1</footerHeight>
<horizontalScrollBar>AutoUse</horizontalScrollBar>
<verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines>
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
<autoInsertNewRow>true</autoInsertNewRow>
<searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<enableDrag>true</enableDrag>
<searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation>
<searchControlLocation>None</searchControlLocation>
<autoMaxCardHeight>true</autoMaxCardHeight>
<rowFilter xsi:type="core:UndefinedValue"/>
</items>
<items xsi:type="form:Table">
<name>ДополнительныеСведения</name>
<id>17</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеСведения</segments>
</dataPath>
<titleLocation>Top</titleLocation>
<items xsi:type="form:FormField">
<name>НомерСтроки1</name>
<id>20</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеСведения.LineNumber</segments>
</dataPath>
<extendedTooltip>
<name>НомерСтроки1РасширеннаяПодсказка</name>
<id>60</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НомерСтроки1КонтекстноеМеню</name>
<id>21</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Свойство1</name>
<id>22</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ДополнительныеСведения.Свойство</segments>
</dataPath>
<extendedTooltip>
<name>Свойство1РасширеннаяПодсказка</name>
<id>62</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>Свойство1КонтекстноеМеню</name>
<id>23</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>ДополнительныеСведенияКоманднаяПанель</name>
<id>19</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<searchStringAddition>
<name>ДополнительныеСведенияСтрокаПоиска</name>
<id>51</id>
<extendedTooltip>
<name>ДополнительныеСведенияСтрокаПоискаРасширеннаяПодсказка</name>
<id>53</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеСведенияСтрокаПоискаКонтекстноеМеню</name>
<id>52</id>
<autoFill>true</autoFill>
</contextMenu>
<source>ДополнительныеСведения</source>
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchStringAddition>
<viewStatusAddition>
<name>ДополнительныеСведенияСостояниеПросмотра</name>
<id>54</id>
<extendedTooltip>
<name>ДополнительныеСведенияСостояниеПросмотраРасширеннаяПодсказка</name>
<id>56</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеСведенияСостояниеПросмотраКонтекстноеМеню</name>
<id>55</id>
<autoFill>true</autoFill>
</contextMenu>
<type>ViewStatusAddition</type>
<source>ДополнительныеСведения</source>
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</viewStatusAddition>
<searchControlAddition>
<name>ДополнительныеСведенияУправлениеПоиском</name>
<id>57</id>
<extendedTooltip>
<name>ДополнительныеСведенияУправлениеПоискомРасширеннаяПодсказка</name>
<id>59</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеСведенияУправлениеПоискомКонтекстноеМеню</name>
<id>58</id>
<autoFill>true</autoFill>
</contextMenu>
<type>SearchControlAddition</type>
<source>ДополнительныеСведения</source>
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchControlAddition>
<extendedTooltip>
<name>ДополнительныеСведенияРасширеннаяПодсказка</name>
<id>50</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДополнительныеСведенияКонтекстноеМеню</name>
<id>18</id>
<autoFill>true</autoFill>
</contextMenu>
<representation>HierarchicalList</representation>
<changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<autoMaxRowsCount>true</autoMaxRowsCount>
<selectionMode>MultiRow</selectionMode>
<header>true</header>
<headerHeight>1</headerHeight>
<footerHeight>1</footerHeight>
<horizontalScrollBar>AutoUse</horizontalScrollBar>
<verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines>
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
<autoInsertNewRow>true</autoInsertNewRow>
<searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<enableDrag>true</enableDrag>
<searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation>
<searchControlLocation>None</searchControlLocation>
<autoMaxCardHeight>true</autoMaxCardHeight>
<rowFilter xsi:type="core:UndefinedValue"/>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Таблицы свойств</value>
</title>
<toolTip>
<key>ru</key>
<value>Таблицы свойств</value>
</toolTip>
<extendedTooltip>
<name>ТаблицыСвойствРасширеннаяПодсказка</name>
<id>27</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<autoCommandBar> <autoCommandBar>
<name>ФормаКоманднаяПанель</name> <name>ФормаКоманднаяПанель</name>
<id>-1</id> <id>-1</id>
@@ -14,22 +14,14 @@
ИспользоватьДопРеквизиты = ВидыСвойствНабора.ДополнительныеРеквизиты; ИспользоватьДопРеквизиты = ВидыСвойствНабора.ДополнительныеРеквизиты;
ИспользоватьДопСведения = ВидыСвойствНабора.ДополнительныеСведения; ИспользоватьДопСведения = ВидыСвойствНабора.ДополнительныеСведения;
Если НЕ ИспользоватьДопРеквизиты Тогда
Элементы.ДополнительныеРеквизиты.Видимость = Ложь;
КонецЕсли;
Если НЕ ИспользоватьДопСведения Тогда
Элементы.ДополнительныеСведения.Видимость = Ложь;
КонецЕсли;
Если ИспользоватьДопРеквизиты И ИспользоватьДопСведения Тогда Если ИспользоватьДопРеквизиты И ИспользоватьДопСведения Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Наборы дополнительных реквизитов и сведений)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Группа наборов дополнительных реквизитов и сведений)'")
ИначеЕсли ИспользоватьДопРеквизиты Тогда ИначеЕсли ИспользоватьДопРеквизиты Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Наборы дополнительных реквизитов)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Группа наборов дополнительных реквизитов)'")
ИначеЕсли ИспользоватьДопСведения Тогда ИначеЕсли ИспользоватьДопСведения Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Наборы дополнительных сведений)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Группа наборов дополнительных сведений)'")
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -9,375 +9,28 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
// Раздельная настройка дополнительных реквизитов и дополнительных сведений. ТолькоПросмотр = Истина;
Элементы.ДополнительныеРеквизитыЗаполнятьОбязательно.Подсказка =
Метаданные.Справочники.НаборыДополнительныхРеквизитовИСведений.ТабличныеЧасти
.ДополнительныеРеквизиты.Реквизиты.ЗаполнятьОбязательно.Подсказка;
Элементы.Наименование.ТолькоПросмотр = Истина;
Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
ЗаполнитьИспользованиеДополнительныхСвойств();
ЗаполнитьДополнительныеСвойстваВФорме();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
// При записи свойства необходимо перенести свойство в соответствующую группу.
Если ИмяСобытия = "Запись_ДополнительныеРеквизитыИСведения" Тогда
ПроверитьСоставыТаблицПослеЗаписиСвойства(Параметр.ЭтоДополнительноеСведение, Источник);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
ЗаполнитьИспользованиеДополнительныхСвойств();
ЗаполнитьДополнительныеСвойстваВФорме();
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект)
ЗаполнитьДополнительныеСвойстваВОбъекте(ТекущийОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_НаборыДополнительныхРеквизитовИСведений", Объект.Ссылка, Объект.Ссылка);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ТАБЛИЦЫ ФОРМЫ ДополнительныеРеквизиты
&НаКлиенте
Процедура ДополнительныеРеквизитыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
Если Прав(Поле.Имя, СтрДлина("Свойство")) = "Свойство" Тогда
ТаблицаВыбор(Элемент, ВыбраннаяСтрока, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеРеквизитыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Отказ = Истина;
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеРеквизитыПередУдалением(Элемент, Отказ)
ДополнительныеСвойстваПередУдалением(Элемент, ДополнительныеРеквизиты);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеРеквизитыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
ОбработкаВыбораСвойства(ВыбранноеЗначение, ДополнительныеРеквизиты);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ТАБЛИЦЫ ФОРМЫ ДополнительныеСведения
&НаКлиенте
Процедура ДополнительныеСведенияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Отказ = Истина;
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеСведенияПередУдалением(Элемент, Отказ)
ДополнительныеСвойстваПередУдалением(Элемент, ДополнительныеСведения);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеСведенияВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ТаблицаВыбор(Элемент, ВыбраннаяСтрока, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеСведенияОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
ОбработкаВыбораСвойства(ВыбранноеЗначение, ДополнительныеСведения);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ КОМАНД ФОРМЫ
&НаКлиенте
Процедура ПодборДопРеквизитов(Команда)
ПодобратьДополнительныеСвойства(Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ПодборДопСведений(Команда)
ПодобратьДополнительныеСвойства(Истина);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
Процедура ЗаполнитьИспользованиеДополнительныхСвойств()
ВидыСвойствНабора = УправлениеСвойствамиСлужебный.ВидыСвойствНабора(Объект.Ссылка); ВидыСвойствНабора = УправлениеСвойствамиСлужебный.ВидыСвойствНабора(Объект.Ссылка);
ИспользоватьДопРеквизиты = ВидыСвойствНабора.ДополнительныеРеквизиты; ИспользоватьДопРеквизиты = ВидыСвойствНабора.ДополнительныеРеквизиты;
ИспользоватьДопСведения = ВидыСвойствНабора.ДополнительныеСведения; ИспользоватьДопСведения = ВидыСвойствНабора.ДополнительныеСведения;
Если НЕ ИспользоватьДопРеквизиты И НЕ ИспользоватьДопСведения Тогда Если ИспользоватьДопРеквизиты И ИспользоватьДопСведения Тогда
Если Параметры.СкрытьДополнительныеРеквизиты Тогда
ВызватьИсключение НСтр("ru = 'Использование дополнительных сведений не определено.'");
ИначеЕсли Параметры.СкрытьДополнительныеСведения Тогда
ВызватьИсключение НСтр("ru = 'Использование дополнительных реквизитов не определено.'");
Иначе
ВызватьИсключение НСтр("ru = 'Использование дополнительных реквизитов и
|дополнительных сведений не определено.'");
КонецЕсли;
КонецЕсли;
ПоказыватьДопРеквизиты = ИспользоватьДопРеквизиты И НЕ Параметры.СкрытьДополнительныеРеквизиты;
ПоказыватьДопСведения = ИспользоватьДопСведения И НЕ Параметры.СкрытьДополнительныеСведения;
Если НЕ ПоказыватьДопРеквизиты Тогда
Элементы.ДополнительныеРеквизиты.Видимость = Ложь;
Элементы.ДополнительныеСведения.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
ИначеЕсли НЕ ПоказыватьДопСведения Тогда
Элементы.ДополнительныеСведения.Видимость = Ложь;
Элементы.ДополнительныеРеквизиты.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
КонецЕсли;
Если ПоказыватьДопРеквизиты И ПоказыватьДопСведения Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных реквизитов и сведений)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных реквизитов и сведений)'")
ИначеЕсли ПоказыватьДопРеквизиты Тогда
ИначеЕсли ИспользоватьДопРеквизиты Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных реквизитов)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных реквизитов)'")
ИначеЕсли ПоказыватьДопСведения Тогда
ИначеЕсли ИспользоватьДопСведения Тогда
Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных сведений)'") Заголовок = Объект.Наименование + " " + НСтр("ru = '(Набор дополнительных сведений)'")
КонецЕсли; КонецЕсли;
КонецПроцедуры Если НЕ ИспользоватьДопРеквизиты И Объект.ДополнительныеРеквизиты.Количество() = 0 Тогда
Элементы.ДополнительныеРеквизиты.Видимость = Ложь;
Процедура ЗаполнитьДополнительныеСвойстваВФорме()
ДополнительныеРеквизиты.Очистить();
ДополнительныеСведения.Очистить();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДополнительныеРеквизитыИСведения.Ссылка,
| ДополнительныеРеквизитыИСведения.ЭтоДополнительноеСведение
|ИЗ
| ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения";
НачатьТранзакцию();
Попытка
ВсеСвойства = Запрос.Выполнить().Выгрузить();
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
ВсеСвойства.Индексы.Добавить("Ссылка");
Если ПоказыватьДопРеквизиты Тогда
Для Каждого Строка Из Объект.ДополнительныеРеквизиты Цикл
Свойство = ВсеСвойства.Найти(Строка.Свойство, "Ссылка");
Если Свойство = Неопределено Тогда
Продолжить;
КонецЕсли;
Если НЕ Свойство.ЭтоДополнительноеСведение Тогда
НоваяСтрока = ДополнительныеРеквизиты.Добавить();
НоваяСтрока.Свойство = Строка.Свойство;
НоваяСтрока.ЗаполнятьОбязательно =
?(Строка.ЗаполнятьОбязательно = 0,
"",
?(Строка.ЗаполнятьОбязательно = 1, "Да", "Нет"));
КонецЕсли;
КонецЦикла;
КонецЕсли; КонецЕсли;
Если ПоказыватьДопСведения Тогда Если НЕ ИспользоватьДопСведения И Объект.ДополнительныеСведения.Количество() = 0 Тогда
Для Каждого Строка Из Объект.ДополнительныеСведения Цикл Элементы.ДополнительныеСведения.Видимость = Ложь;
Свойство = ВсеСвойства.Найти(Строка.Свойство, "Ссылка");
Если Свойство = Неопределено Тогда
Продолжить;
КонецЕсли;
Если Свойство.ЭтоДополнительноеСведение Тогда
НоваяСтрока = ДополнительныеСведения.Добавить();
НоваяСтрока.Свойство = Строка.Свойство;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Процедура ЗаполнитьДополнительныеСвойстваВОбъекте(ТекущийОбъект)
Если ПоказыватьДопРеквизиты ИЛИ НЕ ИспользоватьДопРеквизиты Тогда
ТекущийОбъект.ДополнительныеРеквизиты.Очистить();
КонецЕсли;
Если ПоказыватьДопСведения ИЛИ НЕ ИспользоватьДопСведения Тогда
ТекущийОбъект.ДополнительныеСведения.Очистить();
КонецЕсли;
Если ПоказыватьДопРеквизиты Тогда
Для Каждого Строка Из ДополнительныеРеквизиты Цикл
НоваяСтрока = ТекущийОбъект.ДополнительныеРеквизиты.Добавить();
НоваяСтрока.Свойство = Строка.Свойство;
НоваяСтрока.ЗаполнятьОбязательно =
?(Строка.ЗаполнятьОбязательно = "",
0,
?(Строка.ЗаполнятьОбязательно = "Да", 1, 2));
КонецЦикла;
КонецЕсли;
Если ПоказыватьДопСведения Тогда
Для каждого Строка Из ДополнительныеСведения Цикл
НоваяСтрока = ТекущийОбъект.ДополнительныеСведения.Добавить();
НоваяСтрока.Свойство = Строка.Свойство;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеСвойстваПередУдалением(Элемент, ТаблицаСвойств)
Для каждого ВыделеннаяСтрока Из Элемент.ВыделенныеСтроки Цикл
Свойство = Элемент.ДанныеСтроки(ВыделеннаяСтрока).Свойство;
Строки = ТаблицаСвойств.НайтиСтроки(Новый Структура("Свойство", Свойство));
ТаблицаСвойств.Удалить(Строки[0]);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура ПодобратьДополнительныеСвойства(ЭтоДополнительноеСведение)
Отбор = Новый Структура("ЭтоДополнительноеСведение", ЭтоДополнительноеСведение);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Отбор", Отбор);
ПараметрыФормы.Вставить("ЗакрыватьПриВыборе", Ложь);
ВыбранныеСвойства = Новый Массив;
Если ЭтоДополнительноеСведение Тогда
Для Каждого Строка Из ДополнительныеСведения Цикл
ВыбранныеСвойства.Добавить(Строка.Свойство);
КонецЦикла;
ВладелецФормы = Элементы.ДополнительныеСведения;
Иначе
Для Каждого Строка Из ДополнительныеРеквизиты Цикл
ВыбранныеСвойства.Добавить(Строка.Свойство);
КонецЦикла;
ВладелецФормы = Элементы.ДополнительныеРеквизиты;
КонецЕсли;
ПараметрыФормы.Вставить("ВыбранныеЗначения", ВыбранныеСвойства);
ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаВыбора",
ПараметрыФормы,
ВладелецФормы,
Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура ПроверитьСоставыТаблицПослеЗаписиСвойства(Знач ЭтоДополнительноеСведение, Знач Свойство)
// Определение из какой таблицы в какую может потребоваться переносить свойство.
Если ЭтоДополнительноеСведение Тогда
ТаблицаПриемник = ДополнительныеСведения;
ТаблицаИсточник = ДополнительныеРеквизиты;
Иначе
ТаблицаПриемник = ДополнительныеРеквизиты;
ТаблицаИсточник = ДополнительныеСведения;
КонецЕсли;
// Проверка входит ли свойство в таблицу, из которой нужно переносить.
Строки = ТаблицаИсточник.НайтиСтроки(Новый Структура("Свойство", Свойство));
Если Строки.Количество() = 0 Тогда
Возврат;
КонецЕсли;
// Удаление из одной таблицы.
Индекс = ТаблицаИсточник.Индекс(Строки[0]);
ТаблицаИсточник.Удалить(Индекс);
// Добавление в другую таблицу.
НоваяСтрока = ТаблицаПриемник.Добавить();
НоваяСтрока.Свойство = Свойство;
КонецПроцедуры
&НаКлиенте
Процедура ТаблицаВыбор(Элемент, ВыбраннаяСтрока, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Элемент.ДанныеСтроки(ВыбраннаяСтрока).Свойство);
ОткрытьФорму(
"ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Форма.ФормаЭлемента",
ПараметрыФормы);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаВыбораСвойства(ВыбранноеЗначение, Таблица)
Если ТипЗнч(ВыбранноеЗначение) = Тип("Массив") Тогда
Для каждого Значение Из ВыбранноеЗначение Цикл
ДобавитьВыбранноеСвойство(Значение, Таблица);
КонецЦикла;
Иначе
ДобавитьВыбранноеСвойство(ВыбранноеЗначение, Таблица);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ДобавитьВыбранноеСвойство(Значение, Таблица)
Если ТипЗнч(Значение) = Тип("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения") Тогда
Отбор = Новый Структура("Свойство", Значение);
Если Таблица.НайтиСтроки(Отбор).Количество() = 0 Тогда
Таблица.Добавить().Свойство = Значение;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -1,9 +1,9 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 9.00.8112.16470"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 9.00.8112.16470"></meta></head><body>
<p>Администратор системы может настроить наборы дополнительных свойств для определенных объектов системы. Способ хранения дополнительного свойства в информационной базе и место размещения на форме объекта зависит от типа свойства: дополнительный реквизит или сведение.</p> <p>Администратор системы может настроить наборы дополнительных свойств для определенных объектов системы. Способ хранения дополнительного свойства в информационной базе и место размещения на форме объекта зависит от типа свойства: дополнительный реквизит или сведение.</p>
<p>Предопределенные наборы и группы наборов соответствуют объектам конфигурации, в которых можно использовать дополнительные реквизиты и сведения. Добавление новых наборов и групп наборов невозможно.</p> <p>Предопределенные наборы соответствуют объектам конфигурации, в которых можно использовать дополнительные реквизиты и сведения. Добавление новых наборов невозможно.</p>
<p>В форме набора с помощью команды Подбор можно добавить объекту новый дополнительный реквизит или сведение.<br></p> <p>Для набора выбранного в левой таблице можно добавить новые дополнительные свойства с помощью командной панели в правой таблице.</p>
<p>Примечание:</p> <p>Примечание:</p>
<blockquote style="MARGIN-RIGHT: 0px" dir="ltr"> <blockquote style="MARGIN-RIGHT: 0px" dir="ltr">
<p>При удалении свойства из набора, значение свойства сохраняется в информационной базе до тех пор, пока не будет очищено. При этом удаленное из набора дополнительное свойство будет отображаться на форме объекта или форме дополнительных сведений особым образом.</p></blockquote> <p>При пометке на удаление свойства в наборе, значения свойства сохраняется в объектах до тех пор, пока не будут очищены. При этом свойство, помеченное на удаление в наборе, будет отображаться на форме объекта или форме дополнительных сведений особым образом.<br>При необходимости можно снять пометку удаления.</p></blockquote>
<p>См. также:</p> <p>См. также:</p>
<ul><li><a href="ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения/Help">Дополнительные реквизиты и сведения</a></li></ul></body></html> <ul><li><a href="ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения/Help">Дополнительные реквизиты и сведения</a></li></ul></body></html>
@@ -0,0 +1,97 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЙ ПРОГРАММНЫЙ ИНТЕРФЕЙС
// Обновляет состав наименований предопределенных наборов в
// параметрах дополнительных реквизитов и сведений.
//
// Параметры:
// ЕстьИзменения - Булево (возвращаемое значение) - если производилась запись,
// устанавливается Истина, иначе не изменяется.
//
Процедура ОбновитьСоставНаименованийПредопределенныхНаборов(ЕстьИзменения = Неопределено) Экспорт
УстановитьПривилегированныйРежим(Истина);
ПредопределенныеНаборы = ПредопределенныеНаборы();
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Константа.ПараметрыДополнительныхРеквизитовИСведений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
НачатьТранзакцию();
Попытка
Блокировка.Заблокировать();
Параметры = ОбновлениеИнформационнойБазы.ПараметрыРаботыПрограммы(
"ПараметрыДополнительныхРеквизитовИСведений");
ЕстьУдаленные = Ложь;
Сохраненные = Неопределено;
Если Параметры.Свойство("ПредопределенныеНаборыДополнительныхРеквизитовИСведений") Тогда
Сохраненные = Параметры.ПредопределенныеНаборыДополнительныхРеквизитовИСведений;
Если НЕ ПредопределенныеНаборыСовпадают(ПредопределенныеНаборы, Сохраненные, ЕстьУдаленные) Тогда
Сохраненные = Неопределено;
КонецЕсли;
КонецЕсли;
Если Сохраненные = Неопределено Тогда
ЕстьИзменения = Истина;
ОбновлениеИнформационнойБазы.УстановитьПараметрРаботыПрограммы(
"ПараметрыДополнительныхРеквизитовИСведений",
"ПредопределенныеНаборыДополнительныхРеквизитовИСведений",
ПредопределенныеНаборы);
КонецЕсли;
ОбновлениеИнформационнойБазы.ДобавитьИзмененияПараметраРаботыПрограммы(
"ПараметрыДополнительныхРеквизитовИСведений",
"ПредопределенныеНаборыДополнительныхРеквизитовИСведений",
Новый ФиксированнаяСтруктура("ЕстьУдаленные", ЕстьУдаленные));
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
Функция ПредопределенныеНаборы()
ПредопределенныеНаборы = Новый Соответствие;
ИменаПредопределенных = СтандартныеПодсистемыСервер.ИменаПредопределенныхДанных(
"Справочник.НаборыДополнительныхРеквизитовИСведений");
Для каждого Имя Из ИменаПредопределенных Цикл
ПредопределенныеНаборы.Вставить(
Имя, УправлениеСвойствамиСлужебный.НаименованиеПредопределенногоНабора(Имя));
КонецЦикла;
Возврат Новый ФиксированноеСоответствие(ПредопределенныеНаборы);
КонецФункции
Функция ПредопределенныеНаборыСовпадают(НовыеНаборы, СтарыеНаборы, ЕстьУдаленные)
ПредопределенныеНаборыСовпадают =
НовыеНаборы.Количество() = СтарыеНаборы.Количество();
Для каждого Набор Из СтарыеНаборы Цикл
Если НовыеНаборы.Получить(Набор.Ключ) = Неопределено Тогда
ПредопределенныеНаборыСовпадают = Ложь;
ЕстьУдаленные = Истина;
Прервать;
ИначеЕсли Набор.Значение <> НовыеНаборы.Получить(Набор.Ключ) Тогда
ПредопределенныеНаборыСовпадают = Ложь;
КонецЕсли;
КонецЦикла;
Возврат ПредопределенныеНаборыСовпадают;
КонецФункции
#КонецЕсли
@@ -9,9 +9,8 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ЭтоГруппа Тогда Если НЕ ЭтоГруппа Тогда
УправлениеСвойствамиСлужебный.ПередЗаписьюГруппыНаборовСвойств(ЭтотОбъект);
Иначе
// Удаление дублей и пустых строк. // Удаление дублей и пустых строк.
ВыбранныеСвойства = Новый Соответствие; ВыбранныеСвойства = Новый Соответствие;
УдаляемыеСвойства = Новый Массив; УдаляемыеСвойства = Новый Массив;
@@ -50,20 +49,13 @@
Для каждого УдаляемоеСвойство Из УдаляемыеСвойства Цикл Для каждого УдаляемоеСвойство Из УдаляемыеСвойства Цикл
ДополнительныеСведения.Удалить(УдаляемоеСвойство); ДополнительныеСведения.Удалить(УдаляемоеСвойство);
КонецЦикла; КонецЦикла;
КонецЕсли;
КонецПроцедуры // Вычисление количества свойств не помеченных на удаление.
КоличествоРеквизитов = Формат(ДополнительныеРеквизиты.НайтиСтроки(
Новый Структура("ПометкаУдаления", Ложь)).Количество(), "ЧГ=");
Процедура ПриЗаписи() КоличествоСведений = Формат(ДополнительныеСведения.НайтиСтроки(
Новый Структура("ПометкаУдаления", Ложь)).Количество(), "ЧГ=");
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ЗначениеЗаполнено(Родитель) Тогда
ОсновнойОбъект = Родитель.ПолучитьОбъект();
ЗаблокироватьДанныеДляРедактирования(ОсновнойОбъект.Ссылка);
ОсновнойОбъект.Записать();
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -68,9 +68,13 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>Parent</name> <name>Parent</name>
<synonym>
<key>ru</key>
<value>Входит в группу</value>
</synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Группа, к которой относится набор</value> <value>Группа, к которой относится набор.</value>
</toolTip> </toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
@@ -83,10 +87,6 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>Description</name> <name>Description</name>
<synonym>
<key>ru</key>
<value>Набор свойств</value>
</synonym>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Наименование набора свойств</value> <value>Наименование набора свойств</value>
@@ -128,56 +128,56 @@
<predefined> <predefined>
<items id="be950181-561c-47a1-8ed2-d240d175ce5f"> <items id="be950181-561c-47a1-8ed2-d240d175ce5f">
<name>Документ_Встреча</name> <name>Документ_Встреча</name>
<description>Доп. свойства документа &quot;Встреча&quot;</description> <description>Встреча</description>
<code xsi:type="core:StringValue"> <code xsi:type="core:StringValue">
<value></value> <value></value>
</code> </code>
</items> </items>
<items id="f00b4fb9-334e-4a18-b5bc-0e56b18e66a2"> <items id="f00b4fb9-334e-4a18-b5bc-0e56b18e66a2">
<name>Документ_ЗапланированноеВзаимодействие</name> <name>Документ_ЗапланированноеВзаимодействие</name>
<description>Доп. свойства документа &quot;Запланированное взаимодействие&quot;</description> <description>Запланированное взаимодействие</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="95fb09ad-333d-4be6-aa1f-ab5195d20a38">
<name>Документ_ТелефонныйЗвонок</name>
<description>Доп. свойства документа &quot;Телефонный звонок&quot;</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="db5de384-751b-41d1-be73-ca7a03ba3869">
<name>Документ_ЭлектронноеПисьмоВходящее</name>
<description>Доп. свойства документа &quot;Электронное письмо входящее&quot;</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="ea29cfd1-ab78-4d2f-aa5c-338ea6f9172e">
<name>Документ_ЭлектронноеПисьмоИсходящее</name>
<description>Доп. свойства документа &quot;Электронное письмо исходящее&quot;</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="e528d7dc-346b-4deb-92ec-b6cefa78c66f">
<name>Документ_СообщениеSMS</name>
<description>Доп. свойства документа&quot; Сообщение SMS&quot;</description>
<code xsi:type="core:StringValue"> <code xsi:type="core:StringValue">
<value></value> <value></value>
</code> </code>
</items> </items>
<items id="4b1f6bdf-16e9-480e-8012-6474f53e56ac"> <items id="4b1f6bdf-16e9-480e-8012-6474f53e56ac">
<name>Справочник_ПапкиФайлов</name> <name>Справочник_ПапкиФайлов</name>
<description>Доп. свойства справочника &quot;Папки файлов&quot;</description> <description>Папка</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="e528d7dc-346b-4deb-92ec-b6cefa78c66f">
<name>Документ_СообщениеSMS</name>
<description>Сообщение SMS</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="95fb09ad-333d-4be6-aa1f-ab5195d20a38">
<name>Документ_ТелефонныйЗвонок</name>
<description>Телефонный звонок</description>
<code xsi:type="core:StringValue"> <code xsi:type="core:StringValue">
<value></value> <value></value>
</code> </code>
</items> </items>
<items id="00e33f58-9a02-471c-968b-22cb087ac0f8"> <items id="00e33f58-9a02-471c-968b-22cb087ac0f8">
<name>Справочник_Файлы</name> <name>Справочник_Файлы</name>
<description>Доп. свойства справочника &quot;Файлы&quot;</description> <description>Файл</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="db5de384-751b-41d1-be73-ca7a03ba3869">
<name>Документ_ЭлектронноеПисьмоВходящее</name>
<description>Электронное письмо входящее</description>
<code xsi:type="core:StringValue">
<value></value>
</code>
</items>
<items id="ea29cfd1-ab78-4d2f-aa5c-338ea6f9172e">
<name>Документ_ЭлектронноеПисьмоИсходящее</name>
<description>Электронное письмо исходящее</description>
<code xsi:type="core:StringValue"> <code xsi:type="core:StringValue">
<value></value> <value></value>
</code> </code>
@@ -189,6 +189,50 @@
<defaultFolderForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаГруппы</defaultFolderForm> <defaultFolderForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаГруппы</defaultFolderForm>
<defaultListForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаСписка</defaultListForm> <defaultListForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаСписка</defaultListForm>
<defaultChoiceForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаВыбора</defaultChoiceForm> <defaultChoiceForm>Catalog.НаборыДополнительныхРеквизитовИСведений.Form.ФормаВыбора</defaultChoiceForm>
<attributes uuid="208c7b8c-3df9-4441-8ebf-34ffa81572a2">
<name>КоличествоРеквизитов</name>
<synonym>
<key>ru</key>
<value>Количество реквизитов</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>5</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Количество реквизитов в наборе не помеченных на удаление.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="8c17fd7c-74d7-496a-a843-42022afb0707">
<name>КоличествоСведений</name>
<synonym>
<key>ru</key>
<value>Количество сведений</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>5</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Количество сведений в наборе не помеченных на удаление.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<tabularSections uuid="b456d820-8034-4381-960d-66d9f86b0a4b"> <tabularSections uuid="b456d820-8034-4381-960d-66d9f86b0a4b">
<producedTypes> <producedTypes>
<objectType typeId="fb3fdc57-82e3-4fa7-bccd-b12e88c2fc2f" valueTypeId="63d4cced-9612-4b30-ae1f-23e3f330d6c5"/> <objectType typeId="fb3fdc57-82e3-4fa7-bccd-b12e88c2fc2f" valueTypeId="63d4cced-9612-4b30-ae1f-23e3f330d6c5"/>
@@ -211,14 +255,14 @@
<name>Свойство</name> <name>Свойство</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Свойство</value> <value>Дополнительный реквизит</value>
</synonym> </synonym>
<type> <type>
<types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types> <types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Дополнительный реквизит</value> <value>Дополнительный реквизит этого набора</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -228,30 +272,25 @@
<indexing>Index</indexing> <indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
</attributes> </attributes>
<attributes uuid="4cca4c80-62f5-4205-8196-78fcfa83de2f"> <attributes uuid="6eac5f7b-0952-4c94-9028-529b14ffcd4f">
<name>ЗаполнятьОбязательно</name> <name>ПометкаУдаления</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Заполнять обязательно</value> <value>Пометка удаления</value>
</synonym> </synonym>
<type> <type>
<types>Number</types> <types>Boolean</types>
<numberQualifiers>
<precision>1</precision>
<nonNegative>true</nonNegative>
</numberQualifiers>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Настройка проверки заполненности дополнительного реквизита для этого набора свойств. <value>Устанавливается при исключении дополнительного реквизита из набора,
Замещает настройку по умолчанию, сделанную в свойстве.</value> чтобы можно было вернуть связь с уникальным дополнительным реквизитом.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
</attributes> </attributes>
<use>ForFolderAndItem</use>
</tabularSections> </tabularSections>
<tabularSections uuid="1a7c774d-5b86-4051-b797-3081e19fa30a"> <tabularSections uuid="1a7c774d-5b86-4051-b797-3081e19fa30a">
<producedTypes> <producedTypes>
@@ -275,14 +314,14 @@
<name>Свойство</name> <name>Свойство</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Свойство</value> <value>Дополнительное сведение</value>
</synonym> </synonym>
<type> <type>
<types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types> <types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Дополнительное сведение</value> <value>Дополнительное сведение этого набора</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -292,13 +331,31 @@
<indexing>Index</indexing> <indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
</attributes> </attributes>
<use>ForFolderAndItem</use> <attributes uuid="167455d1-6658-409f-834c-f6ccfe7b25de">
<name>ПометкаУдаления</name>
<synonym>
<key>ru</key>
<value>Пометка удаления</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Устанавливается при исключении дополнительного сведения из набора,
чтобы можно было вернуть связь с уникальным дополнительным сведением.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
<fullTextSearch>Use</fullTextSearch>
</attributes>
</tabularSections> </tabularSections>
<forms uuid="c5b3ca21-8f7b-4933-853c-7d95b17b5631"> <forms uuid="c5b3ca21-8f7b-4933-853c-7d95b17b5631">
<name>ФормаЭлемента</name> <name>ФормаЭлемента</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Набор дополнительных реквизитов и сведений</value> <value>Форма элемента</value>
</synonym> </synonym>
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes> <usePurposes>MobileDevice</usePurposes>
@@ -330,13 +387,4 @@
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes> <usePurposes>MobileDevice</usePurposes>
</forms> </forms>
<forms uuid="2a365474-edba-4e3d-a69c-c856be0e4a4a">
<name>РедактированиеСоставаНаборов</name>
<synonym>
<key>ru</key>
<value>Редактирование состава наборов</value>
</synonym>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
</mdclass:Catalog> </mdclass:Catalog>
@@ -1,310 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="375fd076-c54c-43c1-8d11-12607c0ce04e">
<producedTypes>
<objectType typeId="4f050ab0-d646-49da-a181-e27e317c9425" valueTypeId="13a373f3-68b9-4bf7-90c4-ddc7bfaabaea"/>
<refType typeId="09d4e5f1-ad8d-43cb-b116-02b9eff8b8b4" valueTypeId="90df2cad-70f6-496b-82a4-b97710b939cf"/>
<selectionType typeId="d960f5b1-d348-4256-80dc-ab2e9ba0a6cd" valueTypeId="0c7befb9-4594-4c01-b6c4-16624e8eced9"/>
<listType typeId="cc2e6f7d-b7b9-4f01-88ae-6b3ae4fee025" valueTypeId="293ebec4-7a17-4aa4-bfdf-69a99255f67e"/>
<managerType typeId="be294236-4a0c-4f83-8c51-3be20bdabffc" valueTypeId="03560295-4665-43b6-8a85-8ec0e75939a5"/>
</producedTypes>
<name>ОбщиеДанныеИнформационногоЦентра</name>
<synonym>
<key>ru</key>
<value>Общие данные информационного центра</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.ОбщиеДанныеИнформационногоЦентра.StandardAttribute.Description</inputByString>
<inputByString>Catalog.ОбщиеДанныеИнформационногоЦентра.StandardAttribute.Code</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>PredefinedDataName</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Predefined</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Ref</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>DeletionMark</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>IsFolder</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Owner</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Parent</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Description</name>
<toolTip>
<key>ru</key>
<value>Наименование</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Code</name>
<toolTip>
<key>ru</key>
<value>Код</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Данные информационного центра</value>
</objectPresentation>
<listPresentation>
<key>ru</key>
<value>Список данных информационного центра</value>
</listPresentation>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>150</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
<attributes uuid="3b9ded5a-f656-4a33-90f3-d7dbff234da9">
<name>Вложения</name>
<synonym>
<key>ru</key>
<value>Вложения</value>
</synonym>
<type>
<types>ValueStorage</types>
</type>
<toolTip>
<key>ru</key>
<value>Структура вложенных файлов</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="eae94ac3-3aa3-49f0-940f-51c89fec66e2">
<name>ВнешняяСсылка</name>
<synonym>
<key>ru</key>
<value>Внешняя ссылка</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Внешняя ссылка на данные</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="a2b43b21-56e7-4644-9345-d4918a1dfe8e">
<name>Дата</name>
<synonym>
<key>ru</key>
<value>Дата</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers>
<dateFractions>Date</dateFractions>
</dateQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Дата данного</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="6ef24453-482d-4a6e-a088-7a2faf8de1c8">
<name>ДатаНачалаАктуальности</name>
<synonym>
<key>ru</key>
<value>Дата начала актуальности</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Дата начала актуальности информации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="b9f6c8a3-e9bc-4dae-b583-ca20e91eb261">
<name>ДатаОкончанияАктуальности</name>
<synonym>
<key>ru</key>
<value>Дата окончания актуальности</value>
</synonym>
<type>
<types>Date</types>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Дата окончания актуальности информации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="1a0cdbe5-ad4a-42dc-a1c9-54c737436e20">
<name>Идентификатор</name>
<synonym>
<key>ru</key>
<value>Идентификатор</value>
</synonym>
<type>
<types>UUID</types>
</type>
<toolTip>
<key>ru</key>
<value>Уникальный идентификатор данных</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="f4cdb0ac-8993-4e8c-9d13-128710dec273">
<name>Критичность</name>
<synonym>
<key>ru</key>
<value>Критичность</value>
</synonym>
<type>
<types>Number</types>
<numberQualifiers>
<precision>10</precision>
<nonNegative>true</nonNegative>
</numberQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Критичность информации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="fbe620e1-a3a3-48aa-89e8-4562fdd24f1e">
<name>ТекстHTML</name>
<synonym>
<key>ru</key>
<value>Текст HTML</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Текст HTML информации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="b4f824aa-9b2f-40c9-a5f6-98d452019c38">
<name>ТипИнформации</name>
<synonym>
<key>ru</key>
<value>Тип информации</value>
</synonym>
<type>
<types>CatalogRef.ТипыИнформацииИнформационногоЦентра</types>
</type>
<toolTip>
<key>ru</key>
<value>Тип информации данных</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
</mdclass:Catalog>
@@ -1,144 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ead0a902-bd87-4ee5-bfee-1a131dd28bd6">
<producedTypes>
<objectType typeId="b892c4f5-9791-4c54-8916-19ae4e2963f8" valueTypeId="a8735d4f-bc29-4ac8-a44a-ef445022a77c"/>
<refType typeId="289fc635-9c3f-478b-b49d-7adcdaf762a0" valueTypeId="32ada73d-a5c1-4e8e-b06a-c04839e9a436"/>
<selectionType typeId="4827287d-0c82-4ed9-b411-974609d40706" valueTypeId="1ae5a200-a3fc-46ff-a97d-0859630ba624"/>
<listType typeId="7cff5bcc-0a36-4703-bf9c-001b7c3a2fde" valueTypeId="9fe0bf1e-d2e6-466d-9fed-6bb4f1692668"/>
<managerType typeId="5c9e6cb3-2513-41ad-a35f-2ce6457433ed" valueTypeId="2c1258ae-a706-4314-b811-a234a8708786"/>
</producedTypes>
<name>ПолныеПутиКФормам</name>
<synonym>
<key>ru</key>
<value>Полные пути к формам</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.ПолныеПутиКФормам.StandardAttribute.Description</inputByString>
<inputByString>Catalog.ПолныеПутиКФормам.StandardAttribute.Code</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>PredefinedDataName</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Predefined</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Ref</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>DeletionMark</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>IsFolder</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Owner</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Parent</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Description</name>
<toolTip>
<key>ru</key>
<value>Наименование полного пути к форме</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Code</name>
<toolTip>
<key>ru</key>
<value>Код полного пути к форме</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Путь к форме</value>
</objectPresentation>
<listPresentation>
<key>ru</key>
<value>Список путей к формам</value>
</listPresentation>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>150</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
<attributes uuid="d4ce8dd2-a391-49d0-9742-a6a6a07b1684">
<name>ПолныйПутьКФорме</name>
<synonym>
<key>ru</key>
<value>Полный путь к форме</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Полный путь к форме конфигурации</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
</mdclass:Catalog>
@@ -24,7 +24,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПриСозданииФормыНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ) Тогда Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -80,6 +80,9 @@
ПользователиСлужебный.ОбновитьСоставыГруппПользователей( ПользователиСлужебный.ОбновитьСоставыГруппПользователей(
Справочники.ГруппыПользователей.ВсеПользователи, Ссылка, УчастникиИзменений, ИзмененныеГруппы); Справочники.ГруппыПользователей.ВсеПользователи, Ссылка, УчастникиИзменений, ИзмененныеГруппы);
ПользователиСлужебный.ОбновитьИспользуемостьСоставовГруппПользователей(
Ссылка, УчастникиИзменений, ИзмененныеГруппы);
ПользователиСлужебный.ЗавершитьОбработкуПользователяИБ( ПользователиСлужебный.ЗавершитьОбработкуПользователяИБ(
ЭтотОбъект, ПараметрыОбработкиПользователяИБ); ЭтотОбъект, ПараметрыОбработкиПользователяИБ);
@@ -98,7 +98,8 @@
УстановитьМонопольныйРежим(Истина); УстановитьМонопольныйРежим(Истина);
КонецЕсли; КонецЕсли;
ПредопределенныеПрофили = ПредопределенныеПрофили(); ПредопределенныеПрофили = СтандартныеПодсистемыСервер.ИменаПредопределенныхДанных(
"Справочник.ПрофилиГруппДоступа");
Блокировка = Новый БлокировкаДанных; Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Константа.ПараметрыОграниченияДоступа"); ЭлементБлокировки = Блокировка.Добавить("Константа.ПараметрыОграниченияДоступа");
@@ -703,66 +704,6 @@
КонецФункции КонецФункции
Функция ПредопределенныеПрофили() Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПрофилиГруппДоступа.Ссылка КАК Ссылка,
| НЕОПРЕДЕЛЕНО КАК ИмяПредопределенныхДанных
|ИЗ
| Справочник.ПрофилиГруппДоступа КАК ПрофилиГруппДоступа
|ГДЕ
| ПрофилиГруппДоступа.Предопределенный = ИСТИНА";
Если СтандартныеПодсистемыПовтИсп.ЭтоПлатформа83БезРежимаСовместимости() Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст, "НЕОПРЕДЕЛЕНО", "ПрофилиГруппДоступа.ИмяПредопределенныхДанных");
КонецЕсли;
ИменаПредопределенныхДанных = Новый СписокЗначений;
Если ОбщегоНазначенияПовтИсп.РазделениеВключено()
И НЕ ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда
ОбщегоНазначения.УстановитьРазделениеСеанса(Истина, 0);
Попытка
Выборка = Запрос.Выполнить().Выбрать();
Исключение
ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь);
ВызватьИсключение;
КонецПопытки;
Пока Выборка.Следующий() Цикл
Если СтандартныеПодсистемыПовтИсп.ЭтоПлатформа83БезРежимаСовместимости() Тогда
ИмяПредопределенныхДанных = Выборка.ИмяПредопределенныхДанных;
Иначе
ИмяПредопределенныхДанных = ПолучитьИмяПредопределенного(Выборка.Ссылка);
КонецЕсли;
Если ЗначениеЗаполнено(ИмяПредопределенныхДанных) Тогда
ИменаПредопределенныхДанных.Добавить(ИмяПредопределенныхДанных);
КонецЕсли;
КонецЦикла;
ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь);
Иначе
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Если СтандартныеПодсистемыПовтИсп.ЭтоПлатформа83БезРежимаСовместимости() Тогда
ИмяПредопределенныхДанных = Выборка.ИмяПредопределенныхДанных;
Иначе
ИмяПредопределенныхДанных = ПолучитьИмяПредопределенного(Выборка.Ссылка);
КонецЕсли;
Если ЗначениеЗаполнено(ИмяПредопределенныхДанных) Тогда
ИменаПредопределенныхДанных.Добавить(ИмяПредопределенныхДанных);
КонецЕсли;
КонецЦикла;
КонецЕсли;
ИменаПредопределенныхДанных.СортироватьПоЗначению();
Возврат Новый ФиксированныйМассив(ИменаПредопределенныхДанных.ВыгрузитьЗначения());
КонецФункции
Функция ПредопределенныеПрофилиСовпадают(НовыеПрофили, СтарыеПрофили, ЕстьУдаленные) Функция ПредопределенныеПрофилиСовпадают(НовыеПрофили, СтарыеПрофили, ЕстьУдаленные)
ПредопределенныеПрофилиСовпадают = ПредопределенныеПрофилиСовпадают =
@@ -39,19 +39,13 @@
КонецЕсли; КонецЕсли;
Если НЕ Пользователи.РолиДоступны("ДобавлениеИзменениеРассылокОтчетов") Тогда Если НЕ Пользователи.РолиДоступны("ДобавлениеИзменениеРассылокОтчетов") Тогда
// Только личные рассылки // Режим показа только личных рассылок - скрываются группы и лишние колонки.
// Скрыть лишние колонки
Элементы.Список.Отображение = ОтображениеТаблицы.Список; Элементы.Список.Отображение = ОтображениеТаблицы.Список;
// Скрыть группы ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список, "ЭтоГруппа", Ложь, , , Истина, РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный);
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЭтоГруппа");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Ложь;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
КонецЕсли; КонецЕсли;
Список.Параметры.УстановитьЗначениеПараметра("ПустаяДата", '00010101'); Список.Параметры.УстановитьЗначениеПараметра("ПустаяДата", '00010101');
КонецПроцедуры КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@@ -1143,11 +1143,11 @@
<Value>Республика Палау</Value> <Value>Республика Палау</Value>
</row> </row>
<row> <row>
<Value>ПАЛЕСТИНСКАЯ ТЕРРИТОРИЯ, ОККУПИРОВАННАЯ</Value> <Value>ПАЛЕСТИНА, ГОСУДАРСТВО</Value>
<Value>PS</Value> <Value>PS</Value>
<Value>PSE</Value> <Value>PSE</Value>
<Value>275</Value> <Value>275</Value>
<Value>Оккупированная Палестинская территория</Value> <Value>Государство Палестина</Value>
</row> </row>
<row> <row>
<Value>ПАНАМА</Value> <Value>ПАНАМА</Value>
@@ -1,125 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e6ae5164-fe3b-48fd-8180-f31941e35238">
<producedTypes>
<objectType typeId="625b39bf-394f-4756-b9d6-613fe602dfea" valueTypeId="9af54af6-fd9d-49c4-b5b0-bddfe2ebf59f"/>
<refType typeId="6aafa7fe-248c-4747-b4c1-0e629ca6019b" valueTypeId="b90f1bb3-bfab-4f6c-97fa-e3604bb32b00"/>
<selectionType typeId="a6682870-43a1-489f-8207-32dec765d977" valueTypeId="419ef82e-66c1-4af0-a0bc-062b481c9183"/>
<listType typeId="b9058f8b-8846-42df-9f0b-1326eba01b29" valueTypeId="3fe76d86-3f71-474f-8ed3-4e9b61644cf4"/>
<managerType typeId="34f9ff2c-07f6-45e3-a653-15820bbc24f4" valueTypeId="b7b4cdde-1b2a-4179-8524-08769bee3ce5"/>
</producedTypes>
<name>ТипыИнформацииИнформационногоЦентра</name>
<synonym>
<key>ru</key>
<value>Типы информации информационного центра</value>
</synonym>
<useStandardCommands>true</useStandardCommands>
<inputByString>Catalog.ТипыИнформацииИнформационногоЦентра.StandardAttribute.Description</inputByString>
<inputByString>Catalog.ТипыИнформацииИнформационногоЦентра.StandardAttribute.Code</inputByString>
<fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>PredefinedDataName</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Predefined</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Ref</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>DeletionMark</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>IsFolder</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Owner</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Parent</name>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Description</name>
<toolTip>
<key>ru</key>
<value>Наименование</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Code</name>
<toolTip>
<key>ru</key>
<value>Код</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Типы информации</value>
</objectPresentation>
<listPresentation>
<key>ru</key>
<value>Список типов информации</value>
</listPresentation>
<levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop>
<codeLength>9</codeLength>
<descriptionLength>50</descriptionLength>
<codeType>String</codeType>
<codeAllowedLength>Variable</codeAllowedLength>
<checkUnique>true</checkUnique>
<autonumbering>true</autonumbering>
<defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType>
<choiceMode>BothWays</choiceMode>
</mdclass:Catalog>
@@ -8,7 +8,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПриСозданииФормыНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ) Тогда Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1,20 +0,0 @@
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ТипЗначения = ПараметрыВыполненияКоманды.Источник.Объект.ТипЗначения;
Если ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектовИерархия")) Тогда
ИмяФормы = "Справочник.ЗначенияСвойствОбъектовИерархия.ФормаСписка";
Иначе
ИмяФормы = "Справочник.ЗначенияСвойствОбъектов.ФормаСписка";
КонецЕсли;
ОткрытьФорму(
ИмяФормы,
Новый Структура("Отбор", Новый Структура("Владелец", ПараметрКоманды)),
ПараметрыВыполненияКоманды.Источник,
ПараметрыВыполненияКоманды.Уникальность,
ПараметрыВыполненияКоманды.Окно);
КонецПроцедуры
@@ -0,0 +1,226 @@
&НаКлиенте
Перем ПараметрыДлительнойОперацииКлиент;
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если Параметры.ЭтоДополнительноеСведение Тогда
Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.Сведение;
Заголовок = НСтр("ru = 'Изменить настройку дополнительного сведения'");
Иначе
Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.Реквизит;
КонецЕсли;
Если ЗначениеЗаполнено(Параметры.НаборСвойств) Тогда
Элементы.ВидыРеквизита.ТекущаяСтраница = Элементы.ВидОбщиеЗначенияРеквизитов;
Элементы.ВидыСведения.ТекущаяСтраница = Элементы.ВидОбщиеЗначенияСведений;
Если ЗначениеЗаполнено(Параметры.ВладелецДополнительныхЗначений) Тогда
ОтдельноеСвойствоСОбщимСпискомЗначений = 1;
Иначе
ОтдельноеСвойствоСОтдельнымСпискомЗначений = 1;
КонецЕсли;
Иначе
Элементы.ВидыРеквизита.ТекущаяСтраница = Элементы.ВидОбщийРеквизит;
Элементы.ВидыСведения.ТекущаяСтраница = Элементы.ВидОбщееСведение;
ОбщееСвойство = 1;
КонецЕсли;
Свойство = Параметры.Свойство;
ТекущийНаборСвойств = Параметры.ТекущийНаборСвойств;
ЭтоДополнительноеСведение = Параметры.ЭтоДополнительноеСведение;
Элементы.ОтдельныеЗначенияРеквизитаКомментарий.Заголовок =
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
Элементы.ОтдельныеЗначенияРеквизитаКомментарий.Заголовок, ТекущийНаборСвойств);
Элементы.ОбщиеЗначенияРеквизитовКомментарий.Заголовок =
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
Элементы.ОбщиеЗначенияРеквизитовКомментарий.Заголовок, ТекущийНаборСвойств);
Элементы.ОтдельныеЗначенияСведенияКомментарий.Заголовок =
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
Элементы.ОтдельныеЗначенияСведенияКомментарий.Заголовок, ТекущийНаборСвойств);
Элементы.ОбщиеЗначенияСведенийКомментарий.Заголовок =
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
Элементы.ОбщиеЗначенияСведенийКомментарий.Заголовок, ТекущийНаборСвойств);
КонецПроцедуры
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
ОбщегоНазначенияКлиент.ЗапроситьПодтверждениеЗакрытияФормы(Отказ, Модифицированность);
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ШАПКИ ФОРМЫ
&НаКлиенте
Процедура ВидПриИзменении(Элемент)
ВидПриИзмененииНаСервере(Элемент.Имя);
КонецПроцедуры
&НаСервере
Процедура ВидПриИзмененииНаСервере(ИмяЭлемента)
ОтдельноеСвойствоСОбщимСпискомЗначений = 0;
ОтдельноеСвойствоСОтдельнымСпискомЗначений = 0;
ОбщееСвойство = 0;
ЭтаФорма[Элементы[ИмяЭлемента].ПутьКДанным] = 1;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ КОМАНД ФОРМЫ
&НаКлиенте
Процедура ЗаписатьИЗакрыть(Команда)
Если ОтдельноеСвойствоСОтдельнымСпискомЗначений = 1 Тогда
ЗаписатьНачало();
Иначе
ЗаписатьЗавершение(Неопределено);
КонецЕсли;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
&НаКлиенте
Процедура ЗаписатьНачало()
Состояние(НСтр("ru = 'Выполняется изменение настройки свойства. Пожалуйста, подождите'"));
ОткрытьСвойство = ЗаписатьНаСервере();
Если ОткрытьСвойство <> NULL Тогда
ЗаписатьЗавершение(ОткрытьСвойство);
Иначе
ПараметрыДлительнойОперацииКлиент = Новый Структура;
ПараметрыДлительнойОперацииКлиент.Вставить("ПараметрыОбработчикаОжидания");
ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(
ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания);
ПодключитьОбработчикОжидания("Подключаемый_ПроверитьИзменениеНастройкиСвойства",
ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания.МинимальныйИнтервал, Истина);
ПараметрыДлительнойОперацииКлиент.Вставить("ФормаДлительнойОперации",
ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(
ЭтаФорма, ПараметрыДлительнойОперации.ИдентификаторЗадания));
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПроверитьИзменениеНастройкиСвойства()
Результат = NULL;
Попытка
Если ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации.Открыта()
И ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации.ИдентификаторЗадания
= ПараметрыДлительнойОперации.ИдентификаторЗадания Тогда
Результат = ЗаданиеВыполнено(ПараметрыДлительнойОперации);
Если Результат = NULL Тогда
ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(
ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания);
ПодключитьОбработчикОжидания(
"Подключаемый_ПроверитьИзменениеНастройкиСвойства",
ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания.ТекущийИнтервал,
Истина);
Иначе
ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(
ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации);
КонецЕсли;
КонецЕсли;
Исключение
ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(
ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации);
ВызватьИсключение;
КонецПопытки;
Если Результат <> NULL Тогда
ЗаписатьЗавершение(Результат);
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Функция ЗаданиеВыполнено(ПараметрыДлительнойОперации)
Если ДлительныеОперации.ЗаданиеВыполнено(ПараметрыДлительнойОперации.ИдентификаторЗадания) Тогда
Возврат ПолучитьИзВременногоХранилища(ПараметрыДлительнойОперации.АдресХранилища);
КонецЕсли;
Возврат NULL;
КонецФункции
&НаКлиенте
Процедура ЗаписатьЗавершение(ОткрытьСвойство)
Модифицированность = Ложь;
Закрыть();
Оповестить("Запись_ДополнительныеРеквизитыИСведения",
Новый Структура("Ссылка", Свойство), Свойство);
Оповестить("Запись_НаборыДополнительныхРеквизитовИСведений",
Новый Структура("Ссылка", ТекущийНаборСвойств), ТекущийНаборСвойств);
ОповеститьОВыборе(ОткрытьСвойство);
КонецПроцедуры
&НаСервере
Функция ЗаписатьНаСервере()
ПараметрыПроцедуры = Новый Структура;
ПараметрыПроцедуры.Вставить("Свойство", Свойство);
ПараметрыПроцедуры.Вставить("ТекущийНаборСвойств", ТекущийНаборСвойств);
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор);
ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ИзменитьНастройкуСвойства(
ПараметрыПроцедуры, АдресХранилища);
Возврат ПолучитьИзВременногоХранилища(АдресХранилища);
КонецЕсли;
НаименованиеЗадания = НСтр("ru = 'Изменение настройки дополнительного свойства'");
Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне(
УникальныйИдентификатор,
"ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ИзменитьНастройкуСвойства",
ПараметрыПроцедуры,
НаименованиеЗадания);
Если Результат.ЗаданиеВыполнено Тогда
Возврат ПолучитьИзВременногоХранилища(Результат.АдресХранилища);
КонецЕсли;
ПараметрыДлительнойОперации = Результат;
Возврат NULL;
КонецФункции
@@ -17,7 +17,7 @@
<id>23</id> <id>23</id>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Дополнительный реквизит не используется в информационной базе. <value>Дополнительный реквизит не используется в документах программы.
Тип значения дополнительного реквизита можно изменять.</value> Тип значения дополнительного реквизита можно изменять.</value>
</title> </title>
@@ -8,7 +8,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ЕстьСсылкиНаОбъект(Параметры.Ссылка) Тогда Если УправлениеСвойствамиСлужебный.ДополнительноеСвойствоИспользуется(Параметры.Ссылка) Тогда
Элементы.ДиалогиПользователя.ТекущаяСтраница = Элементы.ОбъектИспользуется; Элементы.ДиалогиПользователя.ТекущаяСтраница = Элементы.ОбъектИспользуется;
Элементы.РазрешитьРедактирование.КнопкаПоУмолчанию = Истина; Элементы.РазрешитьРедактирование.КнопкаПоУмолчанию = Истина;
@@ -39,7 +39,6 @@
Результат = Новый Массив; Результат = Новый Массив;
Результат.Добавить("ТипЗначения"); Результат.Добавить("ТипЗначения");
ОповеститьОВыборе(Результат); ОповеститьОВыборе(Результат);
КонецПроцедуры КонецПроцедуры
@@ -13,8 +13,9 @@
</dataPath> </dataPath>
<defaultItem>true</defaultItem> <defaultItem>true</defaultItem>
<titleLocation>None</titleLocation> <titleLocation>None</titleLocation>
<excludedCommands>Delete</excludedCommands>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Наименование</name> <name>Представление</name>
<id>4</id> <id>4</id>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
@@ -22,12 +23,12 @@
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<dataPath xsi:type="form:DataPath"> <dataPath xsi:type="form:DataPath">
<segments>Список.Description</segments> <segments>Список.Заголовок</segments>
</dataPath> </dataPath>
<defaultItem>true</defaultItem> <defaultItem>true</defaultItem>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name> <name>ПредставлениеРасширеннаяПодсказка</name>
<id>24</id> <id>42</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -36,7 +37,7 @@
</extInfo> </extInfo>
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>НаименованиеКонтекстноеМеню</name> <name>ПредставлениеКонтекстноеМеню</name>
<id>5</id> <id>5</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
@@ -70,10 +71,10 @@
</handlers> </handlers>
<searchStringAddition> <searchStringAddition>
<name>СписокСтрокаПоиска</name> <name>СписокСтрокаПоиска</name>
<id>15</id> <id>33</id>
<extendedTooltip> <extendedTooltip>
<name>СписокСтрокаПоискаРасширеннаяПодсказка</name> <name>СписокСтрокаПоискаРасширеннаяПодсказка</name>
<id>17</id> <id>35</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -83,7 +84,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СписокСтрокаПоискаКонтекстноеМеню</name> <name>СписокСтрокаПоискаКонтекстноеМеню</name>
<id>16</id> <id>34</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<source>Список</source> <source>Список</source>
@@ -93,10 +94,10 @@
</searchStringAddition> </searchStringAddition>
<viewStatusAddition> <viewStatusAddition>
<name>СписокСостояниеПросмотра</name> <name>СписокСостояниеПросмотра</name>
<id>18</id> <id>36</id>
<extendedTooltip> <extendedTooltip>
<name>СписокСостояниеПросмотраРасширеннаяПодсказка</name> <name>СписокСостояниеПросмотраРасширеннаяПодсказка</name>
<id>20</id> <id>38</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -106,7 +107,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СписокСостояниеПросмотраКонтекстноеМеню</name> <name>СписокСостояниеПросмотраКонтекстноеМеню</name>
<id>19</id> <id>37</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>ViewStatusAddition</type> <type>ViewStatusAddition</type>
@@ -117,10 +118,10 @@
</viewStatusAddition> </viewStatusAddition>
<searchControlAddition> <searchControlAddition>
<name>СписокУправлениеПоиском</name> <name>СписокУправлениеПоиском</name>
<id>21</id> <id>39</id>
<extendedTooltip> <extendedTooltip>
<name>СписокУправлениеПоискомРасширеннаяПодсказка</name> <name>СписокУправлениеПоискомРасширеннаяПодсказка</name>
<id>23</id> <id>41</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -130,7 +131,7 @@
</extendedTooltip> </extendedTooltip>
<contextMenu> <contextMenu>
<name>СписокУправлениеПоискомКонтекстноеМеню</name> <name>СписокУправлениеПоискомКонтекстноеМеню</name>
<id>22</id> <id>40</id>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>SearchControlAddition</type> <type>SearchControlAddition</type>
@@ -141,7 +142,7 @@
</searchControlAddition> </searchControlAddition>
<extendedTooltip> <extendedTooltip>
<name>СписокРасширеннаяПодсказка</name> <name>СписокРасширеннаяПодсказка</name>
<id>14</id> <id>32</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -152,9 +153,164 @@
<contextMenu> <contextMenu>
<name>СписокКонтекстноеМеню</name> <name>СписокКонтекстноеМеню</name>
<id>2</id> <id>2</id>
<autoFill>true</autoFill> <items xsi:type="form:Button">
<name>СписокКонтекстноеМенюСоздать</name>
<id>14</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюСоздатьРасширеннаяПодсказка</name>
<id>26</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Create</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюСкопировать</name>
<id>15</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюСкопироватьРасширеннаяПодсказка</name>
<id>27</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Copy</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюИзменить</name>
<id>16</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюИзменитьРасширеннаяПодсказка</name>
<id>28</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Change</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюУстановитьПометкуУдаления</name>
<id>17</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюУстановитьПометкуУдаленияРасширеннаяПодсказка</name>
<id>29</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.SetDeletionMark</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюНайти</name>
<id>18</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюНайтиРасширеннаяПодсказка</name>
<id>30</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Find</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюОтменитьПоиск</name>
<id>19</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюОтменитьПоискРасширеннаяПодсказка</name>
<id>31</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.CancelSearch</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
</contextMenu> </contextMenu>
<representation>HierarchicalList</representation> <representation>Tree</representation>
<changeRowSet>true</changeRowSet> <changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder> <changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
@@ -209,7 +365,7 @@
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>КомментарийРасширеннаяПодсказка</name> <name>КомментарийРасширеннаяПодсказка</name>
<id>34</id> <id>52</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -242,6 +398,84 @@
<autoCommandBar> <autoCommandBar>
<name>ФормаКоманднаяПанель</name> <name>ФормаКоманднаяПанель</name>
<id>-1</id> <id>-1</id>
<items xsi:type="form:Button">
<name>ФормаСоздать</name>
<id>11</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаСоздатьРасширеннаяПодсказка</name>
<id>20</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Create</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаСкопировать</name>
<id>12</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаСкопироватьРасширеннаяПодсказка</name>
<id>21</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Copy</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаИзменить</name>
<id>13</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаИзменитьРасширеннаяПодсказка</name>
<id>22</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.StandardCommand.Change</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button"> <items xsi:type="form:Button">
<name>ФормаУстановитьПометкуУдаления</name> <name>ФормаУстановитьПометкуУдаления</name>
<id>10</id> <id>10</id>
@@ -252,7 +486,7 @@
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>ФормаУстановитьПометкуУдаленияРасширеннаяПодсказка</name> <name>ФормаУстановитьПометкуУдаленияРасширеннаяПодсказка</name>
<id>11</id> <id>23</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -279,7 +513,7 @@
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>ФормаНайтиРасширеннаяПодсказка</name> <name>ФормаНайтиРасширеннаяПодсказка</name>
<id>12</id> <id>24</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -306,7 +540,7 @@
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>ФормаОтменитьПоискРасширеннаяПодсказка</name> <name>ФормаОтменитьПоискРасширеннаяПодсказка</name>
<id>13</id> <id>25</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -330,6 +564,7 @@
<event>OnCreateAtServer</event> <event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name> <name>ПриСозданииНаСервере</name>
</handlers> </handlers>
<width>50</width>
<windowOpeningMode>LockOwner</windowOpeningMode> <windowOpeningMode>LockOwner</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings> <saveWindowSettings>true</saveWindowSettings>
<autoTitle>true</autoTitle> <autoTitle>true</autoTitle>
@@ -363,20 +598,28 @@
Свойства.ВерсияДанных, Свойства.ВерсияДанных,
Свойства.ПометкаУдаления, Свойства.ПометкаУдаления,
Свойства.Предопределенный, Свойства.Предопределенный,
Свойства.Родитель, Свойства.Заголовок,
Свойства.ЭтоГруппа, ВЫБОР
КОГДА Свойства.НаборСвойств = ЗНАЧЕНИЕ(Справочник.НаборыДополнительныхРеквизитовИСведений.ПустаяСсылка)
ТОГДА &amp;ПредставлениеГруппировкиОбщихСвойств
КОГДА Свойства.НаборСвойств.Родитель = ЗНАЧЕНИЕ(Справочник.НаборыДополнительныхРеквизитовИСведений.ПустаяСсылка)
ТОГДА Свойства.НаборСвойств
ИНАЧЕ Свойства.НаборСвойств.Родитель.Наименование + &quot; (&quot; + Свойства.НаборСвойств.Наименование + &quot;)&quot;
КОНЕЦ КАК НаборСвойствГруппировка,
Свойства.НаборСвойств,
Свойства.ДополнительныеЗначенияИспользуются,
Свойства.ВладелецДополнительныхЗначений,
Свойства.Наименование, Свойства.Наименование,
Свойства.ТипЗначения, Свойства.ТипЗначения,
Свойства.ЭтоДополнительноеСведение, Свойства.ЭтоДополнительноеСведение,
Свойства.МногострочноеПолеВвода, Свойства.МногострочноеПолеВвода,
Свойства.ЗаполнятьОбязательно, Свойства.ЗаполнятьОбязательно,
Свойства.СклоненияПредмета, Свойства.ЗаголовокФормыЗначения,
Свойства.ЗаголовокФормыВыбораЗначения,
Свойства.ФорматСвойства, Свойства.ФорматСвойства,
Свойства.Комментарий, Свойства.Комментарий,
Свойства.Подсказка, Свойства.Подсказка,
ВЫБОР ВЫБОР
КОГДА Свойства.ЭтоГруппа
ТОГДА 0
КОГДА Свойства.ЭтоДополнительноеСведение КОГДА Свойства.ЭтоДополнительноеСведение
ТОГДА 2 ТОГДА 2
ИНАЧЕ 1 ИНАЧЕ 1
@@ -410,13 +653,31 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ВидВыбора</name>
<title>
<key>ru</key>
<value>Вид выбора</value>
</title>
<id>3</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes> <attributes>
<name>СписокВыбранных</name> <name>СписокВыбранных</name>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Список выбранных</value> <value>Список выбранных</value>
</title> </title>
<id>3</id> <id>4</id>
<valueType> <valueType>
<types>ValueList</types> <types>ValueList</types>
</valueType> </valueType>
@@ -431,7 +692,19 @@
</extInfo> </extInfo>
</attributes> </attributes>
<parameters> <parameters>
<name>ЗакрыватьПриВыборе</name> <name>ВыборВладельцаДополнительныхЗначений</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<parameters>
<name>ВыборОбщегоСвойства</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<parameters>
<name>ЭтоДополнительноеСведение</name>
<valueType/> <valueType/>
</parameters> </parameters>
<commandInterface> <commandInterface>
@@ -8,40 +8,82 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Параметры.ЭтоДополнительноеСведение <> Неопределено Тогда
ЭтоДополнительноеСведение = Параметры.ЭтоДополнительноеСведение;
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ЭтоДополнительноеСведение", ЭтоДополнительноеСведение, , , Истина);
КонецЕсли;
// Отбор не помеченных на удаление. // Отбор не помеченных на удаление.
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ПометкаУдаления", Ложь, ВидСравненияКомпоновкиДанных.Равно, , Истина, Список, "ПометкаУдаления", Ложь, , , Истина,
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ); РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ);
Если Параметры.Отбор.Свойство("ЭтоДополнительноеСведение") Тогда Если Параметры.ВыборОбщегоСвойства Тогда
ЭтоДополнительноеСведение = Параметры.Отбор.ЭтоДополнительноеСведение;
КонецЕсли; ВидВыбора = "ВыборОбщегоСвойства";
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "НаборСвойств", , ВидСравненияКомпоновкиДанных.НеЗаполнено, , Истина);
Если Параметры.ЗакрыватьПриВыборе = Ложь Тогда
// Режим подбора.
Если ЭтоДополнительноеСведение = Истина Тогда Если ЭтоДополнительноеСведение = Истина Тогда
АвтоЗаголовок = Ложь; АвтоЗаголовок = Ложь;
Заголовок = НСтр("ru = 'Подбор дополнительных сведений'"); Заголовок = НСтр("ru = 'Выбор общего дополнительного сведения'");
ИначеЕсли ЭтоДополнительноеСведение = Ложь Тогда ИначеЕсли ЭтоДополнительноеСведение = Ложь Тогда
АвтоЗаголовок = Ложь; АвтоЗаголовок = Ложь;
Заголовок = НСтр("ru = 'Подбор дополнительных реквизитов'"); Заголовок = НСтр("ru = 'Выбор общего дополнительного реквизита'");
КонецЕсли;
Элементы.Список.МножественныйВыбор = Истина;
Иначе
// Режим выбора.
Если ЭтоДополнительноеСведение = Истина Тогда
АвтоЗаголовок = Ложь;
Заголовок = НСтр("ru = 'Выбор дополнительного сведения'");
ИначеЕсли ЭтоДополнительноеСведение = Ложь Тогда
АвтоЗаголовок = Ложь;
Заголовок = НСтр("ru = 'Выбор дополнительного реквизита'");
КонецЕсли;
КонецЕсли; КонецЕсли;
ИначеЕсли Параметры.ВыборВладельцаДополнительныхЗначений Тогда
ВидВыбора = "ВыборВладельцаДополнительныхЗначений";
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "НаборСвойств", , ВидСравненияКомпоновкиДанных.Заполнено, , Истина);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ДополнительныеЗначенияИспользуются", Истина, , , Истина);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "ВладелецДополнительныхЗначений", ,
ВидСравненияКомпоновкиДанных.НеЗаполнено, , Истина);
АвтоЗаголовок = Ложь;
Заголовок = НСтр("ru = 'Выбор образца'");
Элементы.ФормаСоздать.Видимость = Ложь;
Элементы.ФормаСкопировать.Видимость = Ложь;
Элементы.ФормаИзменить.Видимость = Ложь;
Элементы.ФормаУстановитьПометкуУдаления.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюСоздать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюСкопировать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюИзменить.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюУстановитьПометкуУдаления.Видимость = Ложь;
КонецЕсли;
ЗаполнитьВыбранныеЗначения(); ЗаполнитьВыбранныеЗначения();
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(
Список,
"ПредставлениеГруппировкиОбщихСвойств",
НСтр("ru = 'Общие (для нескольких наборов)'"),
Истина);
// Группировка свойств по наборам.
Если ОбщегоНазначенияКлиентСервер.ЭтоПлатформа83БезРежимаСовместимости() Тогда
ГруппировкаДанных = Список.КомпоновщикНастроек.Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
ГруппировкаДанных.ИдентификаторПользовательскойНастройки = "ГруппировкаСвойствПоНаборам";
ГруппировкаДанных.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ПоляГруппировки = ГруппировкаДанных.ПоляГруппировки;
Иначе
ПоляГруппировки = Список.Группировка;
КонецЕсли;
ЭлементГруппировкиДанных = ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ЭлементГруппировкиДанных.Поле = Новый ПолеКомпоновкиДанных("НаборСвойствГруппировка");
ЭлементГруппировкиДанных.Использование = Истина;
КонецПроцедуры КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@@ -50,37 +92,26 @@
&НаКлиенте &НаКлиенте
Процедура СписокВыборЗначения(Элемент, Значение, СтандартнаяОбработка) Процедура СписокВыборЗначения(Элемент, Значение, СтандартнаяОбработка)
ДобавитьВыбранноеЗначение(Значение); Если ВидВыбора = "ВыборОбщегоСвойства" Тогда
СтандартнаяОбработка = Ложь;
КонецПроцедуры ОповеститьОВыборе(Новый Структура("ОбщееСвойство", Значение));
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
Если Элемент.ТекущиеДанные <> Неопределено
И НЕ Элемент.ТекущиеДанные.ЭтоГруппа Тогда
Отказ = Истина;
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Элемент.ТекущаяСтрока);
ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоДополнительноеСведение);
ОткрытьФорму(
"ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта",
ПараметрыФормы);
ИначеЕсли ВидВыбора = "ВыборВладельцаДополнительныхЗначений" Тогда
СтандартнаяОбработка = Ложь;
ОповеститьОВыборе(Новый Структура("ВладелецДополнительныхЗначений", Значение));
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование)
Если Не Группа Тогда
Отказ = Истина; Отказ = Истина;
Если НЕ Элементы.ФормаСоздать.Видимость Тогда
Возврат;
КонецЕсли;
ПараметрыФормы = Новый Структура; ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоДополнительноеСведение); ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоДополнительноеСведение);
@@ -88,14 +119,29 @@
ПараметрыФормы.Вставить("ЗначениеКопирования", Элемент.ТекущаяСтрока); ПараметрыФормы.Вставить("ЗначениеКопирования", Элемент.ТекущаяСтрока);
Иначе Иначе
ЗначенияЗаполнения = Новый Структура; ЗначенияЗаполнения = Новый Структура;
ЗначенияЗаполнения.Вставить("Родитель", Родитель);
ПараметрыФормы.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения); ПараметрыФормы.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения);
КонецЕсли; КонецЕсли;
ОткрытьФорму( ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта", ПараметрыФормы);
"ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта",
ПараметрыФормы);
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
Отказ = Истина;
Если НЕ Элементы.ФормаСоздать.Видимость Тогда
Возврат;
КонецЕсли;
Если Элемент.ТекущиеДанные <> Неопределено Тогда
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Элемент.ТекущаяСтрока);
ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоДополнительноеСведение);
ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта", ПараметрыФормы);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -129,16 +175,3 @@
ЭлементОформляемогоПоля.Использование = Истина; ЭлементОформляемогоПоля.Использование = Истина;
КонецПроцедуры КонецПроцедуры
&НаСервере
Процедура ДобавитьВыбранноеЗначение(Значение)
Если ТипЗнч(Значение) = Тип("Массив") Тогда
Для каждого Ссылка Из Значение Цикл
СписокВыбранных.Добавить(Ссылка);
КонецЦикла;
Иначе
СписокВыбранных.Добавить(Значение);
КонецЕсли;
КонецПроцедуры
@@ -1,170 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormField">
<name>Наименование</name>
<id>1</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Description</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name>
<id>7</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаименованиеКонтекстноеМеню</name>
<id>2</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>3</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительРасширеннаяПодсказка</name>
<id>9</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>4</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Комментарий</name>
<id>5</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Комментарий</segments>
</dataPath>
<titleLocation>Left</titleLocation>
<extendedTooltip>
<name>КомментарийРасширеннаяПодсказка</name>
<id>11</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомментарийКонтекстноеМеню</name>
<id>6</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>Opening</event>
<name>КомментарийОткрытие</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<height>2</height>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<openButton>true</openButton>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<windowOpeningMode>LockOwner</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings>
<autoTitle>true</autoTitle>
<autoUrl>true</autoUrl>
<group>Vertical</group>
<autoFillCheck>true</autoFillCheck>
<allowFormCustomize>true</allowFormCustomize>
<enabled>true</enabled>
<verticalScroll>UseIfNecessary</verticalScroll>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<attributes>
<name>Объект</name>
<id>1</id>
<valueType>
<types>ChartOfCharacteristicTypesObject.ДополнительныеРеквизитыИСведения</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<main>true</main>
<savedData>true</savedData>
</attributes>
<commandInterface>
<navigationPanel/>
<commandBar/>
</commandInterface>
<extInfo xsi:type="form:ChartOfCharacteristicTypesFormExtInfo">
<useForFoldersAndItems>Folders</useForFoldersAndItems>
</extInfo>
</form:Form>
@@ -1,12 +0,0 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ШАПКИ ФОРМЫ
&НаКлиенте
Процедура КомментарийОткрытие(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ОбщегоНазначенияКлиент.ОткрытьФормуРедактированияКомментария(
Элемент.ТекстРедактирования, Объект.Комментарий, Модифицированность);
КонецПроцедуры
@@ -110,14 +110,6 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
<handlers>
<event>BeforeAddRow</event>
<name>СписокПередНачаломДобавления</name>
</handlers>
<handlers>
<event>BeforeRowChange</event>
<name>СписокПередНачаломИзменения</name>
</handlers>
<searchStringAddition> <searchStringAddition>
<name>СписокСтрокаПоиска</name> <name>СписокСтрокаПоиска</name>
<id>9</id> <id>9</id>
@@ -248,6 +240,10 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill> <autoFill>true</autoFill>
</autoCommandBar> </autoCommandBar>
<handlers>
<event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name>
</handlers>
<width>70</width> <width>70</width>
<windowOpeningMode>DontBlock</windowOpeningMode> <windowOpeningMode>DontBlock</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings> <saveWindowSettings>true</saveWindowSettings>
@@ -282,20 +278,28 @@
Свойства.ВерсияДанных, Свойства.ВерсияДанных,
Свойства.ПометкаУдаления, Свойства.ПометкаУдаления,
Свойства.Предопределенный, Свойства.Предопределенный,
Свойства.Родитель, Свойства.Заголовок,
Свойства.ЭтоГруппа, ВЫБОР
КОГДА Свойства.НаборСвойств = ЗНАЧЕНИЕ(Справочник.НаборыДополнительныхРеквизитовИСведений.ПустаяСсылка)
ТОГДА &amp;ПредставлениеГруппировкиОбщихСвойств
КОГДА Свойства.НаборСвойств.Родитель = ЗНАЧЕНИЕ(Справочник.НаборыДополнительныхРеквизитовИСведений.ПустаяСсылка)
ТОГДА Свойства.НаборСвойств
ИНАЧЕ Свойства.НаборСвойств.Родитель.Наименование + &quot; (&quot; + Свойства.НаборСвойств.Наименование + &quot;)&quot;
КОНЕЦ КАК НаборСвойствГруппировка,
Свойства.НаборСвойств,
Свойства.ДополнительныеЗначенияИспользуются,
Свойства.ВладелецДополнительныхЗначений,
Свойства.Наименование, Свойства.Наименование,
Свойства.ТипЗначения, Свойства.ТипЗначения,
Свойства.ЭтоДополнительноеСведение, Свойства.ЭтоДополнительноеСведение,
Свойства.МногострочноеПолеВвода, Свойства.МногострочноеПолеВвода,
Свойства.ЗаполнятьОбязательно, Свойства.ЗаполнятьОбязательно,
Свойства.СклоненияПредмета, Свойства.ЗаголовокФормыЗначения,
Свойства.ЗаголовокФормыВыбораЗначения,
Свойства.ФорматСвойства, Свойства.ФорматСвойства,
Свойства.Комментарий, Свойства.Комментарий,
Свойства.Подсказка, Свойства.Подсказка,
ВЫБОР ВЫБОР
КОГДА Свойства.ЭтоГруппа
ТОГДА 0
КОГДА Свойства.ЭтоДополнительноеСведение КОГДА Свойства.ЭтоДополнительноеСведение
ТОГДА 2 ТОГДА 2
ИНАЧЕ 1 ИНАЧЕ 1
@@ -1,50 +1,31 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ТАБЛИЦЫ ФОРМЫ Список // ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
&НаКлиенте &НаСервере
Процедура СписокПередНачаломИзменения(Элемент, Отказ) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Элемент.ТекущиеДанные <> Неопределено
И НЕ Элемент.ТекущиеДанные.ЭтоГруппа Тогда
Отказ = Истина;
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Элемент.ТекущаяСтрока);
ПараметрыФормы.Вставить("РедактированиеСоставаНаборовРазрешено", Истина);
ОткрытьФорму(
"ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта",
ПараметрыФормы);
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли; КонецЕсли;
КонецПроцедуры ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(
Список,
"ПредставлениеГруппировкиОбщихСвойств",
НСтр("ru = 'Общие (для нескольких наборов)'"),
Истина);
&НаКлиенте // Группировка свойств по наборам.
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) Если ОбщегоНазначенияКлиентСервер.ЭтоПлатформа83БезРежимаСовместимости() Тогда
ГруппировкаДанных = Список.КомпоновщикНастроек.Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
Если Не Группа Тогда ГруппировкаДанных.ИдентификаторПользовательскойНастройки = "ГруппировкаСвойствПоНаборам";
ГруппировкаДанных.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
Отказ = Истина; ПоляГруппировки = ГруппировкаДанных.ПоляГруппировки;
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("РедактированиеСоставаНаборовРазрешено", Истина);
Если Копирование Тогда
ПараметрыФормы.Вставить("ЗначениеКопирования", Элемент.ТекущаяСтрока);
Иначе Иначе
ЗначенияЗаполнения = Новый Структура; ПоляГруппировки = Список.Группировка;
ЗначенияЗаполнения.Вставить("Родитель", Родитель);
ПараметрыФормы.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения);
КонецЕсли; КонецЕсли;
ОткрытьФорму( ЭлементГруппировкиДанных = ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
"ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта", ЭлементГруппировкиДанных.Поле = Новый ПолеКомпоновкиДанных("НаборСвойствГруппировка");
ПараметрыФормы); ЭлементГруппировкиДанных.Использование = Истина;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<Settings xmlns="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" 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:dcscor="http://v8.1c.ru/8.1/data-composition-system/core">
<filter>
<viewMode>Normal</viewMode>
<userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</userSettingID>
</filter>
<order>
<viewMode>Normal</viewMode>
<userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</userSettingID>
</order>
<conditionalAppearance>
<viewMode>Normal</viewMode>
<userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</userSettingID>
</conditionalAppearance>
</Settings>
@@ -19,4 +19,381 @@
КонецФункции КонецФункции
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
// Изменяет настройку свойства с общего или общего списка значений
// на отдельное свойство с отдельным списком значений.
//
Процедура ИзменитьНастройкуСвойства(Параметры, АдресХранилища) Экспорт
Свойство = Параметры.Свойство;
ТекущийНаборСвойств = Параметры.ТекущийНаборСвойств;
ОткрытьСвойство = Неопределено;
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Ссылка", Свойство);
ЭлементБлокировки = Блокировка.Добавить("Справочник.НаборыДополнительныхРеквизитовИСведений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Ссылка", ТекущийНаборСвойств);
ЭлементБлокировки = Блокировка.Добавить("Справочник.ЗначенияСвойствОбъектов");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ЗначенияСвойствОбъектовИерархия");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
НачатьТранзакцию();
Попытка
Блокировка.Заблокировать();
СвойствоОбъект = Свойство.ПолучитьОбъект();
Запрос = Новый Запрос;
Если ЗначениеЗаполнено(СвойствоОбъект.ВладелецДополнительныхЗначений) Тогда
Запрос.УстановитьПараметр("Владелец", СвойствоОбъект.ВладелецДополнительныхЗначений);
СвойствоОбъект.ВладелецДополнительныхЗначений = Неопределено;
СвойствоОбъект.Записать();
Иначе
Запрос.УстановитьПараметр("Владелец", Свойство);
НовыйОбъект = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.СоздатьЭлемент();
ЗаполнитьЗначенияСвойств(НовыйОбъект, СвойствоОбъект, , "Родитель");
СвойствоОбъект = НовыйОбъект;
СвойствоОбъект.НаборСвойств = ТекущийНаборСвойств;
СвойствоОбъект.Записать();
НаборСвойствОбъект = ТекущийНаборСвойств.ПолучитьОбъект();
Если СвойствоОбъект.ЭтоДополнительноеСведение Тогда
НайденнаяСтрока = НаборСвойствОбъект.ДополнительныеСведения.Найти(Свойство, "Свойство");
Если НайденнаяСтрока = Неопределено Тогда
НаборСвойствОбъект.ДополнительныеСведения.Добавить().Свойство = СвойствоОбъект.Ссылка;
Иначе
НайденнаяСтрока.Свойство = СвойствоОбъект.Ссылка;
НайденнаяСтрока.ПометкаУдаления = Ложь;
КонецЕсли;
Иначе
НайденнаяСтрока = НаборСвойствОбъект.ДополнительныеРеквизиты.Найти(Свойство, "Свойство");
Если НайденнаяСтрока = Неопределено Тогда
НаборСвойствОбъект.ДополнительныеРеквизиты.Добавить().Свойство = СвойствоОбъект.Ссылка;
Иначе
НайденнаяСтрока.Свойство = СвойствоОбъект.Ссылка;
НайденнаяСтрока.ПометкаУдаления = Ложь;
КонецЕсли;
КонецЕсли;
НаборСвойствОбъект.Записать();
КонецЕсли;
ОткрытьСвойство = СвойствоОбъект.Ссылка;
МетаданныеВладельца = УправлениеСвойствамиСлужебный.МетаданныеВладельцаЗначенийСвойствНабора(
СвойствоОбъект.НаборСвойств, Ложь);
Если МетаданныеВладельца = Неопределено Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Ошибка при изменении настройки свойства %1.
|Набор свойств %2 не связан ни с одним владельцем значений свойств.'"),
Свойство,
СвойствоОбъект.НаборСвойств);
КонецЕсли;
ПолноеИмяВладельца = МетаданныеВладельца.ПолноеИмя();
Если НЕ УправлениеСвойствамиСлужебный.ТипЗначенияСодержитЗначенияСвойств(СвойствоОбъект.ТипЗначения) Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Ошибка при изменении настройки свойства %1.
|Тип значения не содержит дополнительных значений.'"),
Свойство);
КонецЕсли;
Если СвойствоОбъект.ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда
ИмяСправочника = "ЗначенияСвойствОбъектов";
ЭтоГруппа = "Значения.ЭтоГруппа";
Иначе
ИмяСправочника = "ЗначенияСвойствОбъектовИерархия";
ЭтоГруппа = "Ложь КАК ЭтоГруппа";
КонецЕсли;
Запрос.Текст =
"ВЫБРАТЬ
| Значения.Ссылка КАК Ссылка,
| Значения.Родитель КАК РодительСсылки,
| Значения.ЭтоГруппа,
| Значения.ПометкаУдаления,
| Значения.Наименование,
| Значения.Вес
|ИЗ
| Справочник.ЗначенияСвойствОбъектов КАК Значения
|ГДЕ
| Значения.Владелец = &Владелец
|ИТОГИ ПО
| Ссылка ИЕРАРХИЯ";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ЗначенияСвойствОбъектов", ИмяСправочника);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "Значения.ЭтоГруппа", ЭтоГруппа);
Выгрузка = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
СоответствиеСсылок = Новый Соответствие;
СоздатьГруппыИЗначения(Выгрузка.Строки, СоответствиеСсылок, ИмяСправочника, СвойствоОбъект.Ссылка);
Если Свойство <> СвойствоОбъект.Ссылка
ИЛИ СоответствиеСсылок.Количество() > 0 Тогда
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.ДополнительныеСведения");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Свойство", Свойство);
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.ДополнительныеСведения");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Свойство", СвойствоОбъект.Ссылка);
// Если исходное свойство общее, тогда нужно получить список наборов
// объекта (по каждой ссылке) и, если заменяемое общее свойство есть
// не только в целевом наборе, тогда добавить новое свойство и значение.
//
// Для исходных общих свойств процедура может быть особенно долгой,
// т.к. требует анализа наборов для каждой ссылки (из-за наличия переопределения).
ВладелецСДополнительнымиРеквизитами = Ложь;
Если УправлениеСвойствамиСлужебный.ЭтоОбъектМетаданныхСДополнительнымиРеквизитами(МетаданныеВладельца) Тогда
ВладелецСДополнительнымиРеквизитами = Истина;
ЭлементБлокировки = Блокировка.Добавить(ПолноеИмяВладельца);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
КонецЕсли;
Блокировка.Заблокировать();
ТребуетсяАнализНаборовСсылки = Ложь;
Если Свойство <> СвойствоОбъект.Ссылка Тогда
ИмяПредопределенного = СтрЗаменить(МетаданныеВладельца.ПолноеИмя(), ".", "_");
Попытка
КорневойНабор = Справочники.НаборыДополнительныхРеквизитовИСведений[ИмяПредопределенного];
Исключение
КорневойНабор = Неопределено;
КонецПопытки;
Если КорневойНабор <> Неопределено Тогда
Если ЗначениеЗаполнено(ОбщегоНазначения.ПолучитьЗначениеРеквизита(КорневойНабор, "ЭтоГруппа")) = Истина Тогда
ТребуетсяАнализНаборовСсылки = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если ТребуетсяАнализНаборовСсылки Тогда
ЗапросАнализа = Новый Запрос;
ЗапросАнализа.УстановитьПараметр("ОбщееСвойство", Свойство);
ЗапросАнализа.УстановитьПараметр("НаборНовогоСвойства", СвойствоОбъект.НаборСвойств);
ЗапросАнализа.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ИСТИНА КАК ЗначениеИстина
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений.ДополнительныеСведения КАК НаборыСвойств
|ГДЕ
| НаборыСвойств.Ссылка <> &НаборНовогоСвойства
| И НаборыСвойств.Ссылка В(&ВсеНаборыОбъекта)
| И НаборыСвойств.Свойство = &ОбщееСвойство";
КонецЕсли;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
ТаблицаЗначений = Новый ТаблицаЗначений;
ТаблицаЗначений.Колонки.Добавить("Значение", Новый ОписаниеТипов(
"СправочникСсылка." + ИмяСправочника));
Для каждого КлючИЗначение Из СоответствиеСсылок Цикл
ТаблицаЗначений.Добавить().Значение = КлючИЗначение.Ключ;
КонецЦикла;
Запрос.УстановитьПараметр("ТаблицаЗначений", ТаблицаЗначений);
Запрос.Текст =
"ВЫБРАТЬ
| ТаблицаЗначений.Значение КАК Значение
|ПОМЕСТИТЬ СтарыеЗначения
|ИЗ
| &ТаблицаЗначений КАК ТаблицаЗначений
|
|ИНДЕКСИРОВАТЬ ПО
| Значение";
Запрос.Выполнить();
Запрос.УстановитьПараметр("Свойство", Свойство);
// Замена дополнительных сведений.
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1000
| ДополнительныеСведения.Объект
|ИЗ
| РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ СтарыеЗначения КАК СтарыеЗначения
| ПО (ТИПЗНАЧЕНИЯ(ДополнительныеСведения.Объект) = ТИП(Справочник.ЗначенияСвойствОбъектов))
| И (НЕ ДополнительныеСведения.Объект В (&ОбработанныеОбъекты))
| И (ДополнительныеСведения.Свойство = &Свойство)
| И ДополнительныеСведения.Значение = СтарыеЗначения.Значение";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "Справочник.ЗначенияСвойствОбъектов", ПолноеИмяВладельца);
НаборСтаройЗаписи = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей();
НаборНовойЗаписи = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей();
НаборНовойЗаписи.Добавить();
ОбработанныеОбъекты = Новый Массив;
Пока Истина Цикл
Запрос.УстановитьПараметр("ОбработанныеОбъекты", ОбработанныеОбъекты);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Количество() = 0 Тогда
Прервать;
КонецЕсли;
Пока Выборка.Следующий() Цикл
Заменить = Истина;
Если ТребуетсяАнализНаборовСсылки Тогда
ЗапросАнализа.УстановитьПараметр("ВсеНаборыОбъекта",
УправлениеСвойствамиСлужебный.ПолучитьНаборыСвойствОбъекта(
Выборка.Ссылка).ВыгрузитьКолонку("Набор"));
Заменить = ЗапросАнализа.Выполнить().Пустой();
КонецЕсли;
НаборСтаройЗаписи.Отбор.Объект.Установить(Выборка.Объект);
НаборСтаройЗаписи.Отбор.Свойство.Установить(Свойство);
НаборСтаройЗаписи.Прочитать();
Если НаборСтаройЗаписи.Количество() > 0 Тогда
НаборНовойЗаписи[0].Объект = Выборка.Объект;
НаборНовойЗаписи[0].Свойство = СвойствоОбъект.Ссылка;
НаборНовойЗаписи[0].Значение = СоответствиеСсылок[НаборСтаройЗаписи[0].Значение];
НаборНовойЗаписи.Отбор.Объект.Установить(Выборка.Объект);
НаборНовойЗаписи.Отбор.Свойство.Установить(НаборНовойЗаписи[0].Свойство);
Если Заменить Тогда
НаборСтаройЗаписи.Очистить();
НаборСтаройЗаписи.ОбменДанными.Загрузка = Истина;
НаборСтаройЗаписи.Записать();
Иначе
ОбработанныеОбъекты.Добавить(Выборка.Объект);
КонецЕсли;
НаборНовойЗаписи.ОбменДанными.Загрузка = Истина;
НаборНовойЗаписи.Записать();
КонецЕсли;
КонецЦикла;
КонецЦикла;
// Замена дополнительных реквизитов.
Если ВладелецСДополнительнымиРеквизитами Тогда
Если ТребуетсяАнализНаборовСсылки Тогда
ЗапросАнализа = Новый Запрос;
ЗапросАнализа.УстановитьПараметр("ОбщееСвойство", Свойство);
ЗапросАнализа.УстановитьПараметр("НаборНовогоСвойства", СвойствоОбъект.НаборСвойств);
ЗапросАнализа.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ИСТИНА КАК ЗначениеИстина
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений.ДополнительныеРеквизиты КАК НаборыСвойств
|ГДЕ
| НаборыСвойств.Ссылка <> &НаборНовогоСвойства
| И НаборыСвойств.Ссылка В(&ВсеНаборыОбъекта)
| И НаборыСвойств.Свойство = &ОбщееСвойство";
КонецЕсли;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1000
| ТекущаяТаблица.Ссылка КАК Ссылка
|ИЗ
| ИмяТаблицы КАК ТекущаяТаблица
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ СтарыеЗначения КАК СтарыеЗначения
| ПО (НЕ ТекущаяТаблица.Ссылка В (&ОбработанныеОбъекты))
| И (ТекущаяТаблица.Свойство = &Свойство)
| И ТекущаяТаблица.Значение = СтарыеЗначения.Значение";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ПолноеИмяВладельца + ".ДополнительныеРеквизиты");
ОбработанныеОбъекты = Новый Массив;
Пока Истина Цикл
Запрос.УстановитьПараметр("ОбработанныеОбъекты", ОбработанныеОбъекты);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Количество() = 0 Тогда
Прервать;
КонецЕсли;
Пока Выборка.Следующий() Цикл
ТекущийОбъект = Выборка.Ссылка.ПолучитьОбъект();
Заменить = Истина;
Если ТребуетсяАнализНаборовСсылки Тогда
ЗапросАнализа.УстановитьПараметр("ВсеНаборыОбъекта",
УправлениеСвойствамиСлужебный.ПолучитьНаборыСвойствОбъекта(
Выборка.Ссылка).ВыгрузитьКолонку("Набор"));
Заменить = ЗапросАнализа.Выполнить().Пустой();
КонецЕсли;
Для каждого Строка Из ТекущийОбъект.ДополнительныеРеквизиты Цикл
Если Строка.Свойство = Свойство Тогда
Если Заменить Тогда
Если Строка.Свойство <> СвойствоОбъект.Ссылка Тогда
Строка.Свойство = СвойствоОбъект.Ссылка;
КонецЕсли;
Если Строка.Значение <> СоответствиеСсылок[Строка.Значение] Тогда
Строка.Значение = СоответствиеСсылок[Строка.Значение];
КонецЕсли;
Иначе
НоваяСтрока = ТекущийОбъект.ДополнительныеРеквизиты.Добавить();
НоваяСтрока.Свойство = СвойствоОбъект.Ссылка;
НоваяСтрока.Значение = СоответствиеСсылок[Строка.Значение];
ОбработанныеОбъекты.Добавить(ТекущийОбъект.Ссылка);
Прервать;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если ТекущийОбъект.Модифицированность() Тогда
ТекущийОбъект.ОбменДанными.Загрузка = Истина;
ТекущийОбъект.Записать();
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЕсли;
Запрос.МенеджерВременныхТаблиц.Закрыть();
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
ПоместитьВоВременноеХранилище(ОткрытьСвойство, АдресХранилища);
КонецПроцедуры
Процедура СоздатьГруппыИЗначения(Строки, СоответствиеСсылок, ИмяСправочника, Свойство, СтарыйРодитель = Неопределено)
Для каждого Строка Из Строки Цикл
Если Строка.Ссылка = СтарыйРодитель Тогда
Продолжить;
КонецЕсли;
Если Строка.ЭтоГруппа = Истина Тогда
НовыйОбъект = Справочники[ИмяСправочника].СоздатьГруппу();
ЗаполнитьЗначенияСвойств(НовыйОбъект, Строка, "Наименование, ПометкаУдаления");
Иначе
НовыйОбъект = Справочники[ИмяСправочника].СоздатьЭлемент();
ЗаполнитьЗначенияСвойств(НовыйОбъект, Строка, "Наименование, Вес, ПометкаУдаления");
КонецЕсли;
НовыйОбъект.Владелец = Свойство;
Если ЗначениеЗаполнено(Строка.РодительСсылки) Тогда
НовыйОбъект.Родитель = СоответствиеСсылок[Строка.РодительСсылки];
КонецЕсли;
НовыйОбъект.Записать();
СоответствиеСсылок.Вставить(Строка.Ссылка, НовыйОбъект.Ссылка);
СоздатьГруппыИЗначения(Строка.Строки, СоответствиеСсылок, ИмяСправочника, Свойство, Строка.Ссылка);
КонецЦикла;
КонецПроцедуры
#КонецЕсли #КонецЕсли
@@ -0,0 +1,117 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
Процедура ПриКопировании(ОбъектКопирования)
Заголовок = "";
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если УправлениеСвойствамиСлужебный.ТипЗначенияСодержитЗначенияСвойств(ТипЗначения) Тогда
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ВладелецЗначений", Ссылка);
Запрос.Текст =
"ВЫБРАТЬ
| Свойства.Ссылка КАК Ссылка,
| Свойства.ТипЗначения КАК ТипЗначения
|ИЗ
| ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК Свойства
|ГДЕ
| Свойства.ВладелецДополнительныхЗначений = &ВладелецЗначений";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
НовыйТипЗначения = Неопределено;
Если ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов"))
И НЕ Выборка.ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектов")) Тогда
НовыйТипЗначения = Новый ОписаниеТипов(
Выборка.ТипЗначения,
"СправочникСсылка.ЗначенияСвойствОбъектов",
"СправочникСсылка.ЗначенияСвойствОбъектовИерархия");
ИначеЕсли ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектовИерархия"))
И НЕ Выборка.ТипЗначения.СодержитТип(Тип("СправочникСсылка.ЗначенияСвойствОбъектовИерархия")) Тогда
НовыйТипЗначения = Новый ОписаниеТипов(
Выборка.ТипЗначения,
"СправочникСсылка.ЗначенияСвойствОбъектовИерархия",
"СправочникСсылка.ЗначенияСвойствОбъектов");
КонецЕсли;
Если НовыйТипЗначения <> Неопределено Тогда
ТекущийОбъект = Выборка.Ссылка.ПолучитьОбъект();
ТекущийОбъект.ТипЗначения = НовыйТипЗначения;
ТекущийОбъект.ОбменДанными.Загрузка = Истина;
ТекущийОбъект.Записать();
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Процедура ПередУдалением(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Свойство", Ссылка);
Запрос.Текст =
"ВЫБРАТЬ
| НаборыСвойств.Ссылка КАК Ссылка
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений.ДополнительныеРеквизиты КАК НаборыСвойств
|ГДЕ
| НаборыСвойств.Свойство = &Свойство
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| НаборыСвойств.Ссылка
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений.ДополнительныеСведения КАК НаборыСвойств
|ГДЕ
| НаборыСвойств.Свойство = &Свойство";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ТекущийОбъект = Выборка.Ссылка.ПолучитьОбъект();
// Удаление дополнительных реквизитов.
Индекс = ТекущийОбъект.ДополнительныеРеквизиты.Количество()-1;
Пока Индекс >= 0 Цикл
Если ТекущийОбъект.ДополнительныеРеквизиты[Индекс].Свойство = Ссылка Тогда
ТекущийОбъект.ДополнительныеРеквизиты.Удалить(Индекс);
КонецЕсли;
Индекс = Индекс - 1;
КонецЦикла;
// Удаление дополнительных сведений.
Индекс = ТекущийОбъект.ДополнительныеСведения.Количество()-1;
Пока Индекс >= 0 Цикл
Если ТекущийОбъект.ДополнительныеСведения[Индекс].Свойство = Ссылка Тогда
ТекущийОбъект.ДополнительныеСведения.Удалить(Индекс);
КонецЕсли;
Индекс = Индекс - 1;
КонецЦикла;
Если ТекущийОбъект.Модифицированность() Тогда
ТекущийОбъект.ОбменДанными.Загрузка = Истина;
ТекущийОбъект.Записать();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
#КонецЕсли
@@ -27,6 +27,10 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>ValueType</name> <name>ValueType</name>
<toolTip>
<key>ru</key>
<value>Типы значения, которое можно ввести при заполнении свойства.</value>
</toolTip>
<fillValue xsi:type="core:UndefinedValue"/> <fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking> <fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
@@ -38,10 +42,9 @@
<name>Description</name> <name>Description</name>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Наименование дополнительного реквизита (сведения)</value> <value>Наименование свойства</value>
</toolTip> </toolTip>
<fillValue xsi:type="core:UndefinedValue"/> <fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -65,14 +68,6 @@
<standardAttributes> <standardAttributes>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
<name>Parent</name> <name>Parent</name>
<synonym>
<key>ru</key>
<value>Группа свойств</value>
</synonym>
<toolTip>
<key>ru</key>
<value>Группа, к которой относится дополнительное свойство</value>
</toolTip>
<fillFromFillingValue>true</fillFromFillingValue> <fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue"> <fillValue xsi:type="core:ReferenceValue">
<value>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.EmptyRef</value> <value>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.EmptyRef</value>
@@ -136,16 +131,58 @@
</stringQualifiers> </stringQualifiers>
<dateQualifiers/> <dateQualifiers/>
</type> </type>
<hierarchical>true</hierarchical>
<foldersOnTop>true</foldersOnTop> <foldersOnTop>true</foldersOnTop>
<descriptionLength>100</descriptionLength> <descriptionLength>150</descriptionLength>
<defaultPresentation>AsDescription</defaultPresentation> <defaultPresentation>AsDescription</defaultPresentation>
<editType>InDialog</editType> <editType>InDialog</editType>
<choiceMode>BothWays</choiceMode> <choiceMode>BothWays</choiceMode>
<defaultObjectForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаЭлемента</defaultObjectForm> <defaultObjectForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаЭлемента</defaultObjectForm>
<defaultFolderForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаГруппы</defaultFolderForm>
<defaultListForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаСписка</defaultListForm> <defaultListForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаСписка</defaultListForm>
<defaultChoiceForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаВыбора</defaultChoiceForm> <defaultChoiceForm>ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Form.ФормаВыбора</defaultChoiceForm>
<attributes uuid="af88ea84-5742-4c9f-9a02-6d0f25186f72">
<name>Заголовок</name>
<synonym>
<key>ru</key>
<value>Наименование (заголовок)</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>75</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Краткое представление свойства, которое
выводится в формах редактирования его значения.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fillValue xsi:type="core:StringValue"/>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="79ad09ba-875a-46bd-9cd9-9d084bf4f6ea">
<name>НаборСвойств</name>
<synonym>
<key>ru</key>
<value>Набор свойств</value>
</synonym>
<type>
<types>CatalogRef.НаборыДополнительныхРеквизитовИСведений</types>
</type>
<toolTip>
<key>ru</key>
<value>Набор свойств, которому принадлежит уникальное свойство. Если не задан, значит свойство общее.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="1a4ed7cf-3294-4a5c-9650-75b61d6b2531"> <attributes uuid="1a4ed7cf-3294-4a5c-9650-75b61d6b2531">
<name>ЭтоДополнительноеСведение</name> <name>ЭтоДополнительноеСведение</name>
<synonym> <synonym>
@@ -166,6 +203,25 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="872521e3-413c-45ac-a6ea-39fe1324bae8">
<name>ЗаполнятьОбязательно</name>
<synonym>
<key>ru</key>
<value>Реквизит заполнять обязательно</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Настройка проверки заполненности дополнительного реквизита.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="81ef02df-498d-4af0-8254-dc6730cbf140"> <attributes uuid="81ef02df-498d-4af0-8254-dc6730cbf140">
<name>МногострочноеПолеВвода</name> <name>МногострочноеПолеВвода</name>
<synonym> <synonym>
@@ -189,38 +245,97 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="872521e3-413c-45ac-a6ea-39fe1324bae8"> <attributes uuid="bcbdba9e-0b29-4ea7-a7d5-1de819bf86ec">
<name>ЗаполнятьОбязательно</name> <name>ДополнительныеЗначенияИспользуются</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Заполнять обязательно</value> <value>Дополнительные значения используются</value>
</synonym> </synonym>
<type> <type>
<types>Boolean</types> <types>Boolean</types>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Настройка проверки заполненности свойства по умолчанию для всех наборов свойств.</value> <value>Тип значения включает дополнительные значения.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/> <fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="c4968b4e-0715-43a5-92ad-c8cd276fbf7b"> <attributes uuid="fe926c88-d792-4db3-abcf-3c94dfdcc407">
<name>СклоненияПредмета</name> <name>ВладелецДополнительныхЗначений</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Склонения предмета</value> <value>Владелец дополнительных значений</value>
</synonym> </synonym>
<type> <type>
<types>String</types> <types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types>
<stringQualifiers/>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Используется в форме списка значений свойства и форме значения свойства для улучшения отражения принадлежности значения к свойству.</value> <value>Свойство-образец, с которым у этого свойства одинаковый список дополнительных значений.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="e0c51555-1614-4aa7-a075-c5e1251579ba">
<name>ДополнительныеЗначенияСВесом</name>
<synonym>
<key>ru</key>
<value>Значения дополнительно характеризуются весовым коэффициентом</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Для дополнительных значений можно указать весовой коэффициент.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="cb65fbad-69a0-47d8-b4a9-da49274c3eb7">
<name>ЗаголовокФормыЗначения</name>
<synonym>
<key>ru</key>
<value>Заголовок формы значения</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>150</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Используется в заголовке формы дополнительного значения свойства.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="51363236-c8eb-4eb7-9692-5c18edc9a5a8">
<name>ЗаголовокФормыВыбораЗначения</name>
<synonym>
<key>ru</key>
<value>Заголовок формы выбора значения</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>150</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Используется в заголовке формы выбора дополнительного значения свойства.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -259,7 +374,7 @@
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Показывается в форме подбора при настройке состава наборов дополнительных реквизитов и сведений.</value> <value>Поясняет назначение свойства.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -280,8 +395,7 @@
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Показывается пользователю при редактировании значения <value>Показывается пользователю при редактировании свойства в форме объекта.</value>
дополнительного реквизита или сведения.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -289,6 +403,25 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="c4968b4e-0715-43a5-92ad-c8cd276fbf7b">
<name>УдалитьСклоненияПредмета</name>
<synonym>
<key>ru</key>
<value>(не используется) Склонения предмета</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Ранее содержал заголовок формы значения и заголовок формы выбора значений.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<dataHistory>Use</dataHistory>
</attributes>
<forms uuid="f82d5bd6-4c74-4c23-978c-565aae3d752a"> <forms uuid="f82d5bd6-4c74-4c23-978c-565aae3d752a">
<name>ФормаЭлемента</name> <name>ФормаЭлемента</name>
<synonym> <synonym>
@@ -298,15 +431,6 @@
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes> <usePurposes>MobileDevice</usePurposes>
</forms> </forms>
<forms uuid="403d4675-b80e-4e0a-8cc0-2876661d0c89">
<name>ФормаГруппы</name>
<synonym>
<key>ru</key>
<value>Форма группы</value>
</synonym>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
<forms uuid="7fba41a5-4faa-412b-b367-b30ced0314c0"> <forms uuid="7fba41a5-4faa-412b-b367-b30ced0314c0">
<name>ФормаСписка</name> <name>ФормаСписка</name>
<synonym> <synonym>
@@ -334,16 +458,13 @@
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes> <usePurposes>MobileDevice</usePurposes>
</forms> </forms>
<commands uuid="d671bea8-51b2-4a93-9594-3ae6bb1ace52"> <forms uuid="1813c469-da20-46a6-8947-6815b66f64c1">
<name>ЗначенияСвойстваОбъектов</name> <name>ИзменениеНастройкиСвойства</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Значения свойства объектов</value> <value>Изменение настройки свойства</value>
</synonym> </synonym>
<group>FormNavigationPanelGoTo</group> <usePurposes>PersonalComputer</usePurposes>
<commandParameterType> <usePurposes>MobileDevice</usePurposes>
<types>ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения</types> </forms>
</commandParameterType>
<representation>Auto</representation>
</commands>
</mdclass:ChartOfCharacteristicTypes> </mdclass:ChartOfCharacteristicTypes>
@@ -44,10 +44,6 @@
<metadata>InformationRegister.СообщенияОбменаДанными</metadata> <metadata>InformationRegister.СообщенияОбменаДанными</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Constant.ИмяПользователяКонференцииИнформационногоЦентра</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>ScheduledJob.ОбновлениеИндексаППД</metadata> <metadata>ScheduledJob.ОбновлениеИндексаППД</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -124,10 +120,6 @@
<metadata>Constant.НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса</metadata> <metadata>Constant.НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Catalog.ОбщиеДанныеИнформационногоЦентра</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>InformationRegister.АдресныеСокращения</metadata> <metadata>InformationRegister.АдресныеСокращения</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -136,10 +128,6 @@
<metadata>ScheduledJob.ОбслуживаниеОбластейДанных</metadata> <metadata>ScheduledJob.ОбслуживаниеОбластейДанных</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Catalog.ИнформационныеСсылкиДляФорм</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>Catalog.СценарииОбменовДанными</metadata> <metadata>Catalog.СценарииОбменовДанными</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -180,10 +168,6 @@
<metadata>Constant.ПарольСлужебногоПользователяМенеджераСервиса</metadata> <metadata>Constant.ПарольСлужебногоПользователяМенеджераСервиса</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Constant.ПарольПользователяКонференцииИнформационногоЦентра</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>Constant.СписокРасширенийТекстовыхФайлов</metadata> <metadata>Constant.СписокРасширенийТекстовыхФайлов</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -484,10 +468,6 @@
<metadata>InformationRegister.ЗамерыВремени</metadata> <metadata>InformationRegister.ЗамерыВремени</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Constant.АдресУправленияКонференцией</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>Constant.РазмерБлокаПередачиФайла</metadata> <metadata>Constant.РазмерБлокаПередачиФайла</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -572,18 +552,10 @@
<metadata>ScheduledJob.УстановкаПериодаРассчитанныхИтогов</metadata> <metadata>ScheduledJob.УстановкаПериодаРассчитанныхИтогов</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Catalog.ТипыИнформацииИнформационногоЦентра</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>Constant.ПредставлениеОбластиДанных</metadata> <metadata>Constant.ПредставлениеОбластиДанных</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Catalog.ПолныеПутиКФормам</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>Constant.ВыполнитьРезервноеКопированиеОбластиДанных</metadata> <metadata>Constant.ВыполнитьРезервноеКопированиеОбластиДанных</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -593,7 +565,7 @@
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content> <content>
<metadata>Constant.ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском</metadata> <metadata>Constant.ВыполнитьЗагрузкуПараметровРаботыПрограммы</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content> <content>
@@ -616,6 +588,10 @@
<metadata>Catalog.ПоставляемыеДанные</metadata> <metadata>Catalog.ПоставляемыеДанные</metadata>
<use>DontUse</use> <use>DontUse</use>
</content> </content>
<content>
<metadata>Constant.ПараметрыДополнительныхРеквизитовИСведений</metadata>
<use>DontUse</use>
</content>
<content> <content>
<metadata>InformationRegister.УдалитьОчередьЗаданий</metadata> <metadata>InformationRegister.УдалитьОчередьЗаданий</metadata>
<use>DontUse</use> <use>DontUse</use>
@@ -3,10 +3,14 @@
<name>ВыполнитьОбменДанными</name> <name>ВыполнитьОбменДанными</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Синхронизировать сейчас</value> <value>Синхронизировать</value>
</synonym> </synonym>
<group>CommandGroup.ВыполнениеОбменаДанными</group> <group>CommandGroup.ВыполнениеОбменаДанными</group>
<representation>PictureAndText</representation> <representation>PictureAndText</representation>
<toolTip>
<key>ru</key>
<value>Синхронизировать данные автоматически</value>
</toolTip>
<picture xsi:type="core:PictureRef"> <picture xsi:type="core:PictureRef">
<picture>CommonPicture.СинхронизацияДанныхВыполнение</picture> <picture>CommonPicture.СинхронизацияДанныхВыполнение</picture>
</picture> </picture>
@@ -3,7 +3,7 @@
<name>ВыполнитьОбменДаннымиИнтерактивно</name> <name>ВыполнитьОбменДаннымиИнтерактивно</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Синхронизировать...</value> <value>Синхронизировать с дополнительными параметрами...</value>
</synonym> </synonym>
<group>CommandGroup.ВыполнениеОбменаДанными</group> <group>CommandGroup.ВыполнениеОбменаДанными</group>
<representation>PictureAndText</representation> <representation>PictureAndText</representation>
@@ -1,8 +0,0 @@
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ПараметрыФормы = Неопределено;
ОткрытьФорму("Обработка.ИнформационныйЦентр.Форма.ИнформационныйЦентр", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);
КонецПроцедуры
@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonCommand xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="bb722783-1e0b-4543-b110-fdf69b4fe20e">
<name>ОткрытьИнформационныйЦентр</name>
<synonym>
<key>ru</key>
<value>Информация и поддержка</value>
</synonym>
<group>NavigationPanelOrdinary</group>
<representation>Auto</representation>
</mdclass:CommonCommand>
@@ -8,7 +8,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПриСозданииФормыНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ) Тогда Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -318,6 +318,8 @@
<verticalScrollBar>AutoUse</verticalScrollBar> <verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines> <horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines> <verticalLines>true</verticalLines>
<horizontalLinesBWA>false</horizontalLinesBWA>
<verticalLinesBWA>false</verticalLinesBWA>
<useAlternationRowColorBWA>false</useAlternationRowColorBWA> <useAlternationRowColorBWA>false</useAlternationRowColorBWA>
<searchOnInput>Auto</searchOnInput> <searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView> <initialListView>Auto</initialListView>
@@ -464,6 +466,21 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ВыборГруппИЭлементов</name>
<title>
<key>ru</key>
<value>Выбор групп и элементов</value>
</title>
<id>4</id>
<valueType/>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands> <formCommands>
<name>ВыбратьЗначение</name> <name>ВыбратьЗначение</name>
<title> <title>
@@ -8,6 +8,8 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Параметры.Свойство("ВыборГруппИЭлементов", ВыборГруппИЭлементов);
РежимПодбора = (Параметры.ЗакрыватьПриВыборе = Ложь); РежимПодбора = (Параметры.ЗакрыватьПриВыборе = Ложь);
ИмяРеквизита = Параметры.ИмяРеквизита; ИмяРеквизита = Параметры.ИмяРеквизита;
@@ -136,22 +138,30 @@
&НаКлиенте &НаКлиенте
Процедура ОбработкаВыбораЗначения() Процедура ОбработкаВыбораЗначения()
ТекущиеДанные = Элементы.Список.ТекущиеДанные; ТекущиеДанные = Элементы.Список.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда Если ТекущиеДанные=Неопределено Тогда
Возврат
КонецЕсли;
// Признак группы вычисляем косвенно:
// 0 - Не помеченная на удаление группа
// 1 - Помеченная на удаление группа
ЭтоГруппа = ТекущиеДанные.ИндексКартинки=0 Или ТекущиеДанные.ИндексКартинки=1;
Если (ЭтоГруппа И ВыборГруппИЭлементов=ГруппыИЭлементы.Элементы)
Или (Не ЭтоГруппа И ВыборГруппИЭлементов=ГруппыИЭлементы.Группы)
Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Данные = Новый Структура("Представление, Идентификатор"); Данные = Новый Структура("Представление, Идентификатор");
ЗаполнитьЗначенияСвойств(Данные, ТекущиеДанные); ЗаполнитьЗначенияСвойств(Данные, ТекущиеДанные);
Данные.Вставить("РежимПодбора", РежимПодбора); Данные.Вставить("РежимПодбора", РежимПодбора);
Данные.Вставить("ИмяРеквизита", ИмяРеквизита); Данные.Вставить("ИмяРеквизита", ИмяРеквизита);
ОповеститьОВыборе(Данные); ОповеститьОВыборе(Данные);
КонецПроцедуры КонецПроцедуры
// Для обеспечения обратной совместимости // Для обеспечения обратной совместимости
@@ -397,6 +397,7 @@
<event>OnCreateAtServer</event> <event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name> <name>ПриСозданииНаСервере</name>
</handlers> </handlers>
<width>60</width>
<windowOpeningMode>LockOwner</windowOpeningMode> <windowOpeningMode>LockOwner</windowOpeningMode>
<saveWindowSettings>true</saveWindowSettings> <saveWindowSettings>true</saveWindowSettings>
<autoUrl>true</autoUrl> <autoUrl>true</autoUrl>
@@ -494,23 +495,6 @@
<common>true</common> <common>true</common>
</edit> </edit>
</columns> </columns>
<columns>
<name>Объект</name>
<title>
<key>ru</key>
<value>Объект</value>
</title>
<id>5</id>
<valueType>
<types>CatalogRef.ВерсииФайлов</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
<columns> <columns>
<name>АдресПодписи</name> <name>АдресПодписи</name>
<title> <title>
@@ -84,7 +84,6 @@
НоваяСтрока.КомуВыданСертификат = ВыборкаЗапроса.КомуВыданСертификат; НоваяСтрока.КомуВыданСертификат = ВыборкаЗапроса.КомуВыданСертификат;
НоваяСтрока.ДатаПодписи = ВыборкаЗапроса.ДатаПодписи; НоваяСтрока.ДатаПодписи = ВыборкаЗапроса.ДатаПодписи;
НоваяСтрока.Комментарий = ВыборкаЗапроса.Комментарий; НоваяСтрока.Комментарий = ВыборкаЗапроса.Комментарий;
НоваяСтрока.Объект = ОбъектСсылка;
НоваяСтрока.Отпечаток = ВыборкаЗапроса.Отпечаток; НоваяСтрока.Отпечаток = ВыборкаЗапроса.Отпечаток;
НоваяСтрока.УстановившийПодпись = ВыборкаЗапроса.УстановившийПодпись; НоваяСтрока.УстановившийПодпись = ВыборкаЗапроса.УстановившийПодпись;
НоваяСтрока.ИмяФайлаПодписи = ВыборкаЗапроса.ИмяФайлаПодписи; НоваяСтрока.ИмяФайлаПодписи = ВыборкаЗапроса.ИмяФайлаПодписи;
@@ -1005,10 +1005,6 @@
<value>Выполнить</value> <value>Выполнить</value>
</title> </title>
<id>4</id> <id>4</id>
<toolTip>
<key>ru</key>
<value>Выполнить обработку</value>
</toolTip>
<use> <use>
<common>true</common> <common>true</common>
</use> </use>
@@ -156,24 +156,29 @@
ВыполняемаяКоманда = Новый Структура( ВыполняемаяКоманда = Новый Структура(
"Ссылка, Представление, "Ссылка, Представление,
|Идентификатор, ВариантЗапуска, ПоказыватьОповещение, |Идентификатор, ВариантЗапуска, ПоказыватьОповещение,
|Модификатор, ОбъектыНазначения"); |Модификатор, ОбъектыНазначения, ЭтоОтчет, Вид");
ЗаполнитьЗначенияСвойств(ВыполняемаяКоманда, ДанныеОбработки); ЗаполнитьЗначенияСвойств(ВыполняемаяКоманда, ДанныеОбработки);
Если НЕ ЭтоГлобальныеОбработки Тогда Если НЕ ЭтоГлобальныеОбработки Тогда
ВыполняемаяКоманда.ОбъектыНазначения = ОбъектыНазначения.ВыгрузитьЗначения(); ВыполняемаяКоманда.ОбъектыНазначения = ОбъектыНазначения.ВыгрузитьЗначения();
КонецЕсли; КонецЕсли;
ВыполняемаяКоманда.ЭтоОтчет = ЭтоОтчеты;
ВыполняемаяКоманда.Вид = ВидОбработок;
Если ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы") Тогда Если ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы") Тогда
ВыполнитьОткрытиеФормыОбработки(); ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеФормыОбработки(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
Закрыть();
ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода") Тогда ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода") Тогда
ВыполнитьКлиентскийМетодОбработки(); ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКлиентскийМетодОбработки(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
Закрыть();
ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма") ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма")
И ДанныеОбработки.Модификатор = "ПечатьMXL" Тогда И ДанныеОбработки.Модификатор = "ПечатьMXL" Тогда
ВыполнитьОткрытиеПечатнойФормы(); ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьОткрытиеПечатнойФормы(ВыполняемаяКоманда, ВладелецФормы, ВыполняемаяКоманда.ОбъектыНазначения);
Закрыть();
ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода") ИначеЕсли ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода")
Или ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме") Тогда Или ДанныеОбработки.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме") Тогда
@@ -192,158 +197,6 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОткрытиеФормыОбработки()
ПараметрыОбработки = Новый Структура("ИдентификаторКоманды, ДополнительнаяОбработкаСсылка, ИмяФормы, КлючСессии");
ПараметрыОбработки.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор;
ПараметрыОбработки.ДополнительнаяОбработкаСсылка = ВыполняемаяКоманда.Ссылка;
ПараметрыОбработки.ИмяФормы = ИмяФормыВладельца;
ПараметрыОбработки.КлючСессии = ВыполняемаяКоманда.Ссылка.УникальныйИдентификатор();
Если НЕ ЭтоГлобальныеОбработки Тогда
ПараметрыОбработки.Вставить("ОбъектыНазначения", ВыполняемаяКоманда.ОбъектыНазначения);
КонецЕсли;
#Если ТолстыйКлиентОбычноеПриложение Тогда
ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка);
ФормаОбработки = ВнешняяОбработка.ПолучитьФорму();
Если ФормаОбработки = Неопределено Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для отчета или обработки ""%1"" не назначена основная форма,
|или основная форма не предназначена для запуска в обычном приложении.
|Команда ""%2"" не может быть выполнена.'"),
Строка(ВыполняемаяКоманда.Ссылка),
ВыполняемаяКоманда.Представление);
КонецЕсли;
ФормаОбработки.Открыть();
ФормаОбработки = Неопределено;
#Иначе
ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(ВыполняемаяКоманда.Ссылка);
Если ЭтоОтчеты Тогда
ОткрытьФорму("ВнешнийОтчет."+ ИмяОбработки +".Форма", ПараметрыОбработки, ВладелецФормы);
Иначе
ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки, ВладелецФормы);
КонецЕсли;
#КонецЕсли
ПоказатьРезультатВыполненияОбработки(Неопределено, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьКлиентскийМетодОбработки()
ДополнительныеОтчетыИОбработкиКлиент.ПоказатьОповещениеПриВыполненииКоманды(ВыполняемаяКоманда);
ПараметрыОбработки = Новый Структура("ИдентификаторКоманды,ДополнительнаяОбработкаСсылка, ИмяФормы");
ПараметрыОбработки.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор;
ПараметрыОбработки.ДополнительнаяОбработкаСсылка = ВыполняемаяКоманда.Ссылка;
ПараметрыОбработки.ИмяФормы = ИмяФормыВладельца;
Если НЕ ЭтоГлобальныеОбработки Тогда
ПараметрыОбработки.Вставить("ОбъектыНазначения", ВыполняемаяКоманда.ОбъектыНазначения);
КонецЕсли;
#Если ТолстыйКлиентОбычноеПриложение Тогда
ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка);
ФормаОбработки = ВнешняяОбработка.ПолучитьФорму();
Если ФормаОбработки = Неопределено Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для отчета или обработки ""%1"" не назначена основная форма,
|или основная форма не предназначена для запуска в обычном приложении.
|Команда ""%2"" не может быть выполнена.'"),
Строка(ВыполняемаяКоманда.Ссылка),
ВыполняемаяКоманда.Представление);
КонецЕсли;
#Иначе
ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(ВыполняемаяКоманда.Ссылка);
Если ЭтоОтчеты Тогда
ФормаОбработки = ПолучитьФорму("ВнешнийОтчет."+ ИмяОбработки +".Форма", ПараметрыОбработки, ВладелецФормы);
Иначе
ФормаОбработки = ПолучитьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки, ВладелецФормы);
КонецЕсли;
#КонецЕсли
Если ЭтоГлобальныеОбработки Тогда
ФормаОбработки.ВыполнитьКоманду(ВыполняемаяКоманда.Идентификатор);
ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов") Тогда
СозданныеОбъекты = Новый Массив;
ФормаОбработки.ВыполнитьКоманду(ВыполняемаяКоманда.Идентификатор, ВыполняемаяКоманда.ОбъектыНазначения, СозданныеОбъекты);
ТипыСозданныхОбъектов = Новый Массив;
Для Каждого СозданныйОбъект Из СозданныеОбъекты Цикл
Тип = ТипЗнч(СозданныйОбъект);
Если ТипыСозданныхОбъектов.Найти(Тип) = Неопределено Тогда
ТипыСозданныхОбъектов.Добавить(Тип);
КонецЕсли;
КонецЦикла;
Для Каждого Тип Из ТипыСозданныхОбъектов Цикл
ОповеститьОбИзменении(Тип);
КонецЦикла;
ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма") Тогда
ФормаОбработки.Печать(ВыполняемаяКоманда.Идентификатор, ВыполняемаяКоманда.ОбъектыНазначения);
ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ЗаполнениеОбъекта") Тогда
ФормаОбработки.ВыполнитьКоманду(ВыполняемаяКоманда.Идентификатор, ВыполняемаяКоманда.ОбъектыНазначения);
ТипыИзмененныхОбъектов = Новый Массив;
Для Каждого ИзмененныйОбъект Из ВыполняемаяКоманда.ОбъектыНазначения Цикл
Тип = ТипЗнч(ИзмененныйОбъект);
Если ТипыИзмененныхОбъектов.Найти(Тип) = Неопределено Тогда
ТипыИзмененныхОбъектов.Добавить(Тип);
КонецЕсли;
КонецЦикла;
Для Каждого Тип Из ТипыИзмененныхОбъектов Цикл
ОповеститьОбИзменении(Тип);
КонецЦикла;
ИначеЕсли ВидОбработок = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.Отчет") Тогда
ФормаОбработки.ВыполнитьКоманду(ВыполняемаяКоманда.Идентификатор, ВыполняемаяКоманда.ОбъектыНазначения);
КонецЕсли;
ФормаОбработки = Неопределено;
ПоказатьРезультатВыполненияОбработки(Неопределено, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОткрытиеПечатнойФормы()
СтандартнаяОбработка = Истина;
ДополнительныеОтчетыИОбработкиКлиентПереопределяемый.ПередВыполнениемКомандыПечатиВнешнейПечатнойФормы(
ВыполняемаяКоманда.ОбъектыНазначения, СтандартнаяОбработка);
Отказ = Ложь;
Если СтандартнаяОбработка И Не УправлениеПечатьюКлиент.ПроверитьДокументыПроведены(ВыполняемаяКоманда.ОбъектыНазначения) Тогда
Отказ = Истина;
КонецЕсли;
Если Не Отказ Тогда
ПараметрыОткрытия = Новый Структура("ИсточникДанных, ПараметрыИсточника");
ПараметрыОткрытия.ИсточникДанных = ВыполняемаяКоманда.Ссылка;
ПараметрыОткрытия.ПараметрыИсточника = Новый Структура("ИдентификаторКоманды, ОбъектыНазначения");
ПараметрыОткрытия.ПараметрыИсточника.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор;
ПараметрыОткрытия.ПараметрыИсточника.ОбъектыНазначения = ВыполняемаяКоманда.ОбъектыНазначения;
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы);
КонецЕсли;
ПоказатьРезультатВыполненияОбработки(Неопределено, Истина);
КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ВыполнитьСерверныйМетодОбработки() Процедура ВыполнитьСерверныйМетодОбработки()
ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии = Истина; ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии = Истина;
File diff suppressed because it is too large. Load diff
@@ -1,4 +1,3 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ // ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ
@@ -9,7 +8,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПриСозданииФормыНаСервере(ЭтаФорма, СтандартнаяОбработка, Отказ) Тогда Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -119,7 +118,11 @@
Если Ответ = КодВозвратаДиалога.Да Тогда Если Ответ = КодВозвратаДиалога.Да Тогда
ОбменДаннымиКлиент.ВыполнитьОбменДаннымиОбработкаКоманды(Элементы.СписокСостоянияУзлов.ТекущиеДанные.УзелИнформационнойБазы, ЭтаФорма); АвтоматическаяСинхронизация = (Элементы.СписокСостоянияУзлов.ТекущиеДанные.ВариантОбменаДанными = "Синхронизация");
Получатель = Элементы.СписокСостоянияУзлов.ТекущиеДанные.УзелИнформационнойБазы;
ОбменДаннымиКлиент.ВыполнитьОбменДаннымиОбработкаКоманды(Получатель, ЭтаФорма,, АвтоматическаяСинхронизация);
КонецЕсли; КонецЕсли;
@@ -148,22 +151,22 @@
Если КоличествоСинхронизаций = 1 Тогда Если КоличествоСинхронизаций = 1 Тогда
УзелОбмена = СписокСостоянияУзлов[0].УзелИнформационнойБазы; УзелОбмена = СписокСостоянияУзлов[0].УзелИнформационнойБазы;
АвтоматическаяСинхронизация = (СписокСостоянияУзлов[0].ВариантОбменаДанными = "Синхронизация");
Иначе Иначе
ТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные; ТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда Если ТекущиеДанные = Неопределено Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
УзелОбмена = ТекущиеДанные.УзелИнформационнойБазы; УзелОбмена = ТекущиеДанные.УзелИнформационнойБазы;
АвтоматическаяСинхронизация = (ТекущиеДанные.ВариантОбменаДанными = "Синхронизация");
КонецЕсли; КонецЕсли;
ОбменДаннымиКлиент.ВыполнитьОбменДаннымиОбработкаКоманды(УзелОбмена, ЭтаФорма); ОбменДаннымиКлиент.ВыполнитьОбменДаннымиОбработкаКоманды(УзелОбмена, ЭтаФорма,, АвтоматическаяСинхронизация);
КонецПроцедуры КонецПроцедуры
@@ -495,16 +498,14 @@
Если КоличествоСинхронизаций = 1 Тогда Если КоличествоСинхронизаций = 1 Тогда
Элемент = Элементы.ОткрытьРезультатыОднаСинхронизация; ЗаполнитьЗначенияСвойств(Элементы.ОткрытьРезультатыОднаСинхронизация, СтруктураЗаголовка);
ИначеЕсли КоличествоСинхронизаций > 1 Тогда ИначеЕсли КоличествоСинхронизаций > 1 Тогда
Элемент = Элементы.ОткрытьРезультатыСинхронизацииДанных; ЗаполнитьЗначенияСвойств(Элементы.ОткрытьРезультатыСинхронизацииДанных, СтруктураЗаголовка);
КонецЕсли; КонецЕсли;
ЗаполнитьЗначенияСвойств(Элемент, СтруктураЗаголовка);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -581,7 +582,6 @@
КонецЕсли; КонецЕсли;
Элементы.ДекорацияСтатусПустой.Видимость = Истина;
Если НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных =2 Тогда Если НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных =2 Тогда
НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных = ?(ОбменДаннымиСервер.ОбменДаннымиВыполненСПредупреждениями(НастроеннаяСинхронизация.УзелИнформационнойБазы), 2, 0); НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных = ?(ОбменДаннымиСервер.ОбменДаннымиВыполненСПредупреждениями(НастроеннаяСинхронизация.УзелИнформационнойБазы), 2, 0);
КонецЕсли; КонецЕсли;
@@ -589,6 +589,7 @@
КартинкаСтатуса(Элементы.ДекорацияСтатусЗагрузки, НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных, ПодсказкаЗагрузки); КартинкаСтатуса(Элементы.ДекорацияСтатусЗагрузки, НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных, ПодсказкаЗагрузки);
КартинкаСтатуса(Элементы.ДекорацияСтатусВыгрузки, НастроеннаяСинхронизация.РезультатПоследнейВыгрузкиДанных, ПодсказкаВыгрузки); КартинкаСтатуса(Элементы.ДекорацияСтатусВыгрузки, НастроеннаяСинхронизация.РезультатПоследнейВыгрузкиДанных, ПодсказкаВыгрузки);
Элементы.ДекорацияСтатусПустой.Видимость = Истина;
Если НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных <> 0 Если НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных <> 0
Или (НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных = 0 Или (НастроеннаяСинхронизация.РезультатПоследнейЗагрузкиДанных = 0
И НастроеннаяСинхронизация.РезультатПоследнейВыгрузкиДанных = 0) Тогда И НастроеннаяСинхронизация.РезультатПоследнейВыгрузкиДанных = 0) Тогда
@@ -606,7 +607,7 @@
КонецЕсли; КонецЕсли;
ОписаниеПравилСинхронизацииДанных = ОбменДаннымиСервер.ОписаниеОграниченийПередачиДанных(НастроеннаяСинхронизация.УзелИнформационнойБазы); ОписаниеПравилСинхронизацииДанных = ОбменДаннымиСервер.ОписаниеПравилСинхронизацииДанных(НастроеннаяСинхронизация.УзелИнформационнойБазы);
Элементы.ОписаниеПравилСинхронизацииДанных.Высота = СтрЧислоСтрок(ОписаниеПравилСинхронизацииДанных); Элементы.ОписаниеПравилСинхронизацииДанных.Высота = СтрЧислоСтрок(ОписаниеПравилСинхронизацииДанных);
РасписаниеУзлаИнформационнойБазы = РасписаниеУзлаИнформационнойБазы(НастроеннаяСинхронизация.УзелИнформационнойБазы); РасписаниеУзлаИнформационнойБазы = РасписаниеУзлаИнформационнойБазы(НастроеннаяСинхронизация.УзелИнформационнойБазы);
@@ -566,6 +566,23 @@
<common>true</common> <common>true</common>
</edit> </edit>
</columns> </columns>
<columns>
<name>Набор</name>
<title>
<key>ru</key>
<value>Набор</value>
</title>
<id>7</id>
<valueType>
<types>CatalogRef.НаборыДополнительныхРеквизитовИСведений</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
</attributes> </attributes>
<attributes> <attributes>
<name>ДоступныеНаборыСвойств</name> <name>ДоступныеНаборыСвойств</name>
@@ -604,6 +621,23 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ОсновнойНабор</name>
<title>
<key>ru</key>
<value>Основной набор</value>
</title>
<id>3</id>
<valueType>
<types>CatalogRef.НаборыДополнительныхРеквизитовИСведений</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands> <formCommands>
<name>ИзменитьСоставДополнительныхСведений</name> <name>ИзменитьСоставДополнительныхСведений</name>
<title> <title>
@@ -41,7 +41,7 @@
Если ИмяСобытия = "Запись_НаборыДополнительныхРеквизитовИСведений" Тогда Если ИмяСобытия = "Запись_НаборыДополнительныхРеквизитовИСведений" Тогда
Если ДоступныеНаборыСвойств.НайтиПоЗначению(Параметр) <> Неопределено Тогда Если ДоступныеНаборыСвойств.НайтиПоЗначению(Источник) <> Неопределено Тогда
ЗаполнитьТаблицуЗначенийСвойств(Ложь); ЗаполнитьТаблицуЗначенийСвойств(Ложь);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -106,31 +106,31 @@
&НаКлиенте &НаКлиенте
Процедура ИзменитьСоставДополнительныхСведений(Команда) Процедура ИзменитьСоставДополнительныхСведений(Команда)
Если ДоступныеНаборыСвойств.Количество() = 0 Тогда Если ДоступныеНаборыСвойств.Количество() = 0
ИЛИ НЕ ЗначениеЗаполнено(ДоступныеНаборыСвойств[0].Значение) Тогда
Предупреждение( Предупреждение(
НСтр("ru = 'Не удалось получить наборы дополнительных сведений объекта. НСтр("ru = 'Не удалось получить наборы дополнительных сведений объекта.
| |
|Возможно у объекта не заполнены необходимые реквизиты.'")); |Возможно у объекта не заполнены необходимые реквизиты.'"));
Возврат;
ИначеЕсли ДоступныеНаборыСвойств.Количество() = 1 Тогда
Элемент = ДоступныеНаборыСвойств.Получить(0);
Иначе Иначе
Элемент = ДоступныеНаборыСвойств.ВыбратьЭлемент(
НСтр("ru = 'Выберите набор дополнительных сведений'"));
Если Элемент = Неопределено Тогда
Возврат;
КонецЕсли;
КонецЕсли;
ПараметрыФормы = Новый Структура; ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Элемент.Значение); ПараметрыФормы.Вставить("КлючНазначенияИспользования", "НаборыДополнительныхСведений");
ПараметрыФормы.Вставить("СкрытьДополнительныеРеквизиты", Истина);
ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.Форма.ФормаЭлемента", ПараметрыФормы, ЭтаФорма); ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.ФормаСписка", ПараметрыФормы);
ПараметрыПерехода = Новый Структура;
ПараметрыПерехода.Вставить("Набор", ДоступныеНаборыСвойств[0].Значение);
ПараметрыПерехода.Вставить("Свойство", Неопределено);
ПараметрыПерехода.Вставить("ЭтоДополнительноеСведение", Истина);
Если Элементы.ТаблицаЗначенийСвойств.ТекущиеДанные <> Неопределено Тогда
ПараметрыПерехода.Вставить("Набор", Элементы.ТаблицаЗначенийСвойств.ТекущиеДанные.Набор);
ПараметрыПерехода.Вставить("Свойство", Элементы.ТаблицаЗначенийСвойств.ТекущиеДанные.Свойство);
КонецЕсли;
Оповестить("Переход_НаборыДополнительныхРеквизитовИСведений", ПараметрыПерехода);
КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -568,16 +568,13 @@
#Если Не ВебКлиент Тогда #Если Не ВебКлиент Тогда
Область = Элементы.ТабличныйДокумент.ТекущаяОбласть; Область = Элементы.ТабличныйДокумент.ТекущаяОбласть;
//Если Область = Неопределено Тогда
// Возврат;
//КонецЕсли;
// Шрифт // Шрифт
Шрифт = Область.Шрифт; Шрифт = Область.Шрифт;
Элементы.Полужирный.Пометка = Шрифт <> Неопределено И Шрифт.Жирный; Элементы.Полужирный.Пометка = Шрифт <> Неопределено И Шрифт.Жирный = Истина;
Элементы.Курсив.Пометка = Шрифт <> Неопределено И Шрифт.Наклонный; Элементы.Курсив.Пометка = Шрифт <> Неопределено И Шрифт.Наклонный = Истина;
Элементы.Подчеркивание.Пометка = Шрифт <> Неопределено И Шрифт.Подчеркивание; Элементы.Подчеркивание.Пометка = Шрифт <> Неопределено И Шрифт.Подчеркивание = Истина;
Элементы.Зачеркивание.Пометка = Шрифт <> Неопределено И Шрифт.Зачеркивание; Элементы.Зачеркивание.Пометка = Шрифт <> Неопределено И Шрифт.Зачеркивание = Истина;
// Горизонтальное положение // Горизонтальное положение
Элементы.Влево.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Лево; Элементы.Влево.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Лево;
@@ -585,18 +582,6 @@
Элементы.Вправо.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Право; Элементы.Вправо.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Право;
Элементы.ПоШирине.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.ПоШирине; Элементы.ПоШирине.Пометка = Область.ГоризонтальноеПоложение = ГоризонтальноеПоложение.ПоШирине;
// Границы
//ОбычнаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
//ТолстаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 2);
//
//Элементы.ГраницаСверху.Пометка = Область.ГраницаСверху = ОбычнаяЛиния;
//Элементы.ГраницаСлева.Пометка = Область.ГраницаСлева = ОбычнаяЛиния;
//Элементы.ГраницаСнизу.Пометка = Область.ГраницаСнизу = ОбычнаяЛиния;
//Элементы.ГраницаСправа.Пометка = Область.ГраницаСправа = ОбычнаяЛиния;
//
//Элементы.ТолстаяГраницаСверху.Пометка = Область.ГраницаСверху = ТолстаяЛиния;
//Элементы.ТолстаяГраницаСнизу.Пометка = Область.ГраницаСнизу = ТолстаяЛиния;
#КонецЕсли #КонецЕсли
КонецПроцедуры КонецПроцедуры
@@ -2248,6 +2248,24 @@
<common>true</common> <common>true</common>
</edit> </edit>
</columns> </columns>
<columns>
<name>ВерсияКорреспондента</name>
<title>
<key>ru</key>
<value>Версия корреспондента</value>
</title>
<id>13</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</columns>
</attributes> </attributes>
<attributes> <attributes>
<name>ТаблицаПереходов</name> <name>ТаблицаПереходов</name>
@@ -526,6 +526,7 @@
ПараметрыФормы.Вставить("КонечнаяТочкаКорреспондента", ТекущиеДанные.КонечнаяТочкаКорреспондента); ПараметрыФормы.Вставить("КонечнаяТочкаКорреспондента", ТекущиеДанные.КонечнаяТочкаКорреспондента);
ПараметрыФормы.Вставить("Префикс", ТекущиеДанные.Префикс); ПараметрыФормы.Вставить("Префикс", ТекущиеДанные.Префикс);
ПараметрыФормы.Вставить("ПрефиксКорреспондента", ТекущиеДанные.ПрефиксКорреспондента); ПараметрыФормы.Вставить("ПрефиксКорреспондента", ТекущиеДанные.ПрефиксКорреспондента);
ПараметрыФормы.Вставить("ВерсияКорреспондента", ТекущиеДанные.ВерсияКорреспондента);
Уникальность = ТекущиеДанные.ПланОбмена + Формат(ТекущиеДанные.ОбластьДанных, "ЧЦ=7; ЧВН=; ЧГ=0"); Уникальность = ТекущиеДанные.ПланОбмена + Формат(ТекущиеДанные.ОбластьДанных, "ЧЦ=7; ЧВН=; ЧГ=0");
@@ -685,6 +686,7 @@
КонецЕсли; КонецЕсли;
ЕстьПрефикс = НастройкиСинхронизацииИзМенеджераСервиса.Колонки.Найти("Префикс") <> Неопределено; ЕстьПрефикс = НастройкиСинхронизацииИзМенеджераСервиса.Колонки.Найти("Префикс") <> Неопределено;
ЕстьВерсияКорреспондента = НастройкиСинхронизацииИзМенеджераСервиса.Колонки.Найти("ВерсияКорреспондента") <> Неопределено;
// Заполняем таблицу НастройкиСинхронизацииДанных по данным, полученным из Менеджера сервиса // Заполняем таблицу НастройкиСинхронизацииДанных по данным, полученным из Менеджера сервиса
НастройкиСинхронизацииДанных.Очистить(); НастройкиСинхронизацииДанных.Очистить();
@@ -718,7 +720,7 @@
Настройка.Корреспондент = ПланыОбмена[Настройка.ПланОбмена].НайтиПоКоду( Настройка.Корреспондент = ПланыОбмена[Настройка.ПланОбмена].НайтиПоКоду(
ОбменДаннымиВМоделиСервиса.КодУзлаПланаОбменаВСервисе(Настройка.ОбластьДанных)); ОбменДаннымиВМоделиСервиса.КодУзлаПланаОбменаВСервисе(Настройка.ОбластьДанных));
Настройка.Описание = ОбменДаннымиСервер.ОписаниеОграниченийПередачиДанных(Настройка.Корреспондент); Настройка.Описание = ОбменДаннымиСервер.ОписаниеПравилСинхронизацииДанных(Настройка.Корреспондент);
КонецЕсли; КонецЕсли;
@@ -730,6 +732,12 @@
Настройка.ПрефиксКорреспондента = ""; Настройка.ПрефиксКорреспондента = "";
КонецЕсли; КонецЕсли;
Если ЕстьВерсияКорреспондента Тогда
Настройка.ВерсияКорреспондента = НастройкаИзМенеджераСервиса.ВерсияКорреспондента;
Иначе
Настройка.ВерсияКорреспондента = "";
КонецЕсли;
КонецЦикла; КонецЦикла;
Элементы.ПанельСинхронизацииДанных.Видимость = СинхронизацияНастроена; Элементы.ПанельСинхронизацииДанных.Видимость = СинхронизацияНастроена;
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -308,10 +308,9 @@
ПланОбменаАвтономнойРаботы = ПланОбменаАвтономнойРаботы(); ПланОбменаАвтономнойРаботы = ПланОбменаАвтономнойРаботы();
НастройкаОтборовНаУзле = ПланыОбмена[ПланОбменаАвтономнойРаботы].НастройкаОтборовНаУзле(); НастройкаОтборовНаУзле = ОбменДаннымиСервер.НастройкаОтборовНаУзле(ПланОбменаАвтономнойРаботы, "");
Если НастройкаОтборовНаУзле = Неопределено Если НастройкаОтборовНаУзле.Количество() = 0 Тогда
ИЛИ НастройкаОтборовНаУзле.Количество() = 0 Тогда
Возврат ""; Возврат "";
КонецЕсли; КонецЕсли;
@@ -347,7 +346,7 @@
КонецЦикла; КонецЦикла;
Возврат ПланыОбмена[ПланОбменаАвтономнойРаботы].ОписаниеОграниченийПередачиДанных(НастройкаОтборовНаУзле); Возврат ОбменДаннымиСервер.ОписаниеОграниченийПередачиДанных(ПланОбменаАвтономнойРаботы, НастройкаОтборовНаУзле, "");
КонецФункции КонецФункции
// Для внутреннего использования // Для внутреннего использования
@@ -3204,7 +3204,7 @@
// НомерДома - Строка или число с номером дома (владения, домовладения) // НомерДома - Строка или число с номером дома (владения, домовладения)
// НомерКорпуса - Строка или число с номером корпуса (строения, литеры, сооружения, участка) // НомерКорпуса - Строка или число с номером корпуса (строения, литеры, сооружения, участка)
// //
// Возвращаемое значение - структура с полями: // Возвращаемое значение - cтруктура с полями:
// ЕстьЗдания - Булево - признак того, что на улице есть дома // ЕстьЗдания - Булево - признак того, что на улице есть дома
// Индекс - Строка - почтовый индекс дома. Неопределено, если дом не найден // Индекс - Строка - почтовый индекс дома. Неопределено, если дом не найден
// Код - Строка - код адресного классификатора дома. Неопределено, если дом не найден // Код - Строка - код адресного классификатора дома. Неопределено, если дом не найден
@@ -3276,7 +3276,7 @@
// Описание - Строка - описание дома или диапазона // Описание - Строка - описание дома или диапазона
// ЭтоДиапазон - Булево - признак того, что описание содержит диапазон // ЭтоДиапазон - Булево - признак того, что описание содержит диапазон
// Индекс - Строка - почтовый индекс // Индекс - Строка - почтовый индекс
// Код - Строка - код адресного классификатора, соответствующий описанию // Код - Строка - код адресного классификатора, сответствующий описанию
// //
Функция ВариантыНомеровЗданийУлицы(Знач Улица) Функция ВариантыНомеровЗданийУлицы(Знач Улица)
@@ -3433,7 +3433,7 @@
// Здание - Структура - описание дома, содержит реквизиты Дом, Корпус и т.п. // Здание - Структура - описание дома, содержит реквизиты Дом, Корпус и т.п.
// Описание - Строка - одиночное описание здания // Описание - Строка - одиночное описание здания
// ПолноеСоответствие - Булево - флаг точного поиска. Если указано Ложь, то поиск происходит только по // ПолноеСоответствие - Булево - флаг точного поиска. Если указано Ложь, то поиск происходит только по
// заполненным полям параметра Здание, например под описание // заполненым полям параметра Здание, например под описание
// "Дом 2 корпус 1 строение 6" подойдут "Дом 2 корпус 1" и "Дом 2" // "Дом 2 корпус 1 строение 6" подойдут "Дом 2 корпус 1" и "Дом 2"
// //
// Возвращаемые значение - Булево - признак вхождения // Возвращаемые значение - Булево - признак вхождения
@@ -3450,7 +3450,7 @@
// Сравниваем по частям // Сравниваем по частям
Результат = Истина; Результат = Истина;
// То, что передали, необходимо искать всегда // То, что передали, должно быть в распознанном всегда
Для Каждого КлючЗначение Из Здание Цикл Для Каждого КлючЗначение Из Здание Цикл
Значение = КлючЗначение.Значение; Значение = КлючЗначение.Значение;
Ключ = КлючЗначение.Ключ; Ключ = КлючЗначение.Ключ;
@@ -3483,7 +3483,7 @@
// Описание - Строка - описание одиночного здания КЛАДР // Описание - Строка - описание одиночного здания КЛАДР
// //
// Возвращаемое значение: // Возвращаемое значение:
// Структура - Ключ - идентификатор, значение - номер здания. // Cтруктура - Ключ - идентификатор, значение - номер здания.
// Набор идентификаторов определяется по данным таблицы-результата ТипыЧастейЗдания // Набор идентификаторов определяется по данным таблицы-результата ТипыЧастейЗдания
// //
// Неопределено - если описание не удалось распознать. // Неопределено - если описание не удалось распознать.
@@ -3658,3 +3658,4 @@
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
@@ -744,6 +744,7 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
// При снятии пометки удаления доп. отчета пометка удаления снимается только для предопределенных вариантов отчетов (для пользовательских не снимается).
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Таблица.Ссылка, | Таблица.Ссылка,
@@ -754,14 +755,18 @@
|ИЗ |ИЗ
| Справочник.ВариантыОтчетов КАК Таблица | Справочник.ВариантыОтчетов КАК Таблица
|ГДЕ |ГДЕ
| Таблица.Отчет = &Отчет"; | Таблица.Отчет = &Отчет
| И Таблица.Пользовательский = ЛОЖЬ";
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Отчет", ТекущийОбъект.Ссылка); Запрос.УстановитьПараметр("Отчет", ТекущийОбъект.Ссылка);
Запрос.УстановитьПараметр("ПометкаУдаления", ПометкаУдаления); Если ПометкаУдаления = Истина Тогда
// При установке пометки удаления доп. отчета пометка удаления устанавливается для всех вариантов отчетов - и пользовательских и предопределенных.
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Таблица.Пользовательский = ЛОЖЬ", "");
КонецЕсли;
Запрос.Текст = ТекстЗапроса; Запрос.Текст = ТекстЗапроса;
// Установить пометки удаления существующих // Установка пометки удаления.
Выборка = Запрос.Выполнить().Выбрать(); Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл Пока Выборка.Следующий() Цикл
@@ -706,7 +706,12 @@
Попытка Попытка
Объект = ПрочитатьXML(ЧтениеFastInfoSet); Объект = ПрочитатьXML(ЧтениеFastInfoSet);
Исключение Исключение
ТекстСообщенияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ЗаписьЖурналаРегистрации(НСтр("ru = 'Версионирование'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ТекстСообщенияОбОшибке = НСтр("ru = 'Не удалось перейти на выбранную версию.
|Возможная причина: версия объекта была записана в другой версии программы.
|Техническая информация об ошибке: %1'");
ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщенияОбОшибке, КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
Возврат Неопределено; Возврат Неопределено;
КонецПопытки; КонецПопытки;
@@ -1801,7 +1801,7 @@
НоваяСтрока.Контакт = ЭлементМассива; НоваяСтрока.Контакт = ЭлементМассива;
КонецЕсли; КонецЕсли;
ДозаполнитьПоляКонтактов(НоваяСтрока.Контакт, НоваяСтрока.ПредставлениеКонтакта, НоваяСтрока.КакСвязаться, ТипКонтактнойИнформации); ДозаполнитьПоляКонтактов(НоваяСтрока.Контакт, НоваяСтрока.ПредставлениеКонтакта, НоваяСтрока.КакСвязаться , ТипКонтактнойИнформации);
КонецЦикла; КонецЦикла;
@@ -513,11 +513,11 @@
//установить отборы для режима //установить отборы для режима
Если Форма[ИмяОтбора] = "КРассмотрению" Тогда Если Форма[ИмяОтбора] = "КРассмотрению" Тогда
#Если Сервер Или ВнешнееСоединение Тогда #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
ДатаДляОтбора = ТекущаяДатаСеанса(); ДатаДляОтбора = ТекущаяДатаСеанса();
#Иначе #Иначе
ДатаДляОтбора = ОбщегоНазначенияКлиент.ДатаСеанса(); ДатаДляОтбора = ОбщегоНазначенияКлиент.ДатаСеанса();
#КонецЕсли #КонецЕсли
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Отбор, "Рассмотрено", Ложь,,, Истина); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Отбор, "Рассмотрено", Ложь,,, Истина);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора( ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
Отбор, "РассмотретьПосле", ДатаДляОтбора, ВидСравненияКомпоновкиДанных.МеньшеИлиРавно,, Истина); Отбор, "РассмотретьПосле", ДатаДляОтбора, ВидСравненияКомпоновкиДанных.МеньшеИлиРавно,, Истина);
@@ -789,7 +789,7 @@
Функция ОтборДинамическогоСписка(Список) Экспорт Функция ОтборДинамическогоСписка(Список) Экспорт
Если ОбщегоНазначенияКлиентСервер.ЭтоПлатформа83БезРежимаСовместимости() Тогда Если ОбщегоНазначенияКлиентСервер.ЭтоПлатформа83БезРежимаСовместимости() Тогда
Возврат Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор; Возврат Список.КомпоновщикНастроек.Настройки.Отбор;
Иначе Иначе
Возврат Список.Отбор; Возврат Список.Отбор;
КонецЕсли; КонецЕсли;
@@ -129,9 +129,9 @@
// ПараметрыИсточника (Структура) // ПараметрыИсточника (Структура)
// |- ИдентификаторКоманды (Строка) Список макетов, перечисленных через запятую // |- ИдентификаторКоманды (Строка) Список макетов, перечисленных через запятую
// |- ОбъектыНазначения (Массив) // |- ОбъектыНазначения (Массив)
// КоллекцияПечатныхФорм (ТаблицаЗначений) см. УправлениеПечатьюПереопределяемый.ПечатьПоВнешнемуИсточнику() // КоллекцияПечатныхФорм (ТаблицаЗначений) см. описание процедуры Печать() в документации.
// ОбъектыПечати (СписокЗначений) см. УправлениеПечатьюПереопределяемый.ПечатьПоВнешнемуИсточнику() // ОбъектыПечати (СписокЗначений) см. описание процедуры Печать() в документации.
// ПараметрыВывода (Структура) см. УправлениеПечатьюПереопределяемый.ПечатьПоВнешнемуИсточнику() // ПараметрыВывода (Структура) см. описание процедуры Печать() в документации.
// //
Процедура ПечатьПоВнешнемуИсточнику(Ссылка, ПараметрыИсточника, КоллекцияПечатныхФорм, Процедура ПечатьПоВнешнемуИсточнику(Ссылка, ПараметрыИсточника, КоллекцияПечатныхФорм,
ОбъектыПечати, ПараметрыВывода) Экспорт ОбъектыПечати, ПараметрыВывода) Экспорт
@@ -1314,11 +1314,18 @@
Результат = Ложь; Результат = Ложь;
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПриПроверкеПраваДобавления(ДополнительнаяОбработка, Результат, СтандартнаяОбработка);
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПриПроверкеПраваДобавления(ДополнительнаяОбработка, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда
Возврат Результат;
КонецЕсли; КонецЕсли;
КонецЦикла;
Если СтандартнаяОбработка Тогда Если СтандартнаяОбработка Тогда
Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбщегоНазначения.ИспользованиеРазделителяСеанса() Тогда Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбщегоНазначения.ИспользованиеРазделителяСеанса() Тогда
@@ -1434,15 +1441,24 @@
// //
Функция ВозможнаВыгрузкаОбработкиВФайл(Знач Обработка) Экспорт Функция ВозможнаВыгрузкаОбработкиВФайл(Знач Обработка) Экспорт
Результат = Истина; Результат = Ложь;
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПриПроверкеВозможностиЗагрузкиОбработкиИзФайла(Обработка, Результат, СтандартнаяОбработка);
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПриПроверкеВозможностиЗагрузкиОбработкиИзФайла(Обработка, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда
Возврат Результат;
КонецЕсли; КонецЕсли;
Возврат Результат; КонецЦикла;
Если СтандартнаяОбработка Тогда
Возврат Истина;
КонецЕсли;
КонецФункции КонецФункции
@@ -1456,31 +1472,55 @@
// //
Функция ВозможнаЗагрузкаОбработкиИзФайла(Знач Обработка) Экспорт Функция ВозможнаЗагрузкаОбработкиИзФайла(Знач Обработка) Экспорт
Результат = Истина; Результат = Ложь;
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПриПроверкеВозможностиВыгрузкиОбработкиВФайл(Обработка, Результат, СтандартнаяОбработка);
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПриПроверкеВозможностиВыгрузкиОбработкиВФайл(Обработка, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда
Возврат Результат;
КонецЕсли; КонецЕсли;
Возврат Результат; КонецЦикла;
Если СтандартнаяОбработка Тогда
Возврат Истина;
КонецЕсли;
КонецФункции КонецФункции
// Функция возвращает флаг отображения пользователю информации об использовании // Функция возвращает флаг отображения пользователю расширенной информации о дополнительном
// безопасного режима для дополнительных отчетов и обработок // отчете или обработке.
Функция ОтображатьРасширеннуюИнформацию() Экспорт //
// Параметры:
// Обработка - СправочникСсылка.ДополнительныеОтчетыИОбработки,
//
// Возвращаемое значение: Булево.
//
Функция ОтображатьРасширеннуюИнформацию(Знач Обработка) Экспорт
Результат = Истина; Результат = Ложь;
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПриПроверкеНеобходимостиОтображенияРасширеннойИнформации(Результат, СтандартнаяОбработка);
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПриПроверкеНеобходимостиОтображенияРасширеннойИнформации(Обработка, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда
Возврат Результат;
КонецЕсли; КонецЕсли;
Возврат Результат; КонецЦикла;
Если СтандартнаяОбработка Тогда
Возврат Истина;
КонецЕсли;
КонецФункции КонецФункции
@@ -1491,16 +1531,60 @@
Результат = Новый Массив; Результат = Новый Массив;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
НедоступныеВМоделиСервиса = МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.НедоступныеВидыПубликации();
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Результат, НедоступныеВМоделиСервиса, Истина); Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
КонецЕсли; НедоступныеВидыПубликации = Модуль.НедоступныеВидыПубликации();
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Результат, НедоступныеВидыПубликации, Истина);
КонецЦикла;
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
// Процедура должна вызываться из события ПередЗаписью справочника
// ДополнительныеОтчетыИОбработки, выполняет проверку правомерности изменения реквизитов
// элементов данного справочника для дополнительных обработок, полученных из
// каталога дополнительных обработок менеджера сервиса.
//
// Параметры:
// Источник - СправочникОбъект.ДополнительныеОтчетыИОбработки,
// Отказ - булево, флаг отказа от выполнения записи элемента справочника.
//
Процедура ПередЗаписьюДополнительнойОбработки(Источник, Отказ) Экспорт
ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПередЗаписьюДополнительнойОбработки(Источник, Отказ);
КонецЦикла;
КонецПроцедуры
// Процедура должна вызываться из события ПередУдалением справочника
// ДополнительныеОтчетыИОбработки.
//
// Параметры:
// Источник - СправочникОбъект.ДополнительныеОтчетыИОбработки,
// Отказ - булево, флаг отказа от выполнения удаления элемента справочника из информационной базы.
//
Процедура ПередУдалениемДополнительнойОбработки(Источник, Отказ) Экспорт
ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПередУдалениемДополнительнойОбработки(Источник, Отказ);
КонецЦикла;
КонецПроцедуры
// Запись ошибки в журнал регистрации по дополнительному отчету или обработке. // Запись ошибки в журнал регистрации по дополнительному отчету или обработке.
// //
Процедура ЗаписатьОшибку(Ссылка, ТекстСообщения, Реквизит1 = Неопределено, Реквизит2 = Неопределено, Реквизит3 = Неопределено) Экспорт Процедура ЗаписатьОшибку(Ссылка, ТекстСообщения, Реквизит1 = Неопределено, Реквизит2 = Неопределено, Реквизит3 = Неопределено) Экспорт
@@ -2149,15 +2233,20 @@
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПриПолученииРегистрационныхДанных(Объект, Результат, СтандартнаяОбработка);
КонецЕсли; Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ПриПолученииРегистрационныхДанных(Объект, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда Если Не СтандартнаяОбработка Тогда
Возврат Результат; Возврат Результат;
КонецЕсли; КонецЕсли;
КонецЦикла;
Если СтандартнаяОбработка Тогда
// Подключение и получение имени, под которым объект будет подключаться // Подключение и получение имени, под которым объект будет подключаться
Менеджер = ?(ПараметрыРегистрации.ЭтоОтчет, ВнешниеОтчеты, ВнешниеОбработки); Менеджер = ?(ПараметрыРегистрации.ЭтоОтчет, ВнешниеОтчеты, ВнешниеОбработки);
ПараметрыОбработки.ИмяОбъекта = СокрЛП(Менеджер.Подключить(ПараметрыРегистрации.АдресДанныхОбработки, , Истина)); ПараметрыОбработки.ИмяОбъекта = СокрЛП(Менеджер.Подключить(ПараметрыРегистрации.АдресДанныхОбработки, , Истина));
@@ -2195,16 +2284,19 @@
Возврат РегистрационныеДанные; Возврат РегистрационныеДанные;
КонецЕсли;
КонецФункции КонецФункции
// Процедура вызывается для выполнения проверки возможности выполнения дополнительной обработки // Процедура вызывается для выполнения проверки возможности выполнения дополнительной обработки
// //
Процедура ПроверитьВозможностьВыполнения(Ссылка) Процедура ПроверитьВозможностьВыполнения(Ссылка)
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ПроверитьВозможностьВыполнения(Ссылка); Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
КонецЕсли; Модуль.ПроверитьВозможностьВыполнения(Ссылка);
КонецЦикла;
КонецПроцедуры КонецПроцедуры
@@ -2220,17 +2312,24 @@
// ХранилищеОбработки - ХранилищеЗначения, содержащее ДвоичныеДанные, содержащие файл // ХранилищеОбработки - ХранилищеЗначения, содержащее ДвоичныеДанные, содержащие файл
// дополнительной обработки. // дополнительной обработки.
// //
Функция ОпределитьПараметрыЗапуска(Ссылка) Функция ОпределитьПараметрыЗапуска(Ссылка) Экспорт
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
Свойства = ДополнительныеОтчетыИОбработкиПовтИсп.ПараметрыЗапуска(); Свойства = ДополнительныеОтчетыИОбработкиПовтИсп.ПараметрыЗапуска();
Результат = Новый Структура(Свойства); Результат = Новый Структура(Свойства);
Если ОбщегоНазначенияКлиентСервер.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса") Тогда ОбработчикиУсловныхВызовов = ДополнительныеОтчетыИОбработкиПовтИсп.ОбработчикиИнтеграции();
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначенияКлиентСервер.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); Для Каждого ОбработчикУсловныхВызовов Из ОбработчикиУсловныхВызовов Цикл
МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ОпределениеПараметровЗапуска(Ссылка, Результат, СтандартнаяОбработка);
Модуль = ОбщегоНазначенияКлиентСервер.ОбщийМодуль(ОбработчикУсловныхВызовов);
Модуль.ОпределениеПараметровЗапуска(Ссылка, Результат, СтандартнаяОбработка);
Если Не СтандартнаяОбработка Тогда
Возврат Результат;
КонецЕсли; КонецЕсли;
КонецЦикла;
Если СтандартнаяОбработка Тогда Если СтандартнаяОбработка Тогда
ЗаполнитьЗначенияСвойств(Результат, ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, Свойства)); ЗаполнитьЗначенияСвойств(Результат, ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, Свойства));
@@ -0,0 +1,523 @@
////////////////////////////////////////////////////////////////////////////////
// Подсистема "Дополнительные отчеты и обработки", процедуры и функции специфичные
// для использования подсистемы в автономном рабочем месте
//
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЙ ПРОГРАММНЫЙ ИНТЕРФЕЙС
// См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер.
Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт
СерверныеОбработчики[
"СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриОтправкеДанныхГлавному"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриОтправкеДанныхПодчиненному"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииДанныхОтГлавного"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииДанныхОтПодчиненного"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииОбязательныхОбъектовПланаОбмена"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииОбъектовИсключенийПланаОбмена"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
СерверныеОбработчики[
"СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииОбъектовНачальногоОбразаПланаОбмена"].Добавить(
"ДополнительныеОтчетыИОбработкиВАвтономномРежиме");
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Обработчики событий подсистем БСП
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной информационной базе.
//
// Параметры:
// см. описание обработчика события ПриОтправкеДанныхГлавному() в синтаксис-помощнике.
//
Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель) Экспорт
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
//
ИначеЕсли АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ДополнительныеОтчетыИОбработки") Тогда
Если Не ЭтоОбработкаСервиса(ЭлементДанных.Ссылка) Тогда
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной информационной базе.
//
// Параметры:
// см. описание обработчика события ПриОтправкеДанныхПодчиненному() в синтаксис-помощнике.
//
Процедура ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза, Получатель) Экспорт
Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда
Возврат;
КонецЕсли;
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить
ИЛИ ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
// Стандартную обработку не переопределяем
Иначе
Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ДополнительныеОтчетыИОбработки") Тогда
Если ДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(ЭлементДанных.Ссылка) Тогда
ПараметрыЗапускаОбработки = ДополнительныеОтчетыИОбработки.ОпределитьПараметрыЗапуска(ЭлементДанных.Ссылка);
ЗаполнитьЗначенияСвойств(ЭлементДанных, ПараметрыЗапускаОбработки);
КонецЕсли;
КонецЕсли;
Если ТипЗнч(ЭлементДанных) = Тип("КонстантаМенеджерЗначения.ИспользоватьДополнительныеОтчетыИОбработки") Тогда
Если Не СозданиеНачальногоОбраза Тогда
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной информационной базе.
//
// Параметры:
// см. описание обработчика события ПриПолученииДанныхОтГлавного() в синтаксис-помощнике.
//
Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт
Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда
// Стандартную обработку не переопределяем
ИначеЕсли АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ДополнительныеОтчетыИОбработки") Тогда
Если ЗначениеЗаполнено(ЭлементДанных.Ссылка) Тогда
СсылкаОбработки = ЭлементДанных.Ссылка;
Иначе
СсылкаОбработки = ЭлементДанных.ПолучитьСсылкуНового();
КонецЕсли;
ЗарегистрироватьОбработкуСервиса(СсылкаОбработки);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной информационной базе.
//
// Параметры:
// см. описание обработчика события ПриПолученииДанныхОтПодчиненного() в синтаксис-помощнике.
//
Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт
Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда
Возврат;
КонецЕсли;
Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда
// Стандартную обработку не переопределяем
Иначе
Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ДополнительныеОтчетыИОбработки") Тогда
Если ДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(ЭлементДанных.Ссылка) Тогда
ПараметрыЗапускаОбработки = ДополнительныеОтчетыИОбработки.ОпределитьПараметрыЗапуска(ЭлементДанных.Ссылка);
ЗаполнитьЗначенияСвойств(ЭлементДанных, ПараметрыЗапускаОбработки);
ЭлементДанных.ХранилищеОбработки = Неопределено;
Иначе
Если Не Константы.НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса.Получить() Тогда
ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Используется для получения объектов метаданных обязательных для плана обмена.
// Если подсистема имеет объекты метаданных обязательные для включения в состав плана обмена,
// то в параметр <Объект> необходимо добавить эти объекты метаданных.
//
// Параметры:
// Объекты – Массив. Массив объектов метаданных конфигурации, которые необходимо включить в состав плана обмена.
// РаспределеннаяИнформационнаяБаза (только чтение) – Булево. Признак получения объектов для плана обмена РИБ.
// Истина – требуется получить список объектов плана обмена РИБ;
// Ложь – требуется получить список для плана обмена НЕ РИБ.
//
Процедура ПриПолученииОбязательныхОбъектовПланаОбмена(Объекты, Знач РаспределеннаяИнформационнаяБаза) Экспорт
Если РаспределеннаяИнформационнаяБаза Тогда
Объекты.Добавить(Метаданные.Справочники.ДополнительныеОтчетыИОбработки);
Объекты.Добавить(Метаданные.РегистрыСведений.НазначениеДополнительныхОбработок);
Объекты.Добавить(Метаданные.РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам);
КонецЕсли;
КонецПроцедуры
// Используется для получения объектов метаданных, которые не следует включать в состав плана обмена.
// Если подсистема имеет объекты метаданных, которые не следует включать в состав плана обмена,
// то в параметр <Объект> необходимо добавить эти объекты метаданных.
//
// Параметры:
// Объекты – Массив. Массив объектов метаданных конфигурации, которые не следует включать в состав плана обмена.
// РаспределеннаяИнформационнаяБаза (только чтение) – Булево. Признак получения объектов для плана обмена РИБ.
// Истина – требуется получить список объектов-исключений плана обмена РИБ;
// Ложь – требуется получить список для плана обмена НЕ РИБ.
//
Процедура ПриПолученииОбъектовИсключенийПланаОбмена(Объекты, Знач РаспределеннаяИнформационнаяБаза) Экспорт
Если РаспределеннаяИнформационнаяБаза Тогда
Объекты.Добавить(Метаданные.Константы.ИспользованиеКаталогаДополнительныхОтчетовИОбработокВМоделиСервиса);
Объекты.Добавить(Метаданные.Константы.МинимальныйИнтервалРегламентныхЗаданийДополнительныхОтчетовИОбработокВМоделиСервиса);
Объекты.Добавить(Метаданные.Константы.НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса);
Объекты.Добавить(Метаданные.Константы.РазрешитьВыполнениеДополнительныхОтчетовИОбработокРегламентнымиЗаданиямиВМоделиСервиса);
Объекты.Добавить(Метаданные.Справочники.ПоставляемыеДополнительныеОтчетыИОбработки);
Объекты.Добавить(Метаданные.РегистрыСведений.ИспользованиеДополнительныхОтчетовИОбработокСервисаВАвтономномРабочемМесте);
Объекты.Добавить(Метаданные.РегистрыСведений.ИспользованиеПоставляемыхДополнительныхОтчетовИОбработокВОбластяхДанных);
Объекты.Добавить(Метаданные.РегистрыСведений.ОчередьИнсталляцииПоставляемыхДополнительныхОтчетовИОбработокВОбластиДанных);
КонецЕсли;
КонецПроцедуры
// Используется для получения объектов метаданных, которые должны входить в состав плана обмена
// и НЕ должны входить в состав подписок на события регистрации изменений для этого плана обмена.
// Эти объекты метаданных используются только в момент создания начального образа подчиненного узла
// и не мигрируют в процессе обмена.
// Если подсистема имеет объекты метаданных, которые участвуют только в создании начального образа подчиненного узла,
// то в параметр <Объект> необходимо добавить эти объекты метаданных.
//
// Параметры:
// Объекты – Массив. Массив объектов метаданных конфигурации.
//
Процедура ПриПолученииОбъектовНачальногоОбразаПланаОбмена(Объекты) Экспорт
Объекты.Добавить(Метаданные.Константы.ИспользоватьДополнительныеОтчетыИОбработки);
КонецПроцедуры
// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме.
//
// Параметры:
// Обработчики - ТаблицаЗначений - см. описание функции НоваяТаблицаОбработчиковОбновления
// общего модуля ОбновлениеИнформационнойБазы.
//
Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "2.1.5.2";
Обработчик.Процедура = "ДополнительныеОтчетыИОбработкиВАвтономномРежиме.ЗарегистрироватьИзмененияПриОбновлении";
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Обработчики условных вызовов
// Вызывается при определении наличия у текущего пользователя права на добавление дополнительного
// отчета или обработки в область данных.
//
// Параметры:
// ДополнительнаяОбработка - СправочникОбъект.ДополнительныеОтчетыИОбработки, элемент справочника,
// который записывается пользователем.
// Результат - Булево, в этот параметр в данной процедуре устанавливается флаг наличия права,
// СтандартнаяОбработка - Булево, в этот параметр в данной процедуре устанавливается флаг выполнения
// стандартной обработки проверки права.
//
Процедура ПриПроверкеПраваДобавления(Знач ДополнительнаяОбработка = Неопределено, Результат, СтандартнаяОбработка) Экспорт
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Результат = Истина;
СтандартнаяОбработка = Ложь;
Возврат;
КонецЕсли;
КонецПроцедуры
// Вызывается при проверке возможности загрузки дополнительного отчета или обработки из файла
//
// Параметры:
// ДополнительнаяОбработка - СправочникСсылка.ДополнительныеОтчетыИОбработки,
// Результат - Булево, в этот параметр в данной процедуре устанавливается флаг наличия возможности
// загрузки дополнительного отчета или обработки из файла,
// СтандартнаяОбработка - Булево, в этот параметр в данной процедуре устанавливается флаг выполнения
// стандартной обработки проверки возможности загрузки дополнительного отчета или обработки из файла.
//
Процедура ПриПроверкеВозможностиЗагрузкиОбработкиИзФайла(Знач ДополнительнаяОбработка, Результат, СтандартнаяОбработка) Экспорт
УстановитьПривилегированныйРежим(Истина);
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Результат = Не ЭтоОбработкаСервиса(ДополнительнаяОбработка);
СтандартнаяОбработка = Ложь;
КонецЕсли;
КонецПроцедуры
// Вызывается при проверке возможности выгрузки дополнительного отчета или обработки в файл
//
// Параметры:
// ДополнительнаяОбработка - СправочникСсылка.ДополнительныеОтчетыИОбработки,
// Результат - Булево, в этот параметр в данной процедуре устанавливается флаг наличия возможности
// выгрузки дополнительного отчета или обработки в файл,
// СтандартнаяОбработка - Булево, в этот параметр в данной процедуре устанавливается флаг выполнения
// стандартной обработки проверки возможности выгрузки дополнительного отчета или обработки в файл.
//
Процедура ПриПроверкеВозможностиВыгрузкиОбработкиВФайл(Знач ДополнительнаяОбработка, Результат, СтандартнаяОбработка) Экспорт
УстановитьПривилегированныйРежим(Истина);
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Результат = Не ЭтоОбработкаСервиса(ДополнительнаяОбработка);
СтандартнаяОбработка = Ложь;
КонецЕсли;
КонецПроцедуры
// Вызывается при проверке необходимости отображения расширенной информации о дополнительных
// отчетах и обработках в пользовательском интерфейсе.
//
// Параметры:
// ДополнительнаяОбработка - СправочникСсылка.ДополнительныеОтчетыИОбработки,
// Результат - Булево, в этот параметр в данной процедуре устанавливается флаг наличия необходимости
// отображения расширенной информации о дополнительных отчетах и обработках в пользовательском
// интерфейсе.
// СтандартнаяОбработка - Булево, в этот параметр в данной процедуре устанавливается флаг выполнения
// стандартной обработки проверки наличия необходимости отображения расширенной информации о
// дополнительных отчетах и обработках в пользовательском интерфейсе.
//
Процедура ПриПроверкеНеобходимостиОтображенияРасширеннойИнформации(Знач ДополнительнаяОбработка, Результат, СтандартнаяОбработка) Экспорт
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Результат = Не ЭтоОбработкаСервиса(ДополнительнаяОбработка);
СтандартнаяОбработка = Ложь;
КонецЕсли;
КонецПроцедуры
// Возвращает виды публикации дополнительных отчетов и обработок, недоступные для использования
// в текущей модели информационной базы.
//
Функция НедоступныеВидыПубликации() Экспорт
Результат = Новый Массив;
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Результат.Добавить("РежимОтладки");
КонецЕсли;
Возврат Результат;
КонецФункции
// Вызывается при определении параметров запуска для дополнительного отчета или обработки.
//
Функция ОпределениеПараметровЗапуска(Ссылка, Результат, СтандартнаяОбработка) Экспорт
КонецФункции
// Вызывается при получении регистрационных данных для нового дополнительного отчета
// или обработки.
//
Процедура ПриПолученииРегистрационныхДанных(Объект, РегистрационныеДанные, СтандартнаяОбработка) Экспорт
КонецПроцедуры
// Вызывается при проверке возможности выполнения дополнительного отчета или обработки.
//
Процедура ПроверитьВозможностьВыполнения(Ссылка) Экспорт
КонецПроцедуры
// Вызывается при формировании текста запроса формы списка справочника ДополнительныеОтчетыИОбработки.
//
// Параметры:
// ТекстЗапроса - Строка, текст запроса.
//
Процедура ПриДополненииТекстаЗапросаФормыСпискаДополнительныхОтчетовИОбработок(ТекстЗапроса) Экспорт
Если АвтономнаяРаботаСлужебный.АвтономнаяРаботаПоддерживается() И АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ЛОЖЬ КАК ФлагПредопределенного", "ЕСТЬNULL(ИспользованиеВАРМ.Поставляемый, Ложь) КАК ФлагПредопределенного");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "Справочник.ДополнительныеОтчетыИОбработки КАК Таблица", "Справочник.ДополнительныеОтчетыИОбработки КАК Таблица ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИспользованиеДополнительныхОтчетовИОбработокСервисаВАвтономномРабочемМесте КАК ИспользованиеВАРМ ПО Таблица.Ссылка = ИспользованиеВАРМ.ДополнительныйОтчетИлиОбработка");
КонецЕсли;
КонецПроцедуры
// Процедура должна вызываться из события ПередУдалением справочника
// ДополнительныеОтчетыИОбработки.
//
// Параметры:
// Источник - СправочникОбъект.ДополнительныеОтчетыИОбработки,
// Отказ - булево, флаг отказа от выполнения удаления элемента справочника из информационной базы.
//
Процедура ПередУдалениемДополнительнойОбработки(Источник, Отказ) Экспорт
КонецПроцедуры
// Процедура должна вызываться из события ПередЗаписью справочника
// ДополнительныеОтчетыИОбработки, выполняет проверку правомерности изменения реквизитов
// элементов данного справочника для дополнительных обработок, полученных из
// каталога дополнительных обработок менеджера сервиса.
//
// Параметры:
// Источник - СправочникОбъект.ДополнительныеОтчетыИОбработки,
// Отказ - булево, флаг отказа от выполнения записи элемента справочника.
//
Процедура ПередЗаписьюДополнительнойОбработки(Источник, Отказ) Экспорт
Если Источник.ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто() Тогда
Если (Источник.ПометкаУдаления ИЛИ Источник.Публикация = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Отключена) И ЭтоОбработкаСервиса(Источник.Ссылка) Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Дополнительный отчет или обработка %1 был загружен из сервиса и не может быть отключен из автономного рабочего места!
|Для удаления дополнительного отчета или обработки необходимо выполнить операцию отключения в
|приложении сервиса и провести синхронизацию данных автономного рабочего места с сервисом.'"),
Источник.Наименование);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Обработчики обновления ИБ.
// Выполняет начальную регистрацию изменений в объектах подсистемы ДополнительныеОтчетыИОбработки
// при обновлении на новую версию БСП.
//
Функция ЗарегистрироватьИзмененияПриОбновлении() Экспорт
Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбменДаннымиПовтИсп.АвтономнаяРаботаПоддерживается() Тогда
ПланОбменаАРМ = АвтономнаяРаботаСлужебный.ПланОбменаАвтономнойРаботы();
УзелСервиса = ПланыОбмена[ПланОбменаАРМ].ЭтотУзел();
УзлыАРМ = Новый Массив();
ВыборкаУзлов = ПланыОбмена[ПланОбменаАРМ].Выбрать();
Пока ВыборкаУзлов.Следующий() Цикл
Если ВыборкаУзлов.Ссылка <> УзелСервиса Тогда
УзлыАРМ.Добавить(ВыборкаУзлов.Ссылка);
КонецЕсли;
КонецЦикла;
ПланыОбмена.ЗарегистрироватьИзменения(УзлыАРМ, Метаданные.Справочники.ДополнительныеОтчетыИОбработки);
ПланыОбмена.ЗарегистрироватьИзменения(УзлыАРМ, Метаданные.РегистрыСведений.НазначениеДополнительныхОбработок);
ПланыОбмена.ЗарегистрироватьИзменения(УзлыАРМ, Метаданные.РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам);
ПланыОбмена.ЗарегистрироватьИзменения(УзлыАРМ, Метаданные.Константы.ИспользоватьДополнительныеОтчетыИОбработки);
КонецЕсли;
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
// Регистрирует дополнительный отчет иди обработку в качестве обработки, полученной
// в автономное рабочее место из сервиса.
//
// Параметры:
// Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки.
//
Процедура ЗарегистрироватьОбработкуСервиса(Знач Ссылка)
Набор = РегистрыСведений.ИспользованиеДополнительныхОтчетовИОбработокСервисаВАвтономномРабочемМесте.СоздатьНаборЗаписей();
Набор.Отбор.ДополнительныйОтчетИлиОбработка.Установить(Ссылка);
Запись = Набор.Добавить();
Запись.ДополнительныйОтчетИлиОбработка = Ссылка;
Запись.Поставляемый = Истина;
Набор.Записать();
КонецПроцедуры
// Функция проверяет, была ли дополнительная обработка получена в автономное рабочее место из сервиса.
//
// Параметры:
// Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки.
//
// Возвращаемое значение:
// Булево.
//
Функция ЭтоОбработкаСервиса(Ссылка)
Менеджер = РегистрыСведений.ИспользованиеДополнительныхОтчетовИОбработокСервисаВАвтономномРабочемМесте.СоздатьМенеджерЗаписи();
Менеджер.ДополнительныйОтчетИлиОбработка = Ссылка;
Менеджер.Прочитать();
Если Менеджер.Выбран() Тогда
Возврат Менеджер.Поставляемый;
Иначе
Возврат Ложь;
КонецЕсли;
КонецФункции
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7ea3206a-2a16-460d-ad6d-849103f50bdb">
<name>ДополнительныеОтчетыИОбработкиВАвтономномРежиме</name>
<synonym>
<key>ru</key>
<value>Дополнительные отчеты и обработки в автономном режиме</value>
</synonym>
<server>true</server>
</mdclass:CommonModule>
Loaded 100 of 370 files, more files were not shown because too many files have changed in this diff. Show more