3_0_2_150

This commit is contained in:
Компания 1С committed 2018-12-07 12:16:00 +03:00
1 parent c1c197f045
commit 1230a93e58
2063 files changed
+130406 -63087

No files matched your search

@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -16,6 +23,16 @@
ТекущийПользователь = Пользователи.ТекущийПользователь();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ПараметрыГиперссылки = МодульРаботаСФайлами.ГиперссылкаФайлов();
ПараметрыГиперссылки.Размещение = "КоманднаяПанель";
ПараметрыГиперссылки.Владелец = "Объект.БизнесПроцесс";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаКлиенте
@@ -23,6 +40,13 @@
БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект);
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
@@ -34,7 +58,7 @@
КонецЕсли;
Если НЕ ЗаданиеВыполнено И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача отклоняется.'"),,
"Объект.РезультатВыполнения",,
Отказ);
@@ -57,6 +81,13 @@
КонецЕсли;
КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
@@ -110,6 +141,40 @@
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область ОбработчикиКомандФормы
@@ -159,6 +224,18 @@
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -16,6 +23,16 @@
ТекущийПользователь = Пользователи.ТекущийПользователь();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ПараметрыГиперссылки = МодульРаботаСФайлами.ГиперссылкаФайлов();
ПараметрыГиперссылки.Размещение = "КоманднаяПанель";
ПараметрыГиперссылки.Владелец = "Объект.БизнесПроцесс";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаКлиенте
@@ -23,6 +40,13 @@
БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект);
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
@@ -35,14 +59,14 @@
Если НЕ ЗаданиеВыполнено И НЕ ЗаданиеПодтверждено
И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача возвращается на доработку.'"),,
"Объект.РезультатВыполнения",,
Отказ);
Возврат;
ИначеЕсли НЕ ЗаданиеВыполнено И ЗаданиеПодтверждено
И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача отменяется.'"),,
"Объект.РезультатВыполнения",,
Отказ);
@@ -79,6 +103,13 @@
КонецЕсли;
КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
#КонецОбласти
@@ -102,6 +133,40 @@
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область ОбработчикиКомандФормы
@@ -169,6 +234,18 @@
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -367,7 +367,6 @@
<autoMaxHeight>true</autoMaxHeight>
<dropListButton>false</dropListButton>
<choiceButton>true</choiceButton>
<choiceButtonRepresentation>ShowInInputField</choiceButtonRepresentation>
<openButton>false</openButton>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
@@ -816,7 +815,6 @@
<autoMaxHeight>true</autoMaxHeight>
<dropListButton>false</dropListButton>
<choiceButton>true</choiceButton>
<choiceButtonRepresentation>ShowInInputField</choiceButtonRepresentation>
<openButton>false</openButton>
<autoMarkIncomplete>false</autoMarkIncomplete>
<chooseType>true</chooseType>
@@ -1752,7 +1750,14 @@
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<commandInterface>
<navigationPanel/>
<navigationPanel>
<cmiFragmentRecord>
<command>CommonCommand.ПрисоединенныеФайлы</command>
<group>FormNavigationPanelGoTo</group>
<index>0</index>
<userVisible/>
</cmiFragmentRecord>
</navigationPanel>
<commandBar/>
</commandInterface>
<extInfo xsi:type="form:BusinessProcesFormExtInfo">
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОписаниеПеременных
&НаКлиенте
@@ -26,6 +34,15 @@
ИнициализацияФормы();
КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ГиперссылкаФайлов = МодульРаботаСФайлами.ГиперссылкаФайлов();
ГиперссылкаФайлов.Размещение = "КоманднаяПанель";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ГиперссылкаФайлов);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаКлиенте
@@ -33,6 +50,13 @@
ОбновитьДоступностьКомандОстановки();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
@@ -83,6 +107,13 @@
УстановитьСвойстваЭлементовФормы(ЭтотОбъект);
КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
@@ -309,6 +340,40 @@
КонецЕсли;
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область ОбработчикиКомандФормы
@@ -347,6 +412,18 @@
ОткрытьНастройкуОтложенногоСтарта();
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -552,7 +629,7 @@
ДатаОтложенногоСтарта = БизнесПроцессыИЗадачиСервер.ДатаОтложенногоСтартаПроцесса(ПроверяемыйОбъект.Ссылка);
Если ПроверяемыйОбъект.СрокИсполнения < ДатаОтложенногоСтарта Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Срок исполнения задания не может быть меньше даты отложенного старта.'"),,
"СрокИсполнения", "Объект.СрокИсполнения");
КонецЕсли;
@@ -579,17 +656,17 @@
РеквизитыФормыЗаполнены = Истина;
Если НЕ ЗначениеЗаполнено(Объект.Исполнитель) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Поле ""Исполнитель"" не заполнено.'"),,
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Исполнитель"" не заполнено.'"),,
"Исполнитель", "Объект.Исполнитель");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Объект.Наименование) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Поле ""Задание"" не заполнено.'"),,
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Задание"" не заполнено.'"),,
"Исполнитель", "Объект.Наименование");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Объект.СрокИсполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Поле ""Срок"" исполнения не заполнено.'"),,
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Срок"" исполнения не заполнено.'"),,
"СрокИсполнения", "Объект.СрокИсполнения");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
@@ -1270,6 +1270,11 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>Список</name>
<id>1</id>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -68,10 +76,7 @@
Если ЭтоНовый() Тогда
Автор = Пользователи.АвторизованныйПользователь();
Важность = Перечисления.ВариантыВажностиЗадачи.Обычная;
НаПроверке = Истина;
Проверяющий = Пользователи.АвторизованныйПользователь();
Состояние = Перечисления.СостоянияБизнесПроцессов.Активен;
Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Пользователи") Тогда
Исполнитель = ДанныеЗаполнения;
Иначе
@@ -399,4 +404,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -464,8 +464,9 @@
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillFromFillingValue>true</fillFromFillingValue>
<fillValue xsi:type="core:ReferenceValue">
<value>Enum.СостоянияБизнесПроцессов.EmptyRef</value>
<value>Enum.СостоянияБизнесПроцессов.EnumValue.Активен</value>
</fillValue>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
@@ -145,6 +145,9 @@
<commandSource>Form</commandSource>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаЗагрузитьКурсыВалют</name>
<id>87</id>
<items xsi:type="form:Button">
<name>ФормаЗагрузитьКурсыВалют</name>
<id>43</id>
@@ -171,6 +174,27 @@
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Загрузить курсы валют</value>
</title>
<extendedTooltip>
<name>ГруппаЗагрузитьКурсыВалютРасширеннаяПодсказка</name>
<id>88</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<extInfo xsi:type="form:ButtonGroupExtInfo"/>
</items>
<items xsi:type="form:Button">
<name>Справка</name>
<id>81</id>
@@ -241,6 +265,7 @@
<items xsi:type="form:FormField">
<name>НаименованиеПолное</name>
<id>40</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -372,6 +397,7 @@
<items xsi:type="form:FormField">
<name>Курс</name>
<id>38</id>
<displayImportance>VeryHigh</displayImportance>
<title>
<key>ru</key>
<value>Курс</value>
@@ -648,6 +674,11 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>Список</name>
<id>1</id>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,5 +1,8 @@
<?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">
<items xsi:type="form:FormGroup">
<name>ГруппаШапка</name>
<id>150</id>
<items xsi:type="form:FormField">
<name>НаименованиеПолное</name>
<id>4</id>
@@ -167,6 +170,35 @@
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Шапка</value>
</title>
<extendedTooltip>
<name>ГруппаШапкаРасширеннаяПодсказка</name>
<id>151</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">
<group>Vertical</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаСпособУстановкиКурса</name>
<id>106</id>
@@ -412,6 +444,9 @@
<choiceHistoryOnInput>DontUse</choiceHistoryOnInput>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаНаценка</name>
<id>152</id>
<items xsi:type="form:FormField">
<name>Наценка</name>
<id>6</id>
@@ -481,6 +516,11 @@
<userVisible>
<common>true</common>
</userVisible>
<toolTip>
<key>ru</key>
<value>Коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</value>
</toolTip>
<toolTipRepresentation>Button</toolTipRepresentation>
<extendedTooltip>
<name>ТекстПроцентРасширеннаяПодсказка</name>
<id>128</id>
@@ -507,15 +547,40 @@
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Наценка</value>
</title>
<extendedTooltip>
<name>ГруппаНаценкаРасширеннаяПодсказка</name>
<id>153</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">
<group>AlwaysHorizontal</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</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>
<toolTipRepresentation>Button</toolTipRepresentation>
<toolTipRepresentation>None</toolTipRepresentation>
<extendedTooltip>
<name>ГруппаНаценкаНаКурсДругойВалютыРасширеннаяПодсказка</name>
<id>120</id>
@@ -651,7 +716,7 @@
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>32</width>
<width>35</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch>
@@ -27,7 +27,11 @@
<div>Укажите <strong>Наценку, %</strong> - коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</div></li></ul><h3>Расчет по формуле</h3>
<ul><li>Предусмотрена возможность ввести валюту, курс которой зависит от нескольких валют одновременно.
</li><li>Для этого переключатель <strong>Курс валюты</strong> установите в положение <strong>рассчитывается по формуле</strong>.
</li><li>Задайте способ расчета курса валюты в соответствующем поле, например, <strong>(USD+EUR)/2</strong>.</li></ul><h3>Просмотр курса валюты</h3>
</li><li>Задайте способ расчета курса валюты в соответствующем поле, например, <strong>(USD+EUR)/2</strong>.
</li><li>Допустимыми разделителями дробной части чисел в формуле являются знаки точки и запятой, т.е. правильно:
<ul><li><strong>EUR*1.025</strong>
</li><li><strong>EUR*1,025</strong></li></ul></li><li>Но если возникает необходимость использовать функции с двумя и более параметрами, то параметры следует разделять запятыми, а дробные части чисел - точками, например:
<ul><li><strong>Окр(EUR*1.025,2)</strong></li></ul></li><li>Подробнее о правилах построения подобных выражений см. раздел справки <a href="v8help://dcsui/SKD_Lang">Язык выражений системы компоновки данных</a>.</li></ul><h3>Просмотр курса валюты</h3>
<ul><li>Для перевода валютных сумм в рубли используется <a href="InformationRegister.КурсыВалют/Help">курс валюты</a>.
</li><li>Нажмите <strong>Курсы валют</strong> на панели навигации валюты. Можно установить интервал дат для удобства просмотра курсов.</li></ul><h3>Ввод курса валюты вручную</h3>
<ul><li>Курсы основных валют можно <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загрузить</a> с сайта 1С. Если для валюты загрузка невозможна, то переключатель <strong>Курс валюты</strong> автоматически устанавливается в положение  <strong>вводится вручную</strong>.
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -38,6 +45,13 @@
УстановитьДоступностьЭлементов(ЭтотОбъект);
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ФормулаРасчетаКурса.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
Элементы.ОсновнаяВалюта.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Авто;
Элементы.ГруппаШапка.ВыравниваниеЭлементовИЗаголовков =
ВариантВыравниванияЭлементовИЗаголовков.ЭлементыПравоЗаголовкиЛево;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
+83 -43
View File
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -37,7 +45,7 @@
КонецЕсли;
Если Отказ Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Курс валюты можно связать только с курсом независимой валюты.'"));
КонецЕсли;
@@ -57,54 +65,13 @@
Если Не ЭтоНовый()
И СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты
И РаботаСКурсамиВалют.СписокЗависимыхВалют(Ссылка).Количество() > 0 Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Валюта не может быть подчиненной, так как она является основной для других валют.'"));
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ОбновитьКурсы") Тогда
ПараметрыВалюты = Новый Структура;
ПараметрыВалюты.Вставить("ОсновнаяВалюта");
ПараметрыВалюты.Вставить("Ссылка");
ПараметрыВалюты.Вставить("Наценка");
ПараметрыВалюты.Вставить("ДополнительныеСвойства");
ПараметрыВалюты.Вставить("ФормулаРасчетаКурса");
ЗаполнитьЗначенияСвойств(ПараметрыВалюты, ЭтотОбъект);
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("ПодчиненнаяВалюта", ПараметрыВалюты);
ПараметрыЗадания.Вставить("СпособУстановкиКурса", СпособУстановкиКурса);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор());
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьНеВФоне = ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы();
Результат = ДлительныеОперации.ВыполнитьВФоне("РаботаСКурсамиВалют.ОбновитьКурсВалюты", ПараметрыЗадания, ПараметрыВыполнения);
Если Результат.Статус = "Ошибка" Тогда
ВызватьИсключение Результат.КраткоеПредставлениеОшибки;
КонецЕсли;
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ЗапланироватьКопированиеКурсовВалюты") Тогда
Если ОбщегоНазначения.РазделениеВключено()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ВалютыВМоделиСервиса") Тогда
МодульКурсыВалютСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("КурсыВалютСлужебныйВМоделиСервиса");
МодульКурсыВалютСлужебныйВМоделиСервиса.ЗапланироватьКопированиеКурсовВалюты(ЭтотОбъект);
КонецЕсли;
КонецЕсли;
РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(Ссылка);
КонецПроцедуры
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
@@ -151,6 +118,79 @@
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ВыполняетсяФоновыйПересчетКурсов() Тогда
ВызватьИсключение НСтр("ru = 'Не удалось записать валюту, так как еще не завершился фоновый пересчет курсов.
|Попробуйте записать валюту позже.'");
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ОбновитьКурсы") Тогда
НачатьФоновоеОбновлениеКурсовВалюты();
Иначе
РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(Ссылка);
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ЗапланироватьКопированиеКурсовВалюты") Тогда
ЗапланироватьКопированиеКурсовВалюты();
КонецЕсли;
КонецПроцедуры
Функция ВыполняетсяФоновыйПересчетКурсов()
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Наименование", "РаботаСКурсамиВалют.ОбновитьКурсВалюты");
ПараметрыЗадания.Вставить("Состояние", СостояниеФоновогоЗадания.Активно);
Возврат ОбщегоНазначения.ИнформационнаяБазаФайловая()
И ФоновыеЗадания.ПолучитьФоновыеЗадания(ПараметрыЗадания).Количество() > 0;
КонецФункции
Процедура НачатьФоновоеОбновлениеКурсовВалюты()
ПараметрыВалюты = Новый Структура;
ПараметрыВалюты.Вставить("ОсновнаяВалюта");
ПараметрыВалюты.Вставить("Ссылка");
ПараметрыВалюты.Вставить("Наценка");
ПараметрыВалюты.Вставить("ДополнительныеСвойства");
ПараметрыВалюты.Вставить("ФормулаРасчетаКурса");
ПараметрыВалюты.Вставить("СпособУстановкиКурса");
ЗаполнитьЗначенияСвойств(ПараметрыВалюты, ЭтотОбъект);
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Валюта", ПараметрыВалюты);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор());
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьНеВФоне = ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы();
Результат = ДлительныеОперации.ВыполнитьВФоне("РаботаСКурсамиВалют.ОбновитьКурсВалюты", ПараметрыЗадания, ПараметрыВыполнения);
Если Результат.Статус = "Ошибка" Тогда
ВызватьИсключение Результат.КраткоеПредставлениеОшибки;
КонецЕсли;
КонецПроцедуры
Процедура ЗапланироватьКопированиеКурсовВалюты()
Перем МодульКурсыВалютСлужебныйВМоделиСервиса;
Если ОбщегоНазначения.РазделениеВключено()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ВалютыВМоделиСервиса") Тогда
МодульКурсыВалютСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("КурсыВалютСлужебныйВМоделиСервиса");
МодульКурсыВалютСлужебныйВМоделиСервиса.ЗапланироватьКопированиеКурсовВалюты(ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -315,6 +315,9 @@
<edit>
<common>true</common>
</edit>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Ref</segments>
</notDefaultUseAlwaysAttributes>
<main>true</main>
<extInfo xsi:type="form:DynamicListExtInfo">
<mainTable>Catalog.ВариантыОтветовАнкет</mainTable>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -122,40 +122,6 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Ссылка</name>
<id>14</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<dataPath xsi:type="form:DataPath">
<segments>Список.Ref</segments>
</dataPath>
<extendedTooltip>
<name>СсылкаРасширеннаяПодсказка</name>
<id>16</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СсылкаКонтекстноеМеню</name>
<id>15</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</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>8</id>
@@ -192,6 +158,40 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Ссылка</name>
<id>14</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<dataPath xsi:type="form:DataPath">
<segments>Список.Ref</segments>
</dataPath>
<extendedTooltip>
<name>СсылкаРасширеннаяПодсказка</name>
<id>16</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СсылкаКонтекстноеМеню</name>
<id>15</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>СписокКоманднаяПанель</name>
@@ -351,6 +351,9 @@
<edit>
<common>true</common>
</edit>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Ref</segments>
</notDefaultUseAlwaysAttributes>
<main>true</main>
<extInfo xsi:type="form:DynamicListExtInfo">
<mainTable>Catalog.ВариантыОтветовАнкет</mainTable>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -8,8 +15,8 @@
Возврат;
КонецЕсли;
Если НЕ ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
Если НЕ Пользователи.ЭтоСеансВнешнегоПользователя() Тогда
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Варианты ответов анкет используются только внешними пользователями.'"),,,,Отказ);
КонецЕсли;
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -17,7 +24,7 @@
Иначе
ТекстСообщения = НСтр("ru = 'Данная форма предназначена для открытия только из формы элемента плана вида характеристик ""Вопросы для анкетирования""'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
Отказ = Истина;
Возврат;
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
@@ -1,9 +1,22 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(Варианты, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ОткрытьДиалогСбросаНастроекПользователей(Варианты, ПараметрыВыполненияКоманды.Источник);
Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() = 0 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов, для которых необходимо сбросить пользовательские настройки.'"));
Возврат;
КонецЕсли;
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.СбросПользовательскихНастроек",
Новый Структура("Варианты", Варианты), ПараметрыВыполненияКоманды.Источник);
КонецПроцедуры
#КонецОбласти
@@ -1,9 +1,22 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(Варианты, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ОткрытьДиалогСбросаНастроекРазмещения(Варианты, ПараметрыВыполненияКоманды.Источник);
Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() = 0 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов программы, для которых необходимо сбросить настройки размещения.'"));
Возврат;
КонецЕсли;
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.СбросНастроекРазмещения",
Новый Структура("Варианты", Варианты), ПараметрыВыполненияКоманды.Источник);
КонецПроцедуры
#КонецОбласти
@@ -30,9 +30,11 @@
<items xsi:type="form:FormGroup">
<name>ГруппаКолонок</name>
<id>73</id>
<displayImportance>VeryHigh</displayImportance>
<items xsi:type="form:FormField">
<name>ДеревоПодсистемИспользование</name>
<id>69</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -74,6 +76,7 @@
<items xsi:type="form:FormField">
<name>ДеревоПодсистемПредставление</name>
<id>61</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -224,8 +232,8 @@
Запрос.УстановитьПараметр("МассивВариантов", ИзменяемыеВарианты.ВыгрузитьЗначения());
Запрос.УстановитьПараметр("ОтчетыПользователя", ВариантыОтчетов.ОтчетыТекущегоПользователя());
Запрос.УстановитьПараметр("ОтключенныеВариантыПрограммы", ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы());
Запрос.УстановитьПараметр("ПредставлениеВажный", ВариантыОтчетовКлиентСервер.ПредставлениеВажный());
Запрос.УстановитьПараметр("ПредставлениеСмТакже", ВариантыОтчетовКлиентСервер.ПредставлениеСмТакже());
Запрос.УстановитьПараметр("ПредставлениеВажный", ВариантыОтчетов.ПредставлениеВажный());
Запрос.УстановитьПараметр("ПредставлениеСмТакже", ВариантыОтчетов.ПредставлениеСмТакже());
Запрос.Текст = ТекстЗапроса;
ВременныеТаблицы = Запрос.ВыполнитьПакет();
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -12,6 +19,7 @@
Возврат;
КонецЕсли;
ОпределитьПоведениеВМобильномКлиенте();
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.Варианты);
Отфильтровать();
КонецПроцедуры
@@ -90,6 +98,15 @@
////////////////////////////////////////////////////////////////////////////////
// Сервер
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецПроцедуры
&НаСервере
Процедура Отфильтровать()
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -18,6 +25,7 @@
Возврат;
КонецЕсли;
ОпределитьПоведениеВМобильномКлиенте();
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.Варианты);
КонецПроцедуры
@@ -87,6 +95,15 @@
////////////////////////////////////////////////////////////////////////////////
// Сервер
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецПроцедуры
&НаСервере
Функция ЕстьПользовательскиеНастройки(МассивВариантов)
Запрос = Новый Запрос;
@@ -627,14 +627,14 @@
<name>ГруппаГоризонтальная</name>
<id>23</id>
<items xsi:type="form:FormGroup">
<name>ЛеваяКолонка</name>
<name>ГруппаРазделы</name>
<id>92</id>
<items xsi:type="form:Table">
<name>ДеревоПодсистем</name>
<id>65</id>
<title>
<key>ru</key>
<value>Дерево подсистем</value>
<value>Разделы</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
@@ -874,10 +874,10 @@
</userVisible>
<title>
<key>ru</key>
<value>Левая колонка</value>
<value>Все разделы</value>
</title>
<extendedTooltip>
<name>ЛеваяКолонкаExtendedTooltip</name>
<name>ГруппаРазделыРасширеннаяПодсказка</name>
<id>114</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -927,13 +927,17 @@
<items xsi:type="form:FormField">
<name>Наименование</name>
<id>4</id>
<title>
<key>ru</key>
<value>Наименование</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Description</segments>
<segments>Список.Наименование</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеExtendedTooltip</name>
@@ -1345,6 +1349,30 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<title>
<key>ru</key>
<value>Техническая информация</value>
</title>
<extendedTooltip>
<name>ТехническаяИнформацияРасширеннаяПодсказка</name>
<id>149</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">
<showTitle>auto</showTitle>
<showInHeader>true</showInHeader>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Ссылка</name>
<id>134</id>
@@ -1379,108 +1407,6 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>НаименованияПараметровИОтборов</name>
<id>150</id>
<title>
<key>ru</key>
<value>Наименования параметров и отборов</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<dataPath xsi:type="form:DataPath">
<segments>Список.НаименованияПараметровИОтборов</segments>
</dataPath>
<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>
<contextMenu>
<name>НаименованияПараметровИОтборовКонтекстноеМеню</name>
<id>151</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</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>153</id>
<title>
<key>ru</key>
<value>Наименования полей</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<dataPath xsi:type="form:DataPath">
<segments>Список.НаименованияПолей</segments>
</dataPath>
<extendedTooltip>
<name>НаименованияПолейРасширеннаяПодсказка</name>
<id>155</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаименованияПолейКонтекстноеМеню</name>
<id>154</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Техническая информация</value>
</title>
<extendedTooltip>
<name>ТехническаяИнформацияРасширеннаяПодсказка</name>
<id>149</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">
<showTitle>auto</showTitle>
<showInHeader>true</showInHeader>
<showInCard>true</showInCard>
</extInfo>
</items>
<commandBarLocation>None</commandBarLocation>
<autoCommandBar>
<name>СписокКоманднаяПанель</name>
@@ -1820,6 +1746,56 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>Выбрать</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>Просмотр</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>Изменить</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>РазместитьВРазделах</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>Справка</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>СписокГруппа1</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КомандыСписка</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>СброситьНастройкиРазмещения</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>СброситьНастройкиПользователей</value>
</value>
</mobileDeviceCommandBarContent>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>УстановитьПометкуУдаления</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>Список</name>
<id>1</id>
@@ -1832,9 +1808,6 @@
<edit>
<common>true</common>
</edit>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Description</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Ref</segments>
</notDefaultUseAlwaysAttributes>
@@ -1850,6 +1823,9 @@
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.КлючЗамеров</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Наименование</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Отчет</segments>
</notDefaultUseAlwaysAttributes>
@@ -1859,61 +1835,73 @@
<main>true</main>
<extInfo xsi:type="form:DynamicListExtInfo">
<queryText>ВЫБРАТЬ РАЗРЕШЕННЫЕ
Варианты.Ссылка,
Варианты.ВерсияДанных,
Варианты.ПометкаУдаления,
ЕСТЬNULL(ИзКонфигурации.КлючЗамеров, ИзРасширений.КлючЗамеров) КАК КлючЗамеров,
Варианты.Пользовательский,
НЕ Варианты.Пользовательский КАК Предопределенный,
Варианты.Наименование,
НЕ Варианты.ТолькоДляАвтора КАК ДоступенВсемПользователям,
Варианты.Отчет,
Варианты.КлючВарианта,
Варианты.ТипОтчета,
Варианты.Автор,
ВариантыОтчетов.Ссылка,
ВариантыОтчетов.ВерсияДанных,
ВариантыОтчетов.ПометкаУдаления,
ЕСТЬNULL(ВариантыКонфигурации.КлючЗамеров, ВариантыРасширений.КлючЗамеров) КАК КлючЗамеров,
ВариантыОтчетов.Пользовательский,
НЕ ВариантыОтчетов.Пользовательский КАК Предопределенный,
ВЫБОР
КОГДА ПОДСТРОКА(Варианты.НаименованияПараметровИОтборов, 1, 1) = &quot;&quot;
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.НаименованияПараметровИОтборов, ИзРасширений.НаименованияПараметровИОтборов) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПараметровИОтборов КАК СТРОКА(1000))
КОНЕЦ КАК НаименованияПараметровИОтборов,
КОГДА ВариантыОтчетов.Пользовательский
ИЛИ ВариантыОтчетов.ПредопределенныйВариант В (
НЕОПРЕДЕЛЕНО,
ЗНАЧЕНИЕ(Справочник.ПредопределенныеВариантыОтчетов.ПустаяСсылка),
ЗНАЧЕНИЕ(Справочник.ПредопределенныеВариантыОтчетовРасширений.ПустаяСсылка))
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияВариантов.Наименование, ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
КОГДА &amp;ЭтоОсновнойЯзык
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ЕСТЬNULL(ВариантыКонфигурации.Наименование, ВариантыРасширений.Наименование), ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ЕСТЬNULL(ПредставленияИзКонфигурации.Наименование, ПредставленияИзРасширений.Наименование), ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
КОНЕЦ КАК Наименование,
НЕ ВариантыОтчетов.ТолькоДляАвтора КАК ДоступенВсемПользователям,
ВариантыОтчетов.Отчет,
ВариантыОтчетов.КлючВарианта,
ВариантыОтчетов.ТипОтчета,
ВариантыОтчетов.Автор,
ВЫБОР
КОГДА ПОДСТРОКА(Варианты.НаименованияПолей, 1, 1) = &quot;&quot;
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.НаименованияПолей, ИзРасширений.НаименованияПолей) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПолей КАК СТРОКА(1000))
КОНЕЦ КАК НаименованияПолей,
ВЫБОР
КОГДА ПОДСТРОКА(Варианты.Описание, 1, 1) = &quot;&quot;
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.Описание, ИзРасширений.Описание) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(Варианты.Описание КАК СТРОКА(1000))
КОГДА &amp;ЭтоОсновнойЯзык
И ПОДСТРОКА(ВариантыОтчетов.Описание, 1, 1) = &quot;&quot;
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ВариантыКонфигурации.Описание, ВариантыРасширений.Описание) КАК СТРОКА(1000))
КОГДА НЕ &amp;ЭтоОсновнойЯзык
И ПОДСТРОКА(ВариантыОтчетов.Описание, 1, 1) = &quot;&quot;
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияИзКонфигурации.Описание, ПредставленияИзРасширений.Описание) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияВариантов.Описание, ВариантыОтчетов.Описание) КАК СТРОКА(1000))
КОНЕЦ КАК Описание,
ВЫБОР
КОГДА Варианты.ТипОтчета = &amp;ТипВнутренний
ТОГДА Варианты.Отчет.Имя
КОГДА Варианты.ТипОтчета = &amp;ТипРасширение
ТОГДА Варианты.Отчет.Имя
КОГДА Варианты.ТипОтчета = &amp;ТипДополнительный
ТОГДА Варианты.Отчет
ИНАЧЕ ПОДСТРОКА(ВЫРАЗИТЬ(Варианты.Отчет КАК СТРОКА(150)), 14, 137)
КОГДА ВариантыОтчетов.ТипОтчета В (ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Внутренний),
ВариантыОтчетов.ТипОтчета = ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Расширение))
ТОГДА ВариантыОтчетов.Отчет.Имя
КОГДА ВариантыОтчетов.ТипОтчета = ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Дополнительный)
ТОГДА ВариантыОтчетов.Отчет
ИНАЧЕ ПОДСТРОКА(ВЫРАЗИТЬ(ВариантыОтчетов.Отчет КАК СТРОКА(150)), 14, 137)
КОНЕЦ КАК ИмяОтчета,
ВЫБОР
КОГДА Варианты.ПометкаУдаления = ИСТИНА
КОГДА ВариантыОтчетов.ПометкаУдаления = ИСТИНА
ТОГДА 4
КОГДА Варианты.Пользовательский = ЛОЖЬ
КОГДА ВариантыОтчетов.Пользовательский = ЛОЖЬ
ТОГДА 5
ИНАЧЕ 3
КОНЕЦ КАК ИндексКартинки
ИЗ
Справочник.ВариантыОтчетов КАК Варианты
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК ИзКонфигурации
ПО Варианты.ПредопределенныйВариант = ИзКонфигурации.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ИзРасширений
ПО Варианты.ПредопределенныйВариант = ИзРасширений.Ссылка
Справочник.ВариантыОтчетов КАК ВариантыОтчетов
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК ВариантыКонфигурации
ПО ВариантыОтчетов.ПредопределенныйВариант = ВариантыКонфигурации.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ВариантыРасширений
ПО ВариантыОтчетов.ПредопределенныйВариант = ВариантыРасширений.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыОтчетов.Представления КАК ПредставленияВариантов
ПО ВариантыОтчетов.Ссылка = ПредставленияВариантов.Ссылка
И (ПредставленияВариантов.КодЯзыка = &amp;КодЯзыка)
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов.Представления КАК ПредставленияИзКонфигурации
ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзКонфигурации.Ссылка
И (ПредставленияИзКонфигурации.КодЯзыка = &amp;КодЯзыка)
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений.Представления КАК ПредставленияИзРасширений
ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзРасширений.Ссылка
И (ПредставленияИзРасширений.КодЯзыка = &amp;КодЯзыка)
ГДЕ
Варианты.Отчет В(&amp;ДоступныеОтчеты)
ВариантыОтчетов.Отчет В(&amp;ДоступныеОтчеты)
И ВЫБОР
КОГДА Не &amp;ЕстьОтборПоВариантам
ТОГДА НЕ Варианты.ПредопределенныйВариант В (&amp;ОтключенныеВариантыПрограммы)
ИНАЧЕ Варианты.Ссылка В (&amp;ВариантыПользователя)
ТОГДА НЕ ВариантыОтчетов.ПредопределенныйВариант В (&amp;ОтключенныеВариантыПрограммы)
ИНАЧЕ ВариантыОтчетов.Ссылка В (&amp;ВариантыПользователя)
КОНЕЦ</queryText>
<mainTable>Catalog.ВариантыОтчетов</mainTable>
<dynamicDataRead>true</dynamicDataRead>
@@ -2184,6 +2172,9 @@
<use>
<common>true</common>
</use>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.Find</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>ВыполнитьПоиск</name>
@@ -2218,6 +2209,26 @@
<currentRowUse>DontUse</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<parameters>
<name>ТолькоВарианты</name>
<valueType>
<types>Boolean</types>
</valueType>
</parameters>
<parameters>
<name>СтрокаПоиска</name>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
</parameters>
<parameters>
<name>РазделСсылка</name>
<valueType>
<types>CatalogRef.ИдентификаторыОбъектовРасширений</types>
<types>CatalogRef.ИдентификаторыОбъектовМетаданных</types>
</valueType>
</parameters>
<commandInterface>
<navigationPanel/>
<commandBar/>
@@ -1,14 +1,23 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УстановитьУсловноеОформление();
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
ОпределитьПоведениеВМобильномКлиенте();
ПараметрыКлиента = ВариантыОтчетов.ПараметрыКлиента();
ВключаяПодчиненные = Истина;
ДеревоЗначений = ВариантыОтчетовПовтИсп.ПодсистемыТекущегоПользователя().Скопировать();
@@ -21,35 +30,26 @@
РежимРаботыФормы = "Выбор";
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
Элементы.Список.Отображение = ОтображениеТаблицы.Список;
ИначеЕсли Параметры.Свойство("РазделСсылка") Или Параметры.Свойство("РазделСсылка") Тогда
ИначеЕсли Параметры.РазделСсылка <> Неопределено Тогда
РежимРаботыФормы = "ВсеОтчетыРаздела";
МассивОбхода = Новый Массив;
МассивОбхода.Добавить(ДеревоПодсистем.ПолучитьЭлементы()[0]);
Пока МассивОбхода.Количество() > 0 Цикл
СтрокиРодителя = МассивОбхода[0].ПолучитьЭлементы();
МассивОбхода.Удалить(0);
Для Каждого СтрокаДерева Из СтрокиРодителя Цикл
Если СтрокаДерева.Ссылка = Параметры.РазделСсылка Тогда
Элементы.ДеревоПодсистем.ТекущаяСтрока = СтрокаДерева.ПолучитьИдентификатор();
МассивОбхода.Очистить();
РодительскиеЭлементы = Новый Массив;
РодительскиеЭлементы.Добавить(ДеревоПодсистем.ПолучитьЭлементы()[0]);
Пока РодительскиеЭлементы.Количество() > 0 Цикл
РодительскийЭлемент = РодительскиеЭлементы[0].ПолучитьЭлементы();
РодительскиеЭлементы.Удалить(0);
Для Каждого ДочернийЭлемент Из РодительскийЭлемент Цикл
Если ДочернийЭлемент.Ссылка = Параметры.РазделСсылка Тогда
Элементы.ДеревоПодсистем.ТекущаяСтрока = ДочернийЭлемент.ПолучитьИдентификатор();
РодительскиеЭлементы.Очистить();
Прервать;
Иначе
МассивОбхода.Добавить(СтрокаДерева);
КонецЕсли;
РодительскиеЭлементы.Добавить(ДочернийЭлемент);
КонецЦикла;
КонецЦикла;
Иначе
РежимРаботыФормы = "Список";
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"Изменить",
"Отображение",
ОтображениеКнопки.КартинкаИТекст);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"РазместитьВРазделах",
"ТолькоВоВсехДействиях",
Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Изменить", "Отображение", ОтображениеКнопки.КартинкаИТекст);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "РазместитьВРазделах", "ТолькоВоВсехДействиях", Ложь);
КонецЕсли;
ГлобальныеНастройки = ВариантыОтчетов.ГлобальныеНастройки();
@@ -63,28 +63,9 @@
УстановитьСвойствоСпискаПоПараметруФормы("МножественныйВыбор");
УстановитьСвойствоСпискаПоПараметруФормы("ТекущаяСтрока");
Если Параметры.РежимВыбора Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ВЫБРАТЬ",
"КнопкаПоУмолчанию",
Истина);
Иначе
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ВЫБРАТЬ",
"Видимость",
Ложь);
КонецЕсли;
ПолныеПраваНаВарианты = ВариантыОтчетов.ПолныеПраваНаВарианты();
Если Не ПолныеПраваНаВарианты Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ОтборТипОтчета",
"Видимость",
Ложь);
КонецЕсли;
Элементы.Выбрать.КнопкаПоУмолчанию = Параметры.РежимВыбора;
Элементы.Выбрать.Видимость = Параметры.РежимВыбора;
Элементы.ОтборТипОтчета.Видимость = ВариантыОтчетов.ПолныеПраваНаВарианты();
СписокВыбора = Элементы.ОтборТипОтчета.СписокВыбора;
СписокВыбора.Добавить(1, НСтр("ru = 'Все, кроме внешних'"));
@@ -93,22 +74,15 @@
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Дополнительный, НСтр("ru = 'Дополнительные'"));
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Внешний, НСтр("ru = 'Внешние'"));
Параметры.Свойство("СтрокаПоиска", СтрокаПоиска);
СтрокаПоиска = Параметры.СтрокаПоиска;
Если Параметры.Отбор.Свойство("ТипОтчета", ОтборТипОтчета) Тогда
Параметры.Отбор.Удалить("ТипОтчета");
КонецЕсли;
Если Параметры.Свойство("ТолькоВарианты") Тогда
Если Параметры.ТолькоВарианты Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список,
"КлючВарианта",
"",
ВидСравненияКомпоновкиДанных.НеРавно,
,
,
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список,
"КлючВарианта", "", ВидСравненияКомпоновкиДанных.НеРавно,,,
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный);
КонецЕсли;
КонецЕсли;
ПерсональныеНастройкиСписка = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(
ВариантыОтчетовКлиентСервер.ПолноеИмяПодсистемы(),
@@ -117,11 +91,10 @@
Элементы.СтрокаПоиска.СписокВыбора.ЗагрузитьЗначения(ПерсональныеНастройкиСписка.СтрокаПоискаСписокВыбора);
КонецЕсли;
Список.Параметры.УстановитьЗначениеПараметра("ТипВнутренний", Перечисления.ТипыОтчетов.Внутренний);
Список.Параметры.УстановитьЗначениеПараметра("ТипРасширение", Перечисления.ТипыОтчетов.Расширение);
Список.Параметры.УстановитьЗначениеПараметра("ТипДополнительный", Перечисления.ТипыОтчетов.Дополнительный);
Список.Параметры.УстановитьЗначениеПараметра("ДоступныеОтчеты", ВариантыОтчетов.ОтчетыТекущегоПользователя());
Список.Параметры.УстановитьЗначениеПараметра("ОтключенныеВариантыПрограммы", Новый Массив(ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы()));
Список.Параметры.УстановитьЗначениеПараметра("ЭтоОсновнойЯзык", ТекущийЯзык() = Метаданные.ОсновнойЯзык);
Список.Параметры.УстановитьЗначениеПараметра("КодЯзыка", ТекущийЯзык().КодЯзыка);
ТекущийЭлемент = Элементы.Список;
@@ -140,7 +113,7 @@
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта()
Если ИмяСобытия = ВариантыОтчетовКлиент.ИмяСобытияИзменениеВарианта()
Или ИмяСобытия = "Запись_НаборКонстант" Тогда
ДеревоПодсистемТекущаяСтрока = -1;
ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина);
@@ -196,6 +169,11 @@
&НаКлиенте
Процедура ДеревоПодсистемПриАктивизацииСтроки(Элемент)
ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина);
#Если МобильныйКлиент Тогда
ПодключитьОбработчикОжидания("УстановитьЗаголовокДереваПодсистем", 0.1, Истина);
ТекущийЭлемент = Элементы.Список;
#КонецЕсли
КонецПроцедуры
&НаКлиенте
@@ -319,6 +297,18 @@
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
Элементы.СтрокаПоиска.Ширина = 0;
Элементы.СтрокаПоиска.РастягиватьПоГоризонтали = Неопределено;
Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка;
КонецПроцедуры
&НаСервере
Процедура ДеревоПодсистемЗаполнитьПолноеПредставление(НаборСтрок, ПредставлениеРодителя = "")
Для Каждого СтрокаДерева Из НаборСтрок Цикл
@@ -462,40 +452,41 @@
ВсеПодсистемы = Не ЗначениеЗаполнено(СтрокаДерева.ПолноеИмя);
ПараметрыПоиска = Новый Структура;
ПараметрыПоиска.Вставить("ПометкаУдаления", Ложь);
Если ЗначениеЗаполнено(СтрокаПоиска) Тогда
ПараметрыПоиска.Вставить("СтрокаПоиска", СтрокаПоиска);
Элементы.Список.НачальноеОтображениеДерева = НачальноеОтображениеДерева.РаскрыватьВсеУровни;
Иначе
Элементы.Список.НачальноеОтображениеДерева = НачальноеОтображениеДерева.НеРаскрывать;
КонецЕсли;
ПараметрыПоиска.Вставить("ЖесткийОтборПоПодсистемам", Не ВсеПодсистемы);
Если Не ВсеПодсистемы Или ЗначениеЗаполнено(СтрокаПоиска) Тогда
МассивПодсистем = Новый Массив;
ПодсистемыОтчетов = Новый Массив;
Если Не ВсеПодсистемы Тогда
МассивПодсистем.Добавить(СтрокаДерева.Ссылка);
ПодсистемыОтчетов.Добавить(СтрокаДерева.Ссылка);
КонецЕсли;
Если ВсеПодсистемы Или ВключаяПодчиненные Тогда
ДобавитьРекурсивно(МассивПодсистем, СтрокаДерева.ПолучитьЭлементы());
ДобавитьРекурсивно(ПодсистемыОтчетов, СтрокаДерева.ПолучитьЭлементы());
КонецЕсли;
ПараметрыПоиска.Вставить("Подсистемы", МассивПодсистем);
ПараметрыПоиска.Вставить("Подсистемы", ПодсистемыОтчетов);
КонецЕсли;
Если ЗначениеЗаполнено(ОтборТипОтчета) Тогда
МассивТиповОтчетов = Новый Массив;
ТипыОтчетов = Новый Массив;
Если ОтборТипОтчета = 1 Тогда
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Внутренний);
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Расширение);
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Дополнительный);
ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Внутренний);
ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Расширение);
ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Дополнительный);
Иначе
МассивТиповОтчетов.Добавить(ОтборТипОтчета);
ТипыОтчетов.Добавить(ОтборТипОтчета);
КонецЕсли;
ПараметрыПоиска.Вставить("ТипыОтчетов", МассивТиповОтчетов);
ПараметрыПоиска.Вставить("ТипыОтчетов", ТипыОтчетов);
КонецЕсли;
РезультатПоиска = ВариантыОтчетов.НайтиСсылки(ПараметрыПоиска);
ВариантыПользователя = ?(РезультатПоиска = Неопределено, Новый Массив, РезультатПоиска.Ссылки);
Список.Параметры.УстановитьЗначениеПараметра("ЕстьОтборПоВариантам", РезультатПоиска <> Неопределено);
Список.Параметры.УстановитьЗначениеПараметра("ВариантыПользователя", ВариантыПользователя);
ЕстьОтборПоВариантам = ПараметрыПоиска.Количество() > 0;
ПараметрыПоиска.Вставить("ПометкаУдаления", Ложь);
ПараметрыПоиска.Вставить("ЖесткийОтборПоПодсистемам", Не ВсеПодсистемы);
РезультатПоиска = ВариантыОтчетов.НайтиВариантыОтчетов(ПараметрыПоиска);
Список.Параметры.УстановитьЗначениеПараметра("ЕстьОтборПоВариантам", ЕстьОтборПоВариантам);
Список.Параметры.УстановитьЗначениеПараметра("ВариантыПользователя", РезультатПоиска.Ссылки);
КонецПроцедуры
@@ -506,6 +497,13 @@
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьЗаголовокДереваПодсистем()
Элементы.ГруппаРазделы.Заголовок = ?(Элементы.ДеревоПодсистем.ТекущиеДанные = Неопределено,
НСтр("ru = 'Все разделы'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка()),
Элементы.ДеревоПодсистем.ТекущиеДанные.Представление);
КонецПроцедуры
&НаСервере
Процедура ДобавитьРекурсивно(МассивПодсистем, КоллекцияСтрокДерева)
Для Каждого СтрокаДерева Из КоллекцияСтрокДерева Цикл
@@ -648,7 +646,7 @@
Замер = Новый Структура("МодульОценкаПроизводительностиКлиент, Идентификатор");
Замер.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент");
Замер.Идентификатор = Замер.МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени(Ложь, Имя);
Замер.Идентификатор = Замер.МодульОценкаПроизводительностиКлиент.ЗамерВремени(Имя, Ложь, Ложь);
Замер.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(Замер.Идентификатор, Комментарий);
Возврат Замер;
КонецФункции
@@ -32,6 +32,10 @@
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>Opening</event>
<name>НаименованиеОткрытие</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
@@ -78,6 +82,10 @@
<event>StartChoice</event>
<name>ОписаниеНачалоВыбора</name>
</handlers>
<handlers>
<event>Opening</event>
<name>ОписаниеОткрытие</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<height>2</height>
<autoMaxHeight>true</autoMaxHeight>
@@ -324,9 +332,11 @@
<items xsi:type="form:FormGroup">
<name>ГруппаКолонок</name>
<id>83</id>
<displayImportance>VeryHigh</displayImportance>
<items xsi:type="form:FormField">
<name>ДеревоПодсистемИспользование</name>
<id>104</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -366,6 +376,7 @@
<items xsi:type="form:FormField">
<name>ДеревоПодсистемПредставление</name>
<id>86</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -591,6 +602,7 @@
<initialTreeView>ExpandAllLevels</initialTreeView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
</items>
<items xsi:type="form:FormField">
@@ -1168,6 +1180,300 @@
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:Table">
<name>Представления</name>
<id>244</id>
<title>
<key>ru</key>
<value>Представления</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Представления</segments>
</dataPath>
<titleLocation>None</titleLocation>
<items xsi:type="form:FormField">
<name>ПредставленияНомерСтроки</name>
<id>257</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>259</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияНомерСтрокиКонтекстноеМеню</name>
<id>258</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>260</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Представления.КодЯзыка</segments>
</dataPath>
<extendedTooltip>
<name>ПредставленияКодЯзыкаРасширеннаяПодсказка</name>
<id>262</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияКодЯзыкаКонтекстноеМеню</name>
<id>261</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>
<items xsi:type="form:FormField">
<name>ПредставленияНаименование</name>
<id>263</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Представления.Наименование</segments>
</dataPath>
<extendedTooltip>
<name>ПредставленияНаименованиеРасширеннаяПодсказка</name>
<id>265</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияНаименованиеКонтекстноеМеню</name>
<id>264</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>
<items xsi:type="form:FormField">
<name>ПредставленияОписание</name>
<id>266</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Представления.Описание</segments>
</dataPath>
<extendedTooltip>
<name>ПредставленияОписаниеРасширеннаяПодсказка</name>
<id>268</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияОписаниеКонтекстноеМеню</name>
<id>267</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>
<autoCommandBar>
<name>ПредставленияКоманднаяПанель</name>
<id>246</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<searchStringAddition>
<name>ПредставленияСтрокаПоиска</name>
<id>248</id>
<extendedTooltip>
<name>ПредставленияСтрокаПоискаРасширеннаяПодсказка</name>
<id>250</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияСтрокаПоискаКонтекстноеМеню</name>
<id>249</id>
<autoFill>true</autoFill>
</contextMenu>
<source>Представления</source>
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchStringAddition>
<viewStatusAddition>
<name>ПредставленияСостояниеПросмотра</name>
<id>251</id>
<extendedTooltip>
<name>ПредставленияСостояниеПросмотраРасширеннаяПодсказка</name>
<id>253</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияСостояниеПросмотраКонтекстноеМеню</name>
<id>252</id>
<autoFill>true</autoFill>
</contextMenu>
<type>ViewStatusAddition</type>
<source>Представления</source>
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</viewStatusAddition>
<searchControlAddition>
<name>ПредставленияУправлениеПоиском</name>
<id>254</id>
<extendedTooltip>
<name>ПредставленияУправлениеПоискомРасширеннаяПодсказка</name>
<id>256</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияУправлениеПоискомКонтекстноеМеню</name>
<id>255</id>
<autoFill>true</autoFill>
</contextMenu>
<type>SearchControlAddition</type>
<source>Представления</source>
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
<autoMaxWidth>true</autoMaxWidth>
</extInfo>
</searchControlAddition>
<extendedTooltip>
<name>ПредставленияРасширеннаяПодсказка</name>
<id>247</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПредставленияКонтекстноеМеню</name>
<id>245</id>
<autoFill>true</autoFill>
</contextMenu>
<representation>HierarchicalList</representation>
<readOnly>true</readOnly>
<changeRowSet>true</changeRowSet>
<changeRowOrder>true</changeRowOrder>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<heightInTableRows>3</heightInTableRows>
<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>
<autoMaxCardHeight>true</autoMaxCardHeight>
<rowFilter xsi:type="core:UndefinedValue"/>
</items>
<items xsi:type="form:FormField">
<name>ИнтерактивнаяПометкаУдаления</name>
<id>241</id>
@@ -1227,7 +1533,7 @@
<behavior>Collapsible</behavior>
<collapsed>true</collapsed>
<controlRepresentation>Button</controlRepresentation>
<representation>StrongSeparation</representation>
<representation>NormalSeparation</representation>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<showTitle>auto</showTitle>
@@ -1818,21 +2124,6 @@
</edit>
<savedData>true</savedData>
</attributes>
<attributes>
<name>СвойстваПредопределенного</name>
<title>
<key>ru</key>
<value>Свойства предопределенного</value>
</title>
<id>10</id>
<valueType/>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ПараметрыОткрытияФормыОтчета</name>
<title>
@@ -1865,6 +2156,58 @@
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ПредопределеннаяВидимостьПоУмолчанию</name>
<title>
<key>ru</key>
<value>Предопределенная видимость по умолчанию</value>
</title>
<id>13</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ПредопределенноеОписание</name>
<title>
<key>ru</key>
<value>Предопределенное описание</value>
</title>
<id>14</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ЭтоПредопределенный</name>
<title>
<key>ru</key>
<value>Это предопределенный</value>
</title>
<id>15</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<commandInterface>
<navigationPanel/>
<commandBar/>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -14,10 +22,19 @@
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(Объект, ЭтотОбъект);
Доступен = ?(Объект.ТолькоДляАвтора, "1", "2");
ЭтоПредопределенный = Не Объект.Пользовательский
И (Объект.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний
Или Объект.ТипОтчета = Перечисления.ТипыОтчетов.Расширение)
И ЗначениеЗаполнено(Объект.ПредопределенныйВариант);
// Чтение свойств предопределенного;
// Заполнение реквизитов, связанных с предопределенным объектом при открытии.
ПрочитатьСвойстваПредопределенного(Истина);
Если ЭтоПредопределенный Тогда
ПредопределенныйВариант = Объект.ПредопределенныйВариант.ПолучитьОбъект();
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ПредопределенныйВариант);
ПредопределеннаяВидимостьПоУмолчанию = ПредопределенныйВариант.ВидимостьПоУмолчанию;
ПредопределенноеОписание = ПредопределенныйВариант.Описание;
ЗаполнитьИзПредопределенного();
КонецЕсли;
ПолныеПраваНаВарианты = ВариантыОтчетов.ПолныеПраваНаВарианты();
ПравоНаЭтотВариант = ПолныеПраваНаВарианты Или Объект.Автор = Пользователи.АвторизованныйПользователь();
@@ -59,6 +76,11 @@
ПерезаполнитьДерево(Ложь);
ЛокализуемыеЭлементы = Новый Массив;
ЛокализуемыеЭлементы.Добавить(Элементы.Наименование);
ЛокализуемыеЭлементы.Добавить(Элементы.Описание);
ЛокализацияСервер.ПриСозданииНаСервере(ЛокализуемыеЭлементы);
КонецПроцедуры
&НаКлиенте
@@ -72,7 +94,7 @@
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если Источник <> ЭтотОбъект
И (ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта()
И (ИмяСобытия = ВариантыОтчетовКлиент.ИмяСобытияИзменениеВарианта()
Или ИмяСобытия = "Запись_НаборКонстант") Тогда
ПерезаполнитьДерево(Истина);
Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина);
@@ -82,11 +104,10 @@
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
// Запись свойств, связанных с предопределенным вариантом отчета.
Если ТипЗнч(СвойстваПредопределенного) = Тип("ФиксированнаяСтруктура") Тогда
Если ЭтоПредопределенный Тогда
ТекущийОбъект.ВидимостьПоУмолчаниюПереопределена =
Объект.ВидимостьПоУмолчанию <> СвойстваПредопределенного.ВидимостьПоУмолчанию;
Если Не ПустаяСтрока(Объект.Описание) И НРег(СокрЛП(Объект.Описание)) = НРег(СокрЛП(СвойстваПредопределенного.Описание)) Тогда
Объект.ВидимостьПоУмолчанию <> ПредопределеннаяВидимостьПоУмолчанию;
Если Не ПустаяСтрока(Объект.Описание) И НРег(СокрЛП(Объект.Описание)) = НРег(СокрЛП(ПредопределенноеОписание)) Тогда
ТекущийОбъект.Описание = "";
КонецЕсли;
КонецЕсли;
@@ -99,19 +120,21 @@
ИзмененныеРазделы = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Модифицированность", Истина), Истина);
КонецЕсли;
ВариантыОтчетов.ДеревоПодсистемЗаписать(ТекущийОбъект, ИзмененныеРазделы);
ЛокализацияСервер.ПередЗаписьюНаСервере(ТекущийОбъект);
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
ПерезаполнитьДерево(Ложь);
ПрочитатьСвойстваПредопределенного(Ложь);
ЗаполнитьИзПредопределенного();
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
ПараметрОповещения = Новый Структура("Ссылка, Наименование, Автор, Описание");
ЗаполнитьЗначенияСвойств(ПараметрОповещения, Объект);
Оповестить(ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта(), ПараметрОповещения, ЭтотОбъект);
ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(Объект.Ссылка, ЭтотОбъект);
СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "ДеревоПодсистем", "*", Истина);
КонецПроцедуры
@@ -125,6 +148,8 @@
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры
#КонецОбласти
@@ -142,6 +167,16 @@
Объект.ТолькоДляАвтора = (ЭтотОбъект.Доступен = "1");
КонецПроцедуры
&НаКлиенте
Процедура НаименованиеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Наименование", СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ОписаниеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Описание", СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПодсистем
@@ -181,29 +216,18 @@
КонецФункции
&НаСервере
Процедура ПрочитатьСвойстваПредопределенного(ПервоеЧтение)
Если ПервоеЧтение Тогда
Если Не Объект.Пользовательский
И (Объект.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний
Или Объект.ТипОтчета = Перечисления.ТипыОтчетов.Расширение)
И ЗначениеЗаполнено(Объект.ПредопределенныйВариант) Тогда // Чтение настроек предопределенного.
Сведения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.ПредопределенныйВариант, "ВидимостьПоУмолчанию, Описание");
СвойстваПредопределенного = Новый ФиксированнаяСтруктура(Сведения);
Иначе
Возврат; // Не предопределенный.
КонецЕсли;
Иначе
Если ТипЗнч(СвойстваПредопределенного) <> Тип("ФиксированнаяСтруктура") Тогда
Возврат; // Не предопределенный.
КонецЕсли;
Процедура ЗаполнитьИзПредопределенного()
Если Не ЭтоПредопределенный Тогда
Возврат;
КонецЕсли;
Если Объект.ВидимостьПоУмолчаниюПереопределена = Ложь Тогда
Объект.ВидимостьПоУмолчанию = СвойстваПредопределенного.ВидимостьПоУмолчанию;
Объект.ВидимостьПоУмолчанию = ПредопределеннаяВидимостьПоУмолчанию;
КонецЕсли;
Если ПустаяСтрока(Объект.Описание) Тогда
Объект.Описание = СвойстваПредопределенного.Описание;
Объект.Описание = ПредопределенноеОписание;
КонецЕсли;
КонецПроцедуры
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -54,10 +62,9 @@
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
// Переопределение для целей избранного - вместо карточки с настройками размещения отчета будет открываться его
// основная форма.
Если ВидФормы = "ФормаОбъекта" Тогда
@@ -103,9 +110,33 @@
ВыбраннаяФорма = ПолноеИмяОтчета + ".Форма";
ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, ПараметрыОткрытия);
КонецЕсли;
КонецПроцедуры
#КонецЕсли
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
Поля.Добавить("Наименование");
Поля.Добавить("Ссылка");
Поля.Добавить("Пользовательский");
Поля.Добавить("ПредопределенныйВариант");
Поля.Добавить("ТипОтчета");
СтандартнаяОбработка = Ложь;
КонецПроцедуры
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
ЭтоПредопределенный = Не Данные.Пользовательский
И (Данные.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний
Или Данные.ТипОтчета = Перечисления.ТипыОтчетов.Расширение)
И ЗначениеЗаполнено(Данные.ПредопределенныйВариант);
Если ЭтоПредопределенный Тогда
Данные.Ссылка = Данные.ПредопределенныйВариант;
КонецЕсли;
ЛокализацияКлиентСервер.ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -13,7 +21,7 @@
Если Наименование <> "" И ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование) Тогда
Отказ = Истина;
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" занято, необходимо указать другое наименование.'"), Наименование),
,
"Наименование");
@@ -39,7 +47,7 @@
Если ПометкаУдаления Тогда
ТекстОшибки = НСтр("ru = 'Пометка на удаление предопределенного варианта отчета запрещена.'");
Иначе
ТекстОшибки = НСтр("ru = 'Снятие пометки удаления предопределенного варианта отчета запрещена.'");
ТекстОшибки = НСтр("ru = 'Снятие пометки удаления предопределенного варианта отчета запрещено.'");
КонецЕсли;
ВызватьИсключение ТекстОшибки;
КонецЕсли;
@@ -65,50 +73,48 @@
КонецЕсли;
Если ПользователемИзмененаПометкаУдаления Тогда
Если Пользовательский Тогда
ИнтерактивнаяПометкаУдаления = ПометкаУдаления;
Иначе
ИнтерактивнаяПометкаУдаления = Ложь;
КонецЕсли;
ИнтерактивнаяПометкаУдаления = ?(Пользовательский, ПометкаУдаления, Ложь);
КонецЕсли;
// Удаление из табличной части подсистем, помеченных на удаление.
МассивУдаляемыхСтрок = Новый Массив;
УдаляемыеСтроки = Новый Массив;
Для Каждого СтрокаРазмещения Из Размещение Цикл
Если СтрокаРазмещения.Подсистема.ПометкаУдаления = Истина Тогда
МассивУдаляемыхСтрок.Добавить(СтрокаРазмещения);
УдаляемыеСтроки.Добавить(СтрокаРазмещения);
КонецЕсли;
КонецЦикла;
Для Каждого СтрокаРазмещения Из МассивУдаляемыхСтрок Цикл
Для Каждого СтрокаРазмещения Из УдаляемыеСтроки Цикл
Размещение.Удалить(СтрокаРазмещения);
КонецЦикла;
// Заполнение реквизитов "НаименованияПолей" и "НаименованияПараметровИОтборов".
ПроиндексироватьНастройки();
ЗаполнитьПоляДляПоиска();
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура ПроиндексироватьНастройки()
Процедура ПриЧтенииПредставленийНаСервере() Экспорт
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ЭтотОбъект);
КонецПроцедуры
// Заполнение реквизитов НаименованияПолей и НаименованияПараметровИОтборов.
Процедура ЗаполнитьПоляДляПоиска()
Дополнительный = (ТипОтчета = Перечисления.ТипыОтчетов.Дополнительный);
Если Не Пользовательский И Не Дополнительный Тогда
// Для предопределенных вариантов отчетов данные хранятся в неразделенном справочнике.
НаименованияПолей = "";
НаименованияПараметровИОтборов = "";
Возврат;
КонецЕсли;
Если Дополнительный И БезопасныйРежим() = Ложь Тогда
Возврат; // Оставить текущие настройки.
КонецЕсли;
Попытка
ВариантыОтчетов.ПроиндексироватьСодержимоеСхемы(ЭтотОбъект);
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина);
ВариантыОтчетов.ЗаполнитьПоляДляПоиска(ЭтотОбъект);
Исключение
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось проиндексировать схему варианта ""%1"" отчета ""%2"":'"),
КлючВарианта,
Строка(Отчет));
КлючВарианта, Строка(Отчет));
ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
ВариантыОтчетов.ЗаписатьВЖурнал(УровеньЖурналаРегистрации.Ошибка, ТекстОшибки, Ссылка);
КонецПопытки;
@@ -160,7 +166,7 @@
ТекстОшибки = НеЗаполненоПоле("Отчет");
ИначеЕсли Не ЗначениеЗаполнено(ТипОтчета) Тогда
ТекстОшибки = НеЗаполненоПоле("ТипОтчета");
ИначеЕсли ТипОтчета <> ВариантыОтчетовКлиентСервер.ТипОтчета(Отчет) Тогда
ИначеЕсли ТипОтчета <> ВариантыОтчетов.ТипОтчета(Отчет) Тогда
ТекстОшибки = НСтр("ru = 'Противоречивые значения полей ""%1"" и ""%2""'");
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, "ТипОтчета", "Отчет");
ИначеЕсли Не ЗначениеЗаполнено(ПредопределенныйВариант)
@@ -178,4 +184,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -335,6 +335,7 @@
<key>ru</key>
<value>Выводится в панели отчетов как подсказка.</value>
</toolTip>
<multiLine>true</multiLine>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
@@ -700,6 +701,80 @@
<dataHistory>Use</dataHistory>
</attributes>
</tabularSections>
<tabularSections uuid="c1c62215-41b8-40bc-a806-1347db5b03e9">
<producedTypes>
<objectType typeId="f8245c3b-b14b-4212-b772-e48206f1323d" valueTypeId="b1416cce-05f5-40f3-89ad-1c94740b746b"/>
<rowType typeId="d5a0c9c6-9020-4a6a-99d2-e341bee917c1" valueTypeId="716e5a29-f25b-4a31-a262-52d7a178b244"/>
</producedTypes>
<name>Представления</name>
<synonym>
<key>ru</key>
<value>Представления</value>
</synonym>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>LineNumber</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<attributes uuid="a24322f3-c7a5-4b25-bad6-9c75712a3e58">
<name>КодЯзыка</name>
<synonym>
<key>ru</key>
<value>Код языка</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>10</length>
</stringQualifiers>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
</attributes>
<attributes uuid="679d2b3b-a354-4dec-b49d-ab1163756e3a">
<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"/>
<dataHistory>Use</dataHistory>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
</attributes>
<attributes uuid="665e96bc-8ec1-4008-b9bd-db95a234b9b8">
<name>Описание</name>
<synonym>
<key>ru</key>
<value>Описание</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers/>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
<fullTextSearch>Use</fullTextSearch>
</attributes>
</tabularSections>
<forms uuid="a8021ff9-f0ae-49ab-b8ac-5e3d8fe90d82">
<name>РазмещениеВРазделах</name>
<synonym>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныйПрограммныйИнтерфейс
@@ -86,6 +94,8 @@
УстановленныеРасширения = Новый Структура;
УстановленныеРасширения.Вставить("Основные", КонтрольныеСуммыРасширений(Основные));
УстановленныеРасширения.Вставить("Исправления", КонтрольныеСуммыРасширений(Исправления));
УстановленныеРасширения.Вставить("ОсновныеСостояние", КонтрольныеСуммыРасширений(Основные, Истина));
УстановленныеРасширения.Вставить("ИсправленияСостояние", КонтрольныеСуммыРасширений(Исправления, Истина));
Возврат Новый ФиксированнаяСтруктура(УстановленныеРасширения);
@@ -98,8 +108,8 @@
УстановленныеРасширения = УстановленныеРасширения();
Возврат ПараметрыСеанса.УстановленныеРасширения.Основные <> УстановленныеРасширения.Основные
Или ПараметрыСеанса.УстановленныеРасширения.Исправления <> УстановленныеРасширения.Исправления;
Возврат ПараметрыСеанса.УстановленныеРасширения.ОсновныеСостояние <> УстановленныеРасширения.ОсновныеСостояние
Или ПараметрыСеанса.УстановленныеРасширения.ИсправленияСостояние <> УстановленныеРасширения.ИсправленияСостояние;
КонецФункции
@@ -398,21 +408,29 @@
//
// Параметры:
// Расширения - Массив - получить контрольные суммы указанных расширений.
// УчитыватьСостояниеРасширений - Булево - учитывать признаки Активно и БезопасныйРежим.
//
// Возвращаемое значение:
// Строка - строки вида "<Имя расширения> (<Версия расширения>) <Контрольная сумма>".
//
Функция КонтрольныеСуммыРасширений(Расширения)
Функция КонтрольныеСуммыРасширений(Расширения, УчитыватьСостояниеРасширений = Ложь)
Список = Новый СписокЗначений;
Для Каждого Расширение Из Расширения Цикл
КонтрольнаяСумма = Base64Строка(Расширение.ХешСумма);
Список.Добавить(Расширение.Имя + " (" + Расширение.Версия + ") " + КонтрольнаяСумма);
КонтрольнаяСумма = Расширение.Имя + " (" + Расширение.Версия + ") " + Base64Строка(Расширение.ХешСумма);
Если УчитыватьСостояниеРасширений Тогда
КонтрольнаяСумма = КонтрольнаяСумма
+ " Активно:" + Расширение.Активно
+ " БезопасныйРежим:" + Расширение.БезопасныйРежим
+ " ПередаватьВПодчиненныеУзлыРИБ:" + Расширение.ИспользуетсяВРаспределеннойИнформационнойБазе;
КонецЕсли;
Список.Добавить(КонтрольнаяСумма);
КонецЦикла;
Если Список.Количество() <> 0 Тогда
Список.Добавить("#" + Метаданные.Имя + " (" + Метаданные.Версия + ")");
КонтрольнаяСумма = "#" + Метаданные.Имя + " (" + Метаданные.Версия + ")";
Список.Добавить(КонтрольнаяСумма);
КонецЕсли;
КонтрольныеСуммы = "";
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
@@ -33,4 +40,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -20,60 +20,15 @@
<titleLocation>None</titleLocation>
<excludedCommands>Copy</excludedCommands>
<items xsi:type="form:FormGroup">
<name>КартинкаИНаименование</name>
<id>67</id>
<items xsi:type="form:FormField">
<name>СписокИндексКартинкиТекущий</name>
<id>68</id>
<title>
<key>ru</key>
<value>Индекс картинки</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.ИндексКартинкиТекущий</segments>
</dataPath>
<extendedTooltip>
<name>СписокИндексКартинкиТекущийРасширеннаяПодсказка</name>
<id>91</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СписокИндексКартинкиТекущийКонтекстноеМеню</name>
<id>69</id>
<autoFill>true</autoFill>
</contextMenu>
<type>PictureField</type>
<editMode>Auto</editMode>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:ImageFieldExtInfo">
<width>15</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<valuesPicture xsi:type="core:PictureRef">
<picture>CommonPicture.КоллекцияПиктограммФайлов</picture>
</valuesPicture>
<border xsi:type="core:BorderDef">
<style>Single</style>
<width>1</width>
</border>
</extInfo>
</items>
<name>ГруппаВертикально</name>
<id>114</id>
<items xsi:type="form:FormGroup">
<name>ГруппаОсновное</name>
<id>116</id>
<items xsi:type="form:FormField">
<name>СписокАвтор</name>
<id>49</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -116,35 +71,10 @@
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Картинка и наименование</value>
</title>
<extendedTooltip>
<name>КартинкаИНаименованиеExtendedTooltip</name>
<id>90</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>
<items xsi:type="form:FormField">
<name>СписокВладелец</name>
<id>47</id>
<displayImportance>Usual</displayImportance>
<enabled>true</enabled>
<userVisible>
<common>true</common>
@@ -185,6 +115,7 @@
<items xsi:type="form:FormField">
<name>СписокНомерВерсии</name>
<id>57</id>
<displayImportance>Usual</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -229,55 +160,10 @@
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокКомментарий</name>
<id>51</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Комментарий</segments>
</dataPath>
<toolTip>
<key>ru</key>
<value>Комментарий к версии файла</value>
</toolTip>
<extendedTooltip>
<name>СписокКомментарийРасширеннаяПодсказка</name>
<id>95</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>
<type>InputField</type>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокДатаСоздания</name>
<id>53</id>
<displayImportance>Usual</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -325,6 +211,7 @@
<items xsi:type="form:FormField">
<name>СписокРазмер</name>
<id>55</id>
<displayImportance>Usual</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -367,9 +254,110 @@
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Основное</value>
</title>
<extendedTooltip>
<name>ГруппаОсновноеРасширеннаяПодсказка</name>
<id>117</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">
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокКомментарий</name>
<id>51</id>
<displayImportance>VeryLow</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Комментарий</segments>
</dataPath>
<toolTip>
<key>ru</key>
<value>Комментарий к версии файла</value>
</toolTip>
<extendedTooltip>
<name>СписокКомментарийРасширеннаяПодсказка</name>
<id>95</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>
<type>InputField</type>
<editMode>Auto</editMode>
<autoCellHeight>true</autoCellHeight>
<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>
<textColor xsi:type="core:ColorRef">
<color>Style.ПоясняющийТекст</color>
</textColor>
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Вертикально</value>
</title>
<extendedTooltip>
<name>ГруппаВертикальноРасширеннаяПодсказка</name>
<id>115</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>Vertical</group>
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокСсылка</name>
<id>59</id>
<displayImportance>VeryLow</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
@@ -723,13 +711,19 @@
<verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<enableDrag>true</enableDrag>
<rowPictureDataPath xsi:type="form:DataPath">
<segments>Список.ИндексКартинки</segments>
</rowPictureDataPath>
<rowsPicture xsi:type="core:PictureRef">
<picture>CommonPicture.КоллекцияПиктограммФайлов</picture>
</rowsPicture>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation>
<searchControlLocation>None</searchControlLocation>
<currentRowUse>SelectionPresentation</currentRowUse>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -1018,6 +1012,9 @@
<edit>
<common>true</common>
</edit>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.ИндексКартинкиТекущий</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Владелец</segments>
</notDefaultUseAlwaysAttributes>
@@ -1027,9 +1024,6 @@
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.ИндексКартинки</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.ИндексКартинкиТекущий</segments>
</notDefaultUseAlwaysAttributes>
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.Код</segments>
</notDefaultUseAlwaysAttributes>
@@ -1060,6 +1054,7 @@
<notDefaultUseAlwaysAttributes xsi:type="form:DataPath">
<segments>Список.ЭтоТекущая</segments>
</notDefaultUseAlwaysAttributes>
<main>true</main>
<extInfo xsi:type="form:DynamicListExtInfo">
<queryText>ВЫБРАТЬ РАЗРЕШЕННЫЕ
ВерсииФайловПереопределяемый.Код КАК Код,
@@ -1069,12 +1064,11 @@
ВерсииФайловПереопределяемый.ДатаСоздания КАК ДатаСоздания,
ВерсииФайловПереопределяемый.ПолноеНаименование КАК ПолноеНаименование,
ВерсииФайловПереопределяемый.РодительскаяВерсия КАК РодительскаяВерсия,
ВерсииФайловПереопределяемый.ИндексКартинки КАК ИндексКартинки,
ВЫБОР
КОГДА ВерсииФайловПереопределяемый.ПометкаУдаления
ТОГДА ВерсииФайловПереопределяемый.ИндексКартинки + 1
ИНАЧЕ ВерсииФайловПереопределяемый.ИндексКартинки
КОНЕЦ КАК ИндексКартинкиТекущий,
КОНЕЦ КАК ИндексКартинки,
ВерсииФайловПереопределяемый.ПометкаУдаления КАК ПометкаУдаления,
ВерсииФайловПереопределяемый.Владелец КАК Владелец,
ВерсииФайловПереопределяемый.Ссылка КАК Ссылка,
@@ -1317,4 +1311,5 @@
</cmiFragmentRecord>
</commandBar>
</commandInterface>
<extInfo xsi:type="form:DynamicListFormExtInfo"/>
</form:Form>
@@ -1,12 +1,10 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем Ссылка1;
&НаКлиенте
Перем Ссылка2;
#КонецОбласти
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -28,7 +26,7 @@
КонецЕсли;
ВидимостьКомандыСравнить =
Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент();
Не ОбщегоНазначения.ЭтоLinuxКлиент() И Не ОбщегоНазначения.ЭтоВебКлиент();
Элементы.ФормаСравнить.Видимость = ВидимостьКомандыСравнить;
Элементы.КонтекстноеМенюСписокСравнить.Видимость = ВидимостьКомандыСравнить;
@@ -37,10 +35,11 @@
Список.Параметры.УстановитьЗначениеПараметра("Владелец", Параметры.Файл);
ВладелецВерсии = Параметры.Файл;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда // Временное решение для работы в мобильном клиенте, будет удалено в следующих версиях
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ФормаОткрытьВерсию.Картинка = БиблиотекаКартинок.Лупа;
Элементы.ФормаОткрытьВерсию.Отображение = ОтображениеКнопки.Картинка;
Элементы.СписокКомментарий.Видимость = Ложь;
КонецЕсли;
@@ -155,15 +154,15 @@
КонецЕсли;
Если ЧислоВыделенныхСтрок = 2 Тогда
Ссылка1 = Элементы.Список.ВыделенныеСтроки[0];
Ссылка2 = Элементы.Список.ВыделенныеСтроки[1];
ПервыйФайл = Элементы.Список.ВыделенныеСтроки[0];
ВторойФайл = Элементы.Список.ВыделенныеСтроки[1];
ИначеЕсли ЧислоВыделенныхСтрок = 1 Тогда
Ссылка1 = Элементы.Список.ТекущиеДанные.Ссылка;
Ссылка2 = Элементы.Список.ТекущиеДанные.РодительскаяВерсия;
ПервыйФайл = Элементы.Список.ТекущиеДанные.Ссылка;
ВторойФайл = Элементы.Список.ТекущиеДанные.РодительскаяВерсия;
КонецЕсли;
Расширение = НРег(Элементы.Список.ТекущиеДанные.Расширение);
РаботаСФайламиСлужебныйКлиент.СравнитьФайлы(УникальныйИдентификатор, Ссылка1, Ссылка2, Расширение, ВладелецВерсии);
РаботаСФайламиСлужебныйКлиент.СравнитьФайлы(УникальныйИдентификатор, ПервыйФайл, ВторойФайл, Расширение, ВладелецВерсии);
КонецПроцедуры
@@ -258,12 +257,11 @@
| ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
| ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование,
| ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия,
| ВерсииФайлов.ИндексКартинки,
| ВЫБОР
| КОГДА ВерсииФайлов.ПометкаУдаления
| ТОГДА ВерсииФайлов.ИндексКартинки + 1
| ИНАЧЕ ВерсииФайлов.ИндексКартинки
| КОНЕЦ КАК ИндексКартинкиТекущий,
| КОНЕЦ КАК ИндексКартинки,
| ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления,
| ВерсииФайлов.Владелец КАК Владелец,
| ВерсииФайлов.Ссылка КАК Ссылка,
@@ -83,9 +83,16 @@
<defaultItem>true</defaultItem>
<skipOnInput>false</skipOnInput>
<titleLocation>None</titleLocation>
<items xsi:type="form:FormGroup">
<name>ГруппаВертикально</name>
<id>51</id>
<items xsi:type="form:FormGroup">
<name>ГруппаОсновное</name>
<id>53</id>
<items xsi:type="form:FormField">
<name>СписокВладелец</name>
<id>39</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -122,6 +129,7 @@
<items xsi:type="form:FormField">
<name>СписокНомерВерсии</name>
<id>19</id>
<displayImportance>VeryHigh</displayImportance>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -287,6 +295,96 @@
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Основное</value>
</title>
<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>
<type>ColumnGroup</type>
<extInfo xsi:type="form:ColumnGroupExtInfo">
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Комментарий</name>
<id>55</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Комментарий</segments>
</dataPath>
<extendedTooltip>
<name>КомментарийРасширеннаяПодсказка</name>
<id>57</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>КомментарийКонтекстноеМеню</name>
<id>56</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</editMode>
<autoCellHeight>true</autoCellHeight>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<textColor xsi:type="core:ColorRef">
<color>Style.ПоясняющийТекст</color>
</textColor>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Вертикально</value>
</title>
<extendedTooltip>
<name>ГруппаВертикальноРасширеннаяПодсказка</name>
<id>52</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>Vertical</group>
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокСсылка</name>
<id>32</id>
@@ -430,7 +528,6 @@
<verticalScrollBar>AutoUse</verticalScrollBar>
<horizontalLines>true</horizontalLines>
<verticalLines>true</verticalLines>
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
<searchOnInput>Auto</searchOnInput>
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
@@ -473,6 +570,11 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>Список</name>
<id>1</id>
@@ -494,10 +596,11 @@
ВерсииФайлов.Ссылка КАК Ссылка,
ВерсииФайлов.Владелец КАК Владелец,
ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления,
ВерсииФайлов.НомерВерсии,
ВерсииФайлов.Размер,
ВерсииФайлов.Автор,
ВерсииФайлов.ДатаСоздания
ВерсииФайлов.НомерВерсии КАК НомерВерсии,
ВерсииФайлов.Размер КАК Размер,
ВерсииФайлов.Автор КАК Автор,
ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
ВерсииФайлов.Комментарий КАК Комментарий
ИЗ
Справочник.ВерсииФайлов КАК ВерсииФайлов</queryText>
<mainTable>Catalog.ВерсииФайлов</mainTable>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -24,6 +32,10 @@
ЭлементОтбораДанных.ПравоеЗначение = Истина;
ЭлементОтбораДанных.Использование = Истина;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.Комментарий.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -162,9 +162,17 @@
<excludedCommands>Copy</excludedCommands>
<excludedCommands>Create</excludedCommands>
<excludedCommands>Delete</excludedCommands>
<items xsi:type="form:FormGroup">
<name>ГруппаВертикально</name>
<id>64</id>
<items xsi:type="form:FormGroup">
<name>ГруппаОсновное</name>
<id>66</id>
<displayImportance>VeryHigh</displayImportance>
<items xsi:type="form:FormField">
<name>СписокПолноеНаименование</name>
<id>8</id>
<displayImportance>VeryHigh</displayImportance>
<title>
<key>ru</key>
<value>Наименование</value>
@@ -306,43 +314,6 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокКомментарий</name>
<id>20</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Комментарий</segments>
</dataPath>
<extendedTooltip>
<name>СписокКомментарийРасширеннаяПодсказка</name>
<id>42</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СписокКомментарийКонтекстноеМеню</name>
<id>21</id>
<autoFill>true</autoFill>
</contextMenu>
<type>LabelField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокДатаСоздания</name>
<id>22</id>
@@ -451,18 +422,45 @@
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокПометкаУдаления</name>
<id>28</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Основное</value>
</title>
<extendedTooltip>
<name>ГруппаОсновноеРасширеннаяПодсказка</name>
<id>67</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">
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокКомментарий</name>
<id>20</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.DeletionMark</segments>
<segments>Список.Комментарий</segments>
</dataPath>
<extendedTooltip>
<name>СписокПометкаУдаленияРасширеннаяПодсказка</name>
<id>46</id>
<name>СписокКомментарийРасширеннаяПодсказка</name>
<id>42</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
@@ -471,16 +469,48 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СписокПометкаУдаленияКонтекстноеМеню</name>
<id>29</id>
<name>СписокКомментарийКонтекстноеМеню</name>
<id>21</id>
<autoFill>true</autoFill>
</contextMenu>
<type>CheckBoxField</type>
<type>LabelField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<autoCellHeight>true</autoCellHeight>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:CheckBoxFieldExtInfo"/>
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<textColor xsi:type="core:ColorRef">
<color>Style.ПоясняющийТекст</color>
</textColor>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Вертикально</value>
</title>
<extendedTooltip>
<name>ГруппаВертикальноРасширеннаяПодсказка</name>
<id>65</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>Vertical</group>
<showTitle>auto</showTitle>
<showInCard>true</showInCard>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СписокСсылка</name>
@@ -775,6 +805,11 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>Список</name>
<id>1</id>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -21,6 +28,10 @@
ЭлементОтбораДанных.ПравоеЗначение = Истина;
ЭлементОтбораДанных.Использование = Истина;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.СписокКомментарий.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -36,6 +44,8 @@
|ГДЕ
| ИзменениеОбъектаРазрешено(Владелец.ВладелецФайла)";
Ограничение.ТекстДляВнешнихПользователей = Ограничение.Текст;
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
@@ -44,8 +54,6 @@
#КонецОбласти
#КонецЕсли
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
@@ -56,3 +64,5 @@
КонецПроцедуры
#КонецОбласти
#КонецЕсли
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -20,10 +28,6 @@
РодительскаяВерсия = Владелец.ТекущаяВерсия;
КонецЕсли;
Если Не ЭтоНовый() Тогда
УстановленаПометкаУдаления = ПометкаУдаления И Не ПометкаУдаленияВИБ();
КонецЕсли;
// Выполним установку индекса пиктограммы при записи объекта.
ИндексКартинки = РаботаСФайламиСлужебныйКлиентСервер.ПолучитьИндексПиктограммыФайла(Расширение);
@@ -103,7 +107,7 @@
Исключение
ЗаписьЖурналаРегистрации(НСтр("ru = 'Файлы.Ошибка удаления файла.'",
ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()),
ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,
Файл, ОписаниеОшибки());
@@ -122,37 +126,6 @@
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
// Возвращает текущее значение пометки удаления в информационной базе.
Функция ПометкаУдаленияВИБ()
УстановитьПривилегированныйРежим(Истина);
ИмяСправочникаВерсийФайлов = Метаданные.НайтиПоТипу(ТипЗнч(Ссылка)).Имя;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВерсииФайлов.ПометкаУдаления
|ИЗ
| Справочник." + ИмяСправочникаВерсийФайлов + " КАК ВерсииФайлов
|ГДЕ
| ВерсииФайлов.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Выборка.Следующий();
Возврат Выборка.ПометкаУдаления;
КонецЕсли;
Возврат Неопределено;
КонецФункции
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -148,6 +148,7 @@
<value>Автор</value>
</synonym>
<type>
<types>CatalogRef.ВнешниеПользователи</types>
<types>CatalogRef.УчетныеЗаписиСинхронизацииФайлов</types>
<types>CatalogRef.Пользователи</types>
</type>
@@ -776,4 +777,18 @@
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
<forms uuid="aa299fc6-051f-487c-ada4-451e08c4763c">
<name>ВерсииФайла</name>
<synonym>
<key>ru</key>
<value>Версии файла</value>
</synonym>
<help>
<pages>
<lang>ru</lang>
</pages>
</help>
<usePurposes>PersonalComputer</usePurposes>
<usePurposes>MobileDevice</usePurposes>
</forms>
</mdclass:Catalog>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -32,34 +32,6 @@
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>КоманднаяПанель</name>
<id>44</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Командная панель</value>
</title>
<extendedTooltip>
<name>КоманднаяПанельРасширеннаяПодсказка</name>
<id>45</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>CommandBar</type>
<extInfo xsi:type="form:CommandBarExtInfo">
<horizontalAlign>Left</horizontalAlign>
<commandSource>Form</commandSource>
</extInfo>
</items>
<items xsi:type="form:Table">
<name>Список</name>
<id>1</id>
@@ -80,63 +52,10 @@
<titleLocation>None</titleLocation>
<excludedCommands>CreateFolder</excludedCommands>
<excludedCommands>MoveItem</excludedCommands>
<items xsi:type="form:FormGroup">
<name>Представление</name>
<id>40</id>
<items xsi:type="form:FormField">
<name>Пиктограмма</name>
<id>28</id>
<title>
<key>ru</key>
<value>Пиктограмма</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.ИндексПиктограммы</segments>
</dataPath>
<titleLocation>None</titleLocation>
<extendedTooltip>
<name>ПиктограммаРасширеннаяПодсказка</name>
<id>35</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ПиктограммаКонтекстноеМеню</name>
<id>29</id>
<autoFill>true</autoFill>
</contextMenu>
<type>PictureField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:ImageFieldExtInfo">
<width>2</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<valuesPicture xsi:type="core:PictureRef">
<picture>CommonPicture.ВидыКонтактнойИнформации</picture>
</valuesPicture>
<border xsi:type="core:BorderDef">
<style>Single</style>
<width>1</width>
</border>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Наименование</name>
<id>37</id>
<displayImportance>VeryHigh</displayImportance>
<title>
<key>ru</key>
<value>Вид контактной информации</value>
@@ -147,7 +66,7 @@
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Список.Description</segments>
<segments>Список.Наименование</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеРасширеннаяПодсказка</name>
@@ -172,32 +91,7 @@
<extInfo xsi:type="form:LabelFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Представление</value>
</title>
<extendedTooltip>
<name>ПредставлениеРасширеннаяПодсказка</name>
<id>41</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>
<horizontalStretch>false</horizontalStretch>
</extInfo>
</items>
<items xsi:type="form:FormField">
@@ -354,10 +248,15 @@
<initialTreeView>ExpandAllLevels</initialTreeView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<rowPictureDataPath xsi:type="form:DataPath">
<segments>Список.ИндексПиктограммы</segments>
</rowPictureDataPath>
<rowsPicture xsi:type="core:PictureRef">
<picture>CommonPicture.ВидыКонтактнойИнформации</picture>
</rowsPicture>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -370,12 +269,11 @@
<userSettingsGroup>ГруппаПользовательскихНастроек</userSettingsGroup>
</extInfo>
</items>
<commandBarLocation>Top</commandBarLocation>
<showCommandBar>true</showCommandBar>
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
<handlers>
<event>OnCreateAtServer</event>
@@ -468,7 +366,11 @@
СправочникВидыКонтактнойИнформации.Предопределенный,
СправочникВидыКонтактнойИнформации.Родитель,
СправочникВидыКонтактнойИнформации.ЭтоГруппа,
СправочникВидыКонтактнойИнформации.Наименование,
ВЫБОР
КОГДА &amp;ЭтоОсновнойЯзык
ТОГДА СправочникВидыКонтактнойИнформации.Наименование
ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ВидыКонтактнойИнформацииПредставления.Наименование, СправочникВидыКонтактнойИнформации.Наименование) КАК СТРОКА(150))
КОНЕЦ КАК Наименование,
СправочникВидыКонтактнойИнформации.Тип,
СправочникВидыКонтактнойИнформации.РеквизитДопУпорядочивания,
СправочникВидыКонтактнойИнформации.РедактированиеТолькоВДиалоге,
@@ -477,6 +379,9 @@
СправочникВидыКонтактнойИнформации.Используется
ИЗ
Справочник.ВидыКонтактнойИнформации КАК СправочникВидыКонтактнойИнформации
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыКонтактнойИнформации.Представления КАК ВидыКонтактнойИнформацииПредставления
ПО (ВидыКонтактнойИнформацииПредставления.Ссылка = СправочникВидыКонтактнойИнформации.Ссылка)
И ВидыКонтактнойИнформацииПредставления.КодЯзыка = &amp;КодЯзыка
ГДЕ
СправочникВидыКонтактнойИнформации.Используется И ЕстьNULL(СправочникВидыКонтактнойИнформации.Родитель.Используется, Истина)
</queryText>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -14,19 +21,8 @@
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда // Временное решение для работы в мобильном клиенте, будет удалено в следующих версиях
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
Список.Параметры.УстановитьЗначениеПараметра("ЭтоОсновнойЯзык", ТекущийЯзык() = Метаданные.ОсновнойЯзык);
Список.Параметры.УстановитьЗначениеПараметра("КодЯзыка", ТекущийЯзык().КодЯзыка);
КонецПроцедуры
@@ -67,7 +63,6 @@
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -121,6 +121,10 @@
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>Opening</event>
<name>НаименованиеОткрытие</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
@@ -1168,6 +1172,10 @@
<event>AfterWriteAtServer</event>
<name>ПослеЗаписиНаСервере</name>
</handlers>
<handlers>
<event>OnReadAtServer</event>
<name>ПриЧтенииНаСервере</name>
</handlers>
<handlers>
<event>BeforeWriteAtServer</event>
<name>ПередЗаписьюНаСервере</name>
@@ -10,7 +10,7 @@
</li><li>
<div><strong>Адрес электронной почты</strong> - поле с таким типом контактной информации предназначено для хранения адреса электронной почты. Реквизит используется при отправке электронных писем из программы.</div>
</li><li>
<div><strong>Веб-страница</strong> - поле с таким типом контактной информации предназначено для хранения адресов веб страниц.</div>
<div><strong>Веб-страница</strong> - поле с таким типом контактной информации предназначено для хранения адресов веб страниц. Позволяет прикрепить гиперссылки на интернет-страницы, после этого ссылки будут храниться в базе с возможностью перехода по ним.</div>
</li><li>
<div><strong>Факс</strong> - поле с таким типом контактной информации предназначено для хранения номеров факсов в виде произвольной строки, или в соответствии с шаблоном ввода номера факса. Реквизит используется в печатных формах документов.</div>
</li><li>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -63,6 +71,8 @@
ДоступныДополнительныеНастройкиАдреса = (Метаданные.Обработки.Найти("РасширенныйВводКонтактнойИнформации") <> Неопределено
И Метаданные.Обработки["РасширенныйВводКонтактнойИнформации"].Формы.Найти("НастройкиАдреса") <> Неопределено);
ЛокализацияСервер.ПриСозданииНаСервере(Элементы.Наименование);
КонецПроцедуры
&НаКлиенте
@@ -70,6 +80,13 @@
ИзменитьОтображениеПриИзмененииТипа();
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
@@ -77,6 +94,8 @@
Отказ = Истина;
КонецЕсли;
ЛокализацияСервер.ПередЗаписьюНаСервере(ТекущийОбъект);
КонецПроцедуры
&НаСервере
@@ -90,6 +109,8 @@
КонецЕсли;
КонецЕсли;
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры
&НаСервере
@@ -164,6 +185,13 @@
КонецПроцедуры
&НаКлиенте
Процедура НаименованиеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Наименование", СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
@@ -183,7 +211,9 @@
&НаКлиенте
Процедура ДополнительныеНастройкиАдреса(Команда)
ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыНастроекАдреса", ЭтотОбъект);
ПараметрыФормы = Новый Структура("Объект", Объект);
ПараметрыФормы = Новый Структура();
ПараметрыФормы.Вставить("Объект", Объект);
ПараметрыФормы.Вставить("ТолькоПросмотр", ЭтотОбъект.ТолькоПросмотр);
ИмяФормыНастройкиАдреса = "Обработка.РасширенныйВводКонтактнойИнформации.Форма.НастройкиАдреса";
ОткрытьФорму(ИмяФормыНастройкиАдреса, ПараметрыФормы,,,,, ОповещениеОЗакрытие);
КонецПроцедуры
@@ -216,6 +246,10 @@
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Другое") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.ВебСтраница") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Прочие;
Элементы.РедактированиеТолькоВДиалоге.Видимость = Ложь;
Элементы.ГруппаХранитьИсториюИзменений.Видимость = Ложь;
Иначе
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Прочие;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -41,7 +49,19 @@
#КонецОбласти
#Область ОбработчикиОбновления
#КонецЕсли
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
ЛокализацияКлиентСервер.ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныеПроцедурыИФункции
// Регистрирует к обработке виды контактной информации другое у которых необходимо заполнить поле ВидПоляДругое.
//
@@ -1,8 +1,17 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
@@ -13,6 +22,10 @@
Отказ = Истина;
ВызватьИсключение Результат.ТекстОшибки;
КонецЕсли;
ИмяГруппы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Родитель, "ИмяПредопределенногоВида");
Если ПустаяСтрока(ИмяГруппы) Тогда
ИмяГруппы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Родитель, "ИмяПредопределенныхДанных");
КонецЕсли;
КонецЕсли;
КонецПроцедуры
@@ -31,4 +44,16 @@
#КонецОбласти
#Область ОбработчикиСобытий
Процедура ПриЧтенииПредставленийНаСервере() Экспорт
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -88,6 +88,18 @@
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>Description</name>
<synonym>
<key>ru</key>
<value>Наименование</value>
</synonym>
<synonym>
<key>en</key>
<value>Name</value>
</synonym>
<synonym>
<key>de</key>
<value>Benennung</value>
</synonym>
<toolTip>
<key>ru</key>
<value>Наименование вида контактной информации</value>
@@ -122,7 +134,7 @@
<limitLevelCount>true</limitLevelCount>
<levelCount>3</levelCount>
<foldersOnTop>true</foldersOnTop>
<descriptionLength>100</descriptionLength>
<descriptionLength>150</descriptionLength>
<codeType>String</codeType>
<defaultPresentation>AsDescription</defaultPresentation>
<predefined>
@@ -189,6 +201,7 @@
<key>ru</key>
<value>Внешний вид поля другое на форме</value>
</toolTip>
<multiLine>true</multiLine>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue">
@@ -534,6 +547,108 @@
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="d8fc4644-5351-443c-8b5d-5de2c4b855d1">
<name>ИмяПредопределенногоВида</name>
<synonym>
<key>ru</key>
<value>Имя предопределенного вида</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>150</length>
</stringQualifiers>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<use>ForFolderAndItem</use>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="0f039952-09d3-49c8-b909-e8333a3fc8f9">
<name>ИмяГруппы</name>
<synonym>
<key>ru</key>
<value>Имя группы</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>150</length>
</stringQualifiers>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<tabularSections uuid="99387869-f8b1-4269-bd26-e39380d17b69">
<producedTypes>
<objectType typeId="9cb91b1a-ae31-403c-8c5d-e0fd01955e6c" valueTypeId="74fba94b-4c84-497d-a403-5c2dd8ebbc57"/>
<rowType typeId="0ed0fdb2-6d8e-4edc-a853-be09de3beb73" valueTypeId="11f094f7-934d-4111-826e-d2ffc13f229a"/>
</producedTypes>
<name>Представления</name>
<synonym>
<key>ru</key>
<value>Представления</value>
</synonym>
<standardAttributes>
<dataHistory>Use</dataHistory>
<name>LineNumber</name>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
</standardAttributes>
<attributes uuid="4b2acdb9-fefd-4735-9dfd-d7d141967f3c">
<name>КодЯзыка</name>
<synonym>
<key>ru</key>
<value>Код языка</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>10</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Код языка представления реквизита</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<dataHistory>Use</dataHistory>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
</attributes>
<attributes uuid="bc07d643-a044-4882-b95b-2173a197fd0e">
<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"/>
<dataHistory>Use</dataHistory>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
</attributes>
<use>ForFolderAndItem</use>
</tabularSections>
<forms uuid="f5ef3f75-7d12-4284-844f-54d19d1f7e2f">
<name>ФормаСписка</name>
<synonym>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
@@ -1 +0,0 @@
@@ -329,10 +329,6 @@
<length>128</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Имя свойства.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
@@ -359,10 +355,6 @@
</stringQualifiers>
<dateQualifiers/>
</type>
<toolTip>
<key>ru</key>
<value>Значение свойства.</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<dataHistory>Use</dataHistory>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -10,6 +17,16 @@
Возврат;
КонецЕсли;
Если Не ПравоДоступа("Редактирование", Метаданные.Справочники.ВнешниеКомпоненты) Тогда
Элементы.ФормаОбновитьИзФайла.Видимость = Ложь;
Элементы.ФормаСохранитьКак.Видимость = Ложь;
Элементы.ОбновитьСПортала1СИТС.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюОбновитьИзФайла.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюСохранитьКак.Видимость = Ложь;
КонецЕсли;
Если Не ВнешниеКомпонентыСлужебный.ДоступнаЗагрузкаСПортала() Тогда
Элементы.ОбновлятьСПортала1СИТС.Видимость = Ложь;
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОписаниеПеременных
@@ -23,6 +30,14 @@
УстановитьВидимостьДоступность();
Если Не ПравоДоступа("Редактирование", Метаданные.Справочники.ВнешниеКомпоненты) Тогда
Элементы.ФормаОбновитьИзФайла.Видимость = Ложь;
Элементы.ФормаСохранитьКак.Видимость = Ложь;
Элементы.ОбновитьСПортала1СИТС.Видимость = Ложь;
КонецЕсли;
Если Не ВнешниеКомпонентыСлужебный.ДоступнаЗагрузкаСПортала() Тогда
Элементы.ОбновлятьСПортала1СИТС.Видимость = Ложь;
@@ -212,31 +227,29 @@
Возврат;
КонецЕсли;
ПараметрыДиалога = Новый Структура;
ПараметрыДиалога.Вставить("Режим", РежимДиалогаВыбораФайла.Открытие);
ПараметрыДиалога.Вставить("Заголовок", НСтр("ru = 'Выберите файл внешней компоненты'"));
ПараметрыДиалога.Вставить("Фильтр", НСтр("ru = 'Внешняя компонента (*.zip)|*.zip|Все файлы(*.*)|*.*'"));
Оповещение = Новый ОписаниеОповещения("ЗагрузитьКомпонентуПослеПомещенияФайла", ЭтотОбъект, Контекст);
СтандартныеПодсистемыКлиент.ПоказатьПомещениеФайла(Оповещение,
УникальныйИдентификатор, Объект.ИмяФайла, ПараметрыДиалога);
ПараметрыЗагрузки = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
ПараметрыЗагрузки.Диалог.Фильтр = НСтр("ru = 'Внешняя компонента (*.zip)|*.zip|Все файлы(*.*)|*.*'");
ПараметрыЗагрузки.Диалог.Заголовок = НСтр("ru = 'Выберите файл внешней компоненты'");
ПараметрыЗагрузки.ИдентификаторФормы = УникальныйИдентификатор;
ФайловаяСистемаКлиент.ЗагрузитьФайл(Оповещение, ПараметрыЗагрузки, Объект.ИмяФайла);
КонецПроцедуры
// Продолжение процедуры ЗагрузитьКомпонентуИзФайла.
&НаКлиенте
Процедура ЗагрузитьКомпонентуПослеПомещенияФайла(ПомещенныеФайлы, Контекст) Экспорт
Процедура ЗагрузитьКомпонентуПослеПомещенияФайла(ПомещенныйФайл, Контекст) Экспорт
Если ПомещенныеФайлы = Неопределено Или ПомещенныеФайлы.Количество() = 0 Тогда
Если ПомещенныйФайл = Неопределено Тогда
ЗагрузитьКомпонентуПриОтображенииОшибки(НСтр("ru = 'Файл не удалось загрузить на сервер.'"));
Возврат;
КонецЕсли;
ОписаниеФайла = ПомещенныеФайлы[0];
ПараметрыЗагрузки = Новый Структура;
ПараметрыЗагрузки.Вставить("АдресХранилищаФайла", ОписаниеФайла.Хранение);
ПараметрыЗагрузки.Вставить("ИмяФайла", ТолькоИмяФайла(ОписаниеФайла.Имя));
ПараметрыЗагрузки.Вставить("АдресХранилищаФайла", ПомещенныйФайл.Хранение);
ПараметрыЗагрузки.Вставить("ИмяФайла", ТолькоИмяФайла(ПомещенныйФайл.Имя));
Результат = ЗагрузитьКомпонентуИзФайлаНаСервере(ПараметрыЗагрузки);
Если Результат.Загружена И ЭтоАдресВременногоХранилища(АдресДвоичныхДанныхКомпоненты)Тогда
@@ -432,7 +445,6 @@
// Доступность кнопки Сохранить в файл
Элементы.ФормаСохранитьКак.Доступность = Не ЭтоНовый;
Элементы.ОбновитьСПортала1СИТС.Доступность = Не ЭтоНовый;
// Зависимость использования и автоматического обновления.
КомпонентаОтключена = (Объект.Использование = Перечисления.ВариантыИспользованияВнешнихКомпонент.Отключена);
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -61,13 +69,15 @@
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Запрос.Текст =
"ВЫБРАТЬ
| МАКСИМУМ(ВнешниеКомпоненты.ДатаВерсии) КАК ДатаВерсии
|ИЗ
| Справочник.ВнешниеКомпоненты КАК ВнешниеКомпоненты
|ГДЕ
| ВнешниеКомпоненты.Идентификатор = &Идентификатор";
| ВнешниеКомпоненты.Идентификатор = &Идентификатор
| И ВнешниеКомпоненты.Ссылка <> &Ссылка";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
@@ -124,4 +134,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -252,10 +252,6 @@
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Обновлять с Портала 1С:ИТС</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
@@ -142,11 +142,13 @@
</extInfo>
</extendedTooltip>
<commandName>Form.Command.ЗавершитьИЗакрыть</commandName>
<representation>Auto</representation>
<defaultButton>true</defaultButton>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.WriteAndClose</picture>
</picture>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
@@ -579,7 +581,7 @@
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>Группа</name>
<name>ГруппаСодержимое</name>
<id>24</id>
<items xsi:type="form:FormGroup">
<name>ГруппыИПользователи</name>
@@ -850,6 +852,7 @@
<rowsPicture xsi:type="core:PictureRef">
<picture>CommonPicture.СостоянияПользователей</picture>
</rowsPicture>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -985,7 +988,7 @@
</userVisible>
<title>
<key>ru</key>
<value>Группы</value>
<value>Группы пользователей</value>
</title>
<extendedTooltip>
<name>ГруппаГруппыExtendedTooltip</name>
@@ -1845,10 +1848,10 @@
</userVisible>
<title>
<key>ru</key>
<value>Группа</value>
<value>Содержимое</value>
</title>
<extendedTooltip>
<name>ГруппаExtendedTooltip</name>
<name>ГруппаСодержимоеРасширеннаяПодсказка</name>
<id>109</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -2244,6 +2247,11 @@
<enabled>true</enabled>
<showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes>
<name>ВнешниеПользователиСписок</name>
<title>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
// ИСПОЛЬЗОВАНИЕ ФОРМЫ //
//
@@ -56,7 +64,7 @@
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
ВнешниеПользователиСписок,
"ИдентификаторПользователяИБ",
Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"),
ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор(),
ВидСравненияКомпоновкиДанных.НеРавно);
КонецЕсли;
@@ -81,11 +89,6 @@
ХранимыеПараметры.Вставить("ИспользоватьГруппы",
ПолучитьФункциональнуюОпцию("ИспользоватьГруппыПользователей"));
Если Не ПравоДоступа("Добавление", Метаданные.Справочники.ВнешниеПользователи) Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"СоздатьВнешнегоПользователя", "Видимость", Ложь);
КонецЕсли;
Если Не ПравоДоступа("Редактирование", Метаданные.Справочники.ГруппыВнешнихПользователей) Тогда
Элементы.ВнешниеПользователиСписокКонтекстноеМенюНазначитьГруппы.Видимость = Ложь;
Элементы.НазначитьГруппы.Видимость = Ложь;
@@ -160,7 +163,7 @@
ОписаниеОбъекта = Новый Структура;
ОписаниеОбъекта.Вставить("Ссылка", Справочники.Пользователи.ПустаяСсылка());
ОписаниеОбъекта.Вставить("ИдентификаторПользователяИБ", Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"));
ОписаниеОбъекта.Вставить("ИдентификаторПользователяИБ", ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор());
УровеньДоступа = ПользователиСлужебный.УровеньДоступаКСвойствамПользователя(ОписаниеОбъекта);
Если Не УровеньДоступа.УправлениеСписком Тогда
@@ -172,6 +175,9 @@
ТолькоПросмотр = Истина;
КонецЕсли;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ЗавершитьИЗакрыть.Отображение = ОтображениеКнопки.Картинка;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -181,6 +187,12 @@
ПроверкаИзмененияТекущегоЭлементаФормы();
КонецЕсли;
#Если МобильныйКлиент Тогда
Если ХранимыеПараметры.Свойство("ИспользоватьГруппы") И ХранимыеПараметры.ИспользоватьГруппы Тогда
Элементы.ГруппаГруппы.Заголовок = Строка(Элементы.ГруппыВнешнихПользователей.ТекущиеДанные.Ссылка);
КонецЕсли;
#КонецЕсли
КонецПроцедуры
&НаКлиенте
@@ -260,6 +272,13 @@
ОбновитьСодержимоеФормыПриИзмененииГруппы(ЭтотОбъект);
#Если МобильныйКлиент Тогда
Если ХранимыеПараметры.Свойство("РасширенныйПодбор") И Не ХранимыеПараметры.РасширенныйПодбор Тогда
Элементы.ГруппаГруппы.Заголовок = Строка(Элементы.ГруппыВнешнихПользователей.ТекущиеДанные.Ссылка);
ТекущийЭлемент = Элементы.ВнешниеПользователиСписок;
КонецЕсли;
#КонецЕсли
КонецПроцедуры
&НаКлиенте
@@ -696,7 +715,7 @@
ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор);
ОбновитьЗначениеПараметраКомпоновкиДанных(ВнешниеПользователиСписок, "ПустойУникальныйИдентификатор",
Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"));
ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор());
ОбновитьЗначениеПараметраКомпоновкиДанных(ВнешниеПользователиСписок, "ВозможноСменитьТолькоСвойПароль",
Не Пользователи.ЭтоПолноправныйПользователь());
@@ -819,7 +838,15 @@
Элементы.ВыбранныеПользователиИГруппы.Видимость = Истина;
ИспользоватьГруппыПользователей = ПолучитьФункциональнуюОпцию("ИспользоватьГруппыПользователей");
Элементы.ГруппаВыбратьГруппу.Видимость = ИспользоватьГруппыПользователей;
Если ИспользоватьГруппыПользователей Тогда
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ГруппыИПользователи.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная;
Элементы.ГруппыИПользователи.ВажностьПриОтображении = ВажностьПриОтображении.ОченьВысокая;
Элементы.ГруппаСодержимое.Группировка = ГруппировкаПодчиненныхЭлементовФормы.ГоризонтальнаяВсегда;
Элементы.ГруппаВыбратьГруппу.Видимость = Ложь;
Элементы.ГруппаВыбратьПользователя.Видимость = Ложь;
Элементы.Переместить(Элементы.ВыбранныеПользователиИГруппы, Элементы.ГруппаСодержимое, Элементы.ВыбранныеПользователиИГруппы);
ИначеЕсли ИспользоватьГруппыПользователей Тогда
Элементы.ГруппыИПользователи.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная;
Элементы.ВнешниеПользователиСписок.Высота = 5;
Элементы.ГруппыВнешнихПользователей.Высота = 3;
@@ -1996,11 +1996,13 @@
</extInfo>
</extendedTooltip>
<commandName>Form.Command.ЗаписатьИЗакрыть</commandName>
<representation>PictureAndText</representation>
<defaultButton>true</defaultButton>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<picture xsi:type="core:PictureRef">
<picture>StdPicture.WriteAndClose</picture>
</picture>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:FormGroup">
@@ -3000,7 +3002,6 @@
</handler>
</action>
<functionalOptions>FunctionalOption.ИспользоватьВнешнихПользователей</functionalOptions>
<modifiesStoredData>true</modifiesStoredData>
<currentRowUse>DontUse</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
@@ -3020,7 +3021,6 @@
</handler>
</action>
<functionalOptions>FunctionalOption.ИспользоватьВнешнихПользователей</functionalOptions>
<modifiesStoredData>true</modifiesStoredData>
<currentRowUse>DontUse</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -133,6 +140,10 @@
Элементы.ПотребоватьСменуПароляПриВходе.РасширеннаяПодсказка.Заголовок =
ПользователиСлужебный.ПодсказкаПотребоватьСменуПароляПриВходе(Истина);
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ФормаЗаписатьИЗакрыть.Отображение = ОтображениеКнопки.Картинка;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -234,7 +245,21 @@
И ДействияВФорме.СвойстваЭлемента <> "Редактирование"
И ДействияВФорме.СвойстваПользователяИБ <> "Редактирование";
ПользователиСлужебныйКлиентСервер.УстановитьДоступностьКнопкиЗаписатьИЗакрыть(ЭтотОбъект);
ДоступностьКнопки = Не ТолькоПросмотр И ПравоДоступа("Редактирование",
Метаданные.Справочники.ВнешниеПользователи);
Если Элементы.ФормаЗаписатьИЗакрыть.Доступность <> ДоступностьКнопки Тогда
Элементы.ФормаЗаписатьИЗакрыть.Доступность = ДоступностьКнопки;
КонецЕсли;
Если Элементы.ИзменитьОграничениеНаВходВПрограмму.Доступность <> ДоступностьКнопки Тогда
Элементы.ИзменитьОграничениеНаВходВПрограмму.Доступность = ДоступностьКнопки;
КонецЕсли;
Если Элементы.СменитьПароль.Доступность <> ДоступностьКнопки Тогда
Элементы.СменитьПароль.Доступность = ДоступностьКнопки;
КонецЕсли;
Элементы.РекомендуетсяПроверитьНастройкиДляВхода.Видимость =
УровеньДоступа.ИзменениеРазрешенияНаВход
@@ -407,7 +432,7 @@
Если ПользователиСлужебный.ОбъектАвторизацииИспользуется(
Объект.ОбъектАвторизации, Объект.Ссылка, , , ТекстОшибки) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
ТекстОшибки, , "Объект.ОбъектАвторизации", , Отказ);
КонецЕсли;
@@ -415,18 +440,18 @@
И ЗначениеЗаполнено(СрокДействия)
И СрокДействия <= НачалоДня(ТекущаяДатаСеанса()) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Ограничение должно быть до завтра или более.'"),, "ВходВПрограммуРазрешен",, Отказ);
КонецЕсли;
Если ТребуетсяЗаписьПользователяИБ(ЭтотОбъект) Тогда
ОписаниеПользователяИБ = ОписаниеПользователяИБ();
ОписаниеПользователяИБ.Вставить("ИдентификаторПользователяИБ", Объект.ИдентификаторПользователяИБ);
ПользователиСлужебный.ПроверитьОписаниеПользователяИБ(ОписаниеПользователяИБ, Отказ);
ПользователиСлужебный.ПроверитьОписаниеПользователяИБ(ОписаниеПользователяИБ, Отказ, Истина);
ТекстСообщения = "";
Если ПользователиСлужебный.ТребуетсяСоздатьПервогоАдминистратора(Неопределено, ТекстСообщения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
ТекстСообщения, , "ВходВПрограммуРазрешен", , Отказ);
КонецЕсли;
КонецЕсли;
@@ -722,7 +747,6 @@
Процедура ОбновитьИмяДляВхода(Форма, ПриИзмененииНаименования = Ложь)
Элементы = Форма.Элементы;
Объект = Форма.Объект;
Если Форма.ПользовательИБСуществует Тогда
Возврат;
@@ -772,18 +796,22 @@
Возврат;
КонецЕсли;
Модифицированность = Истина;
ПользовательИБПароль = Результат.НовыйПароль;
ПользовательИБСтарыйПароль = Результат.СтарыйПароль;
УстановитьНаличиеПароля(ЭтотОбъект, ЗначениеЗаполнено(ПользовательИБПароль));
УстановитьНаличиеПароля(ЭтотОбъект, ЗначениеЗаполнено(ПользовательИБПароль),
ПользователиКлиент.АвторизованныйПользователь());
УстановитьДоступностьСвойств(ЭтотОбъект);
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьНаличиеПароля(Форма, ПарольУстановлен)
Процедура УстановитьНаличиеПароля(Форма, ПарольУстановлен, АвторизованныйПользователь)
ПользователиСлужебныйКлиентСервер.УстановитьНаличиеПароля(Форма, ПарольУстановлен);
ПользователиСлужебныйКлиентСервер.УстановитьНаличиеПароля(Форма, ПарольУстановлен, АвторизованныйПользователь);
КонецПроцедуры
@@ -1078,7 +1106,7 @@
|Роли"));
КонецЕсли;
Объект.ИдентификаторПользователяИБ = Неопределено;
УстановитьНаличиеПароля(ЭтотОбъект, Ложь);
УстановитьНаличиеПароля(ЭтотОбъект, Ложь, Пользователи.АвторизованныйПользователь());
Иначе
ПрочитанныеСвойства = Пользователи.СвойстваПользователяИБ(Объект.ИдентификаторПользователяИБ);
Если ПрочитанныеСвойства <> Неопределено Тогда
@@ -1138,9 +1166,11 @@
КонецЕсли;
Если ПрочитанныеСвойства = Неопределено Тогда
УстановитьНаличиеПароля(ЭтотОбъект, Ложь);
УстановитьНаличиеПароля(ЭтотОбъект, Ложь,
Пользователи.АвторизованныйПользователь());
Иначе
УстановитьНаличиеПароля(ЭтотОбъект, ПрочитанныеСвойства.ПарольУстановлен);
УстановитьНаличиеПароля(ЭтотОбъект, ПрочитанныеСвойства.ПарольУстановлен,
Пользователи.АвторизованныйПользователь());
КонецЕсли;
КонецЕсли;
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -49,8 +57,6 @@
#КонецОбласти
#КонецЕсли
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
@@ -71,7 +77,7 @@
НайденныйВнешнийПользователь = Неопределено;
ЕстьПравоДобавленияВнешнегоПользователя = Ложь;
ОбъектАвторизацииИспользуется = ПользователиСлужебныйВызовСервера.ОбъектАвторизацииИспользуется(
ОбъектАвторизацииИспользуется = ПользователиСлужебный.ОбъектАвторизацииИспользуется(
Параметры.ОбъектАвторизации,
Неопределено,
НайденныйВнешнийПользователь,
@@ -97,3 +103,5 @@
КонецПроцедуры
#КонецОбласти
#КонецЕсли
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОписаниеПеременных
@@ -71,7 +79,7 @@
И ЗначениеЗаполнено(ДополнительныеСвойства.ГруппаНовогоВнешнегоПользователя) Тогда
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ГруппыВнешнихПользователей");
Блокировка.Добавить("Справочник.ГруппыВнешнихПользователей");
Блокировка.Заблокировать();
ОбъектГруппы = ДополнительныеСвойства.ГруппаНовогоВнешнегоПользователя.ПолучитьОбъект();
@@ -153,4 +161,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -103,9 +103,9 @@
<characteristics>
<characteristicTypes>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты</characteristicTypes>
<keyField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство</keyField>
<typesFilterField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.StandardAttribute.Ref</typesFilterField>
<typesFilterValue xsi:type="core:ReferenceValue">
<value>Catalog.НаборыДополнительныхРеквизитовИСведений.Справочник_ВнешниеПользователи</value>
<typesFilterField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.ИмяПредопределенногоНабора</typesFilterField>
<typesFilterValue xsi:type="core:StringValue">
<value>Справочник_ВнешниеПользователи</value>
</typesFilterValue>
<dataPathField>-1</dataPathField>
<multipleValuesUseField>-1</multipleValuesUseField>
@@ -119,9 +119,9 @@
<characteristics>
<characteristicTypes>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения</characteristicTypes>
<keyField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство</keyField>
<typesFilterField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.StandardAttribute.Ref</typesFilterField>
<typesFilterValue xsi:type="core:ReferenceValue">
<value>Catalog.НаборыДополнительныхРеквизитовИСведений.Справочник_ВнешниеПользователи</value>
<typesFilterField>Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.ИмяПредопределенногоНабора</typesFilterField>
<typesFilterValue xsi:type="core:StringValue">
<value>Справочник_ВнешниеПользователи</value>
</typesFilterValue>
<dataPathField>-1</dataPathField>
<multipleValuesUseField>-1</multipleValuesUseField>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -14,4 +22,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -477,6 +477,7 @@
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fillValue xsi:type="core:UndefinedValue"/>
<indexing>Index</indexing>
<dataHistory>Use</dataHistory>
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОписаниеПеременных
@@ -407,4 +415,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -53,7 +60,7 @@
Если Объект.Ссылка <> РодительПерсональныхГруппДоступа
И Объект.Наименование = НаименованиеПерсональныхГруппДоступа Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Это наименование зарезервировано.'"),
,
"Объект.Наименование",
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -51,8 +58,6 @@
Элементы.Профиль.Видимость = Ложь;
КонецЕсли;
СписокНедоступныхГрупп = Новый СписокЗначений;
Если НЕ Пользователи.ЭтоПолноправныйПользователь() Тогда
// Скрытие группы доступа Администраторы.
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
@@ -1,3 +1,10 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
@@ -61,7 +68,8 @@
КонецЕсли;
КонецЕсли;
ПользователиСлужебныйКлиентСервер.УстановитьДоступностьКнопкиЗаписатьИЗакрыть(ЭтотОбъект);
Элементы.ФормаЗаписатьИЗакрыть.Доступность = Не ТолькоПросмотр
И ПравоДоступа("Редактирование", Метаданные.Справочники.ГруппыДоступа);
КонецПроцедуры
@@ -71,7 +79,7 @@
Если ОтветНаВопросПриОткрытииФормы = "УстановитьТолькоПросмотр" Тогда
ОтветНаВопросПриОткрытииФормы = "";
ТолькоПросмотр = Истина;
ПользователиСлужебныйКлиентСервер.УстановитьДоступностьКнопкиЗаписатьИЗакрыть(ЭтотОбъект);
Элементы.ФормаЗаписатьИЗакрыть.Доступность = Ложь;
КонецЕсли;
Если ОтветНаВопросПриОткрытииФормы = "УстановитьПрофильАдминистратор" Тогда
@@ -595,7 +603,6 @@
&НаКлиенте
Процедура ПользователиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
ЕстьИзменения = Ложь;
Если РежимПодбора Тогда
ПользователиГруппы.ПолучитьЭлементы().Очистить();
КонецЕсли;
@@ -969,7 +976,7 @@
Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда
ТолькоПросмотр = Истина;
ПользователиСлужебныйКлиентСервер.УстановитьДоступностьКнопкиЗаписатьИЗакрыть(ЭтотОбъект);
Элементы.ФормаЗаписатьИЗакрыть.Доступность = Ложь;
КонецЕсли;
Иначе
Если ЗначениеЗаполнено(ТекущийОбъект.Пользователь) Тогда
@@ -1088,7 +1095,6 @@
ИначеЕсли ТипЗнч(СтрокаДерева.Пользователь) = Тип("СправочникСсылка.ГруппыВнешнихПользователей") Тогда
УдалитьГруппу = Ложь;
Для Каждого УчастникГруппы Из СтрокаДерева.ПолучитьЭлементы() Цикл
Если МассивТипов.Найти(ТипЗнч(УчастникГруппы.Пользователь.ОбъектАвторизации)) = Неопределено Тогда
@@ -1164,8 +1170,6 @@
ВидДоступа = Объект.ВидыДоступа[Индекс].ВидДоступа;
Отбор = Новый Структура("ВидДоступа", ВидДоступа);
СвойстваВидаДоступаВПрофиле = ВидыДоступаПрофиля.НайтиСтроки(Отбор);
СвойстваВидаДоступа = УправлениеДоступомСлужебный.СвойстваВидаДоступа(ВидДоступа);
Если СвойстваВидаДоступа = Неопределено
@@ -1208,10 +1212,6 @@
КонецЦикла;
КонецЕсли;
Если ИзменилсяСоставВидовДоступа Тогда
ТекущийВидДоступа = Неопределено;
КонецЕсли;
УправлениеДоступомСлужебныйКлиентСервер.ЗаполнитьСвойстваВидовДоступаВФорме(ЭтотОбъект);
КонецПроцедуры
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -151,8 +159,6 @@
Индекс = ВидыДоступаПрофиля.Количество() - 1;
Пока Индекс >= 0 Цикл
Строка = ВидыДоступаПрофиля[Индекс];
Отбор = Новый Структура("ВидДоступа", Строка.ВидДоступа);
СвойстваВидаДоступа = УправлениеДоступомСлужебный.СвойстваВидаДоступа(Строка.ВидДоступа);
Если СвойстваВидаДоступа = Неопределено Тогда
@@ -427,8 +433,7 @@
| И НЕ ГруппыДоступа.ЭтоГруппа";
РезультатЗапроса = Запрос.Выполнить();
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
Возврат РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Ссылка");
КонецФункции
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОписаниеПеременных
@@ -262,4 +270,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
@@ -54,4 +62,6 @@
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -1,3 +1,11 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте
Loaded 100 of 2063 files, more files were not shown because too many files have changed in this diff. Show more