1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-03-19 21:07:53 +02:00

Объекты из БСП 3.0.3.164.

Заново внедрил контактную информацию и свойства.
This commit is contained in:
Anton Ivanov 2020-01-07 14:10:45 +03:00
parent 20dc71d1c9
commit aa0d798d73
5207 changed files with 662396 additions and 805609 deletions

View File

@ -969,8 +969,8 @@
<ExtendedEdit>false</ExtendedEdit> <ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/> <MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/> <MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue> <FillFromFillingValue>true</FillFromFillingValue>
<FillValue xsi:type="xr:DesignTimeRef">Enum.СостоянияБизнесПроцессов.EmptyRef</FillValue> <FillValue xsi:type="xr:DesignTimeRef">Enum.СостоянияБизнесПроцессов.EnumValue.Активен</FillValue>
<FillChecking>DontCheck</FillChecking> <FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems> <ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/> <ChoiceParameterLinks/>

View File

@ -5,8 +5,7 @@
<p>Открывается по команде <strong>Задания</strong> в разделе <strong>Бизнес-процессы и задачи</strong>.</p> <p>Открывается по команде <strong>Задания</strong> в разделе <strong>Бизнес-процессы и задачи</strong>.</p>
<p>В списке выводится:</p> <p>В списке выводится:</p>
<ul><li><img src="CommonPicture.ВосклицательныйЗнакСерый"></img> - важность, принимает значения <strong>Обычная</strong> (по умолчанию), <strong>Низкая</strong>, <strong>Высокая</strong>. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выбираются соответствующие значения этого поля. <ul><li><img src="CommonPicture.ВосклицательныйЗнакСерый"></img> - важность, принимает значения <strong>Обычная</strong> (по умолчанию), <strong>Низкая</strong>, <strong>Высокая</strong>. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выбираются соответствующие значения этого поля.
</li><li><img src="CommonPicture.ЗнакСтопЧБ"></img> - остановленные бизнес-процессы в этой колонке обозначаются значком <img src="CommonPicture.ЗнакСтоп"></img>. Для того чтобы <strong>Остановить</strong> или <strong>Продолжить</strong> бизнес-процесс, воспользуйтесь соответствующими кнопками. </li><li><strong>Номер</strong> - номер проставляется программой автоматически, рядом с номером проставляется один из значков <img src="CommonPicture.СостоянияПроцессов"></img>, обозначающий состояние бизнес-процесса <strong>Задание</strong>.
</li><li><strong>Номер</strong> - номер проставляется программой автоматически, рядом с номером проставляется значок <img src="StdPicture.BusinessProcess"></img>, обозначающий вид бизнес-процесса <strong>Задание</strong>. Если бизнес-процесс не стартован, значок будет неактивным (серым).
</li><li><strong>Дата</strong> - дата и время создания бизнес-процесса <strong>Задание</strong>. </li><li><strong>Дата</strong> - дата и время создания бизнес-процесса <strong>Задание</strong>.
</li><li><strong>Задание</strong> - полное наименование. </li><li><strong>Задание</strong> - полное наименование.
</li><li><strong>Срок исполнения</strong> - дата и время, к которому <strong>Задание</strong> должно быть выполнено. </li><li><strong>Срок исполнения</strong> - дата и время, к которому <strong>Задание</strong> должно быть выполнено.
@ -15,5 +14,7 @@
<li>Программа автоматически отбирает задания по полю <strong>Автор</strong> для текущего <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a>. Можно отобрать задания по любому <strong>Автору</strong>, для этого выберите его из списка пользователей. <li>Программа автоматически отбирает задания по полю <strong>Автор</strong> для текущего <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a>. Можно отобрать задания по любому <strong>Автору</strong>, для этого выберите его из списка пользователей.
</li><li>Для отбора по полю <strong>Исполнитель</strong> также можно выбрать нужного из списка <a href="Catalog.Пользователи/Help">пользователей</a>, в случае ролевой адресации становится доступным список <a href="CommonForm.ВыборИсполнителяБизнесПроцесса/Help">исполнителей роли</a>.</li></a></ul><h3>Просмотр всех заданий</h3> </li><li>Для отбора по полю <strong>Исполнитель</strong> также можно выбрать нужного из списка <a href="Catalog.Пользователи/Help">пользователей</a>, в случае ролевой адресации становится доступным список <a href="CommonForm.ВыборИсполнителяБизнесПроцесса/Help">исполнителей роли</a>.</li></a></ul><h3>Просмотр всех заданий</h3>
<ul><li>Установите соответствующие флажки, для того чтобы <strong>Показывать завершенные </strong>и <strong>остановленные</strong> задания. По умолчанию флажки сняты.</li></ul><h3>Ввод нового задания</h3> <ul><li>Установите соответствующие флажки, для того чтобы <strong>Показывать завершенные </strong>и <strong>остановленные</strong> задания. По умолчанию флажки сняты.</li></ul><h3>Ввод нового задания</h3>
<ul><li>Нажмите <strong>Создать</strong>, заполните необходимые <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">поля</a>.</li></ul><h3>См. также: </h3> <ul><li>Нажмите <strong>Создать</strong>, заполните необходимые <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">поля</a>.</li></ul><h3>Управление движением бизнес-процесса</h3>
<ul><li>С помощью кнопки можно <strong>Остановить</strong> начатый бизнес-процесс.
</li><li>С помощью кнопки <strong>Продолжить</strong> в любой момент можно возобновить выполнение остановленного бизнес-процесса. </li></ul><h3>См. также: </h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>

View File

@ -1,16 +1,48 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
//////////////////////////////////////////////////////////////////////////////// #Область ДляВызоваИзДругихПодсистем
// Программный интерфейс для подсистемы бизнес-процессов и задач.
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые разрешается редактировать
// с помощью обработки группового изменения реквизитов.
//
// Возвращаемое значение:
// Массив - список имен реквизитов объекта.
Функция РеквизитыРедактируемыеВГрупповойОбработке() Экспорт
Результат = Новый Массив;
Результат.Добавить("Автор");
Результат.Добавить("Важность");
Результат.Добавить("Исполнитель");
Результат.Добавить("ПроверитьВыполнение");
Результат.Добавить("Проверяющий");
Результат.Добавить("СрокИсполнения");
Результат.Добавить("СрокПроверки");
Возврат Результат;
КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// СтандартныеПодсистемы.БизнесПроцессыИЗадачи
// Получить структуру с описанием формы выполнения задачи. // Получить структуру с описанием формы выполнения задачи.
// Вызывается при открытии формы выполнения задачи. // Вызывается при открытии формы выполнения задачи.
// //
// Параметры: // Параметры:
// ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя - задача. // ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя - задача.
// ТочкаМаршрутаБизнесПроцесса - точка маршрута. // ТочкаМаршрутаБизнесПроцесса - ТочкаМаршрутаБизнесПроцессаСсылка - точка маршрута.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Структура - структуру с описанием формы выполнения задачи. // Структура - структуру с описанием формы выполнения задачи.
@ -48,7 +80,7 @@
// Параметры: // Параметры:
// ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя - задача. // ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя - задача.
// БизнесПроцессСсылка - БизнесПроцессСсылка - бизнес-процесс, по которому сформирована задача ЗадачаСсылка. // БизнесПроцессСсылка - БизнесПроцессСсылка - бизнес-процесс, по которому сформирована задача ЗадачаСсылка.
// ТочкаМаршрутаБизнесПроцесса - точка маршрута. // ТочкаМаршрутаБизнесПроцесса - ТочкаМаршрутаБизнесПроцессаСсылка - точка маршрута.
// //
Процедура ОбработкаВыполненияПоУмолчанию(ЗадачаСсылка, БизнесПроцессСсылка, ТочкаМаршрутаБизнесПроцесса) Экспорт Процедура ОбработкаВыполненияПоУмолчанию(ЗадачаСсылка, БизнесПроцессСсылка, ТочкаМаршрутаБизнесПроцесса) Экспорт
@ -70,36 +102,167 @@
КонецПроцедуры КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// // Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи
// Групповое изменение объектов.
// Возвращает реквизиты объекта, которые разрешается редактировать // СтандартныеПодсистемы.УправлениеДоступом
// с помощью обработки группового изменения реквизитов.
// // См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
// Возвращаемое значение: Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
// Массив - список имен реквизитов объекта.
Функция РеквизитыРедактируемыеВГрупповойОбработке() Экспорт
Результат = Новый Массив; Ограничение.Текст =
Результат.Добавить("Автор"); "ПрисоединитьДополнительныеТаблицы
Результат.Добавить("Важность"); |ЭтотСписок КАК Задание
Результат.Добавить("Исполнитель"); |
Результат.Добавить("ПроверитьВыполнение"); |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИсполнителиЗадач КАК ИсполнителиЗадач
Результат.Добавить("Проверяющий"); |ПО
Результат.Добавить("СрокИсполнения"); | ИсполнителиЗадач.РольИсполнителя = Задание.Исполнитель
Результат.Добавить("СрокПроверки"); | И ИсполнителиЗадач.ОсновнойОбъектАдресации = Задание.ОсновнойОбъектАдресации
Возврат Результат; | И ИсполнителиЗадач.ДополнительныйОбъектАдресации = Задание.ДополнительныйОбъектАдресации
|
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИсполнителиЗадач КАК ПроверяющиеЗадач
|ПО
| ПроверяющиеЗадач.РольИсполнителя = Задание.Проверяющий
| И ПроверяющиеЗадач.ОсновнойОбъектАдресации = Задание.ОсновнойОбъектАдресацииПроверяющий
| И ПроверяющиеЗадач.ДополнительныйОбъектАдресации = Задание.ДополнительныйОбъектАдресацииПроверяющий
|;
|РазрешитьЧтение
|ГДЕ
| ЗначениеРазрешено(Автор)
| ИЛИ ЗначениеРазрешено(Исполнитель КРОМЕ Справочник.РолиИсполнителей)
| ИЛИ ЗначениеРазрешено(ИсполнителиЗадач.Исполнитель)
| ИЛИ ЗначениеРазрешено(Проверяющий КРОМЕ Справочник.РолиИсполнителей)
| ИЛИ ЗначениеРазрешено(ПроверяющиеЗадач.Исполнитель)
|;
|РазрешитьИзменениеЕслиРазрешеноЧтение
|ГДЕ
| ЗначениеРазрешено(Автор)";
КонецФункции КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
#КонецОбласти
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
////////////////////////////////////////////////////////////////////////////////
// Обработчики обновления
// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты,
// которые необходимо обновить на новую версию.
//
Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТаблицаСНаборамиЗначенийДоступа.Ссылка
|ИЗ
| %1 КАК ТаблицаСНаборамиЗначенийДоступа
|УПОРЯДОЧИТЬ ПО
| ТаблицаСНаборамиЗначенийДоступа.Дата УБЫВ";
Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Запрос.Текст, Метаданные.БизнесПроцессы.Задание.ПолноеИмя());
МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок);
КонецПроцедуры
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
БизнесПроцесс = Метаданные.БизнесПроцессы.Задание;
ИмяПроцедуры = "БизнесПроцессы.Задание.ОбработатьДанныеДляПереходаНаНовуюВерсию";
ПроблемныхОбъектов = 0;
ОбъектовОбработано = 0;
Задание = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "БизнесПроцесс.Задание");
Пока Задание.Следующий() Цикл
Попытка
ОбновитьНаборыЗначенийДоступаЗадания(Параметры, Задание.Ссылка);
ОбъектовОбработано = ОбъектовОбработано + 1;
Исключение
// Если не удалось обработать задание, повторяем попытку снова.
ПроблемныхОбъектов = ПроблемныхОбъектов + 1;
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось обновить права доступа для ""%1"" в обработчике ""%2"" по причине:
|%3'"),
Задание.Ссылка, ИмяПроцедуры, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение,
БизнесПроцесс, Задание.Ссылка, ТекстСообщения);
КонецПопытки;
КонецЦикла;
Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "БизнесПроцесс.Задание");
Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Процедуре ""%1"" не удалось обновить права доступа для некоторых объектов (пропущены): %2'"),
ИмяПроцедуры, ПроблемныхОбъектов);
ВызватьИсключение ТекстСообщения;
КонецЕсли;
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,
БизнесПроцесс,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ""%1"" обновила права доступа для очередной порции объектов: %2'"),
ИмяПроцедуры, ОбъектовОбработано));
КонецПроцедуры
Процедура ОбновитьНаборыЗначенийДоступаЗадания(Параметры, ЗаданиеСсылка)
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
НачатьТранзакцию();
Попытка
// Блокируем объект от изменения другими сеансами.
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("БизнесПроцесс.Задание");
ЭлементБлокировки.УстановитьЗначение("Ссылка", ЗаданиеСсылка);
Блокировка.Заблокировать();
ЗаданиеОбъект = ЗаданиеСсылка.ПолучитьОбъект();
Если ЗаданиеОбъект = Неопределено
Или ЗаданиеОбъект.ГруппаИсполнителейЗадач <> Справочники.ГруппыИсполнителейЗадач.ПустаяСсылка() Тогда
ОтменитьТранзакцию();
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЗаданиеСсылка);
Возврат;
КонецЕсли;
ЗаданиеОбъект.ГруппаИсполнителейЗадач = ?(ТипЗнч(ЗаданиеОбъект.Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей"),
БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(ЗаданиеОбъект.Исполнитель,
ЗаданиеОбъект.ОсновнойОбъектАдресации, ЗаданиеОбъект.ДополнительныйОбъектАдресации),
ЗаданиеОбъект.Исполнитель);
ЗаданиеОбъект.ГруппаИсполнителейЗадачПроверяющий = ?(ТипЗнч(ЗаданиеОбъект.Проверяющий) = Тип("СправочникСсылка.РолиИсполнителей"),
БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(ЗаданиеОбъект.Проверяющий,
ЗаданиеОбъект.ОсновнойОбъектАдресацииПроверяющий, ЗаданиеОбъект.ДополнительныйОбъектАдресацииПроверяющий),
ЗаданиеОбъект.Проверяющий);
МодульУправлениеДоступом.ОбновитьНаборыЗначенийДоступа(ЗаданиеОбъект);
Если ЗаданиеОбъект.Модифицированность() Тогда
ОбновлениеИнформационнойБазы.ЗаписатьДанные(ЗаданиеОбъект);
Иначе
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЗаданиеСсылка);
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Прочие
// Устанавливает состояние элементов формы задачи. // Устанавливает состояние элементов формы задачи.
Процедура УстановитьСостояниеЭлементовФормыЗадачи(Форма) Экспорт Процедура УстановитьСостояниеЭлементовФормыЗадачи(Форма) Экспорт
@ -113,11 +276,11 @@
КонецПроцедуры КонецПроцедуры
Функция РезультатВыполненияПриПеренаправлении(Знач ЗадачаСсылка) Функция РезультатВыполненияПриПеренаправлении(Знач ЗадачаСсылка)
СтрокаФормат = НСтр("ru = '%1, %2 перенаправил(а) задачу: СтрокаФормат = "%1, %2 " + НСтр("ru = 'перенаправил(а) задачу'") + ":
|%3 |%3
|'"); |";
Комментарий = СокрЛП(ЗадачаСсылка.РезультатВыполнения); Комментарий = СокрЛП(ЗадачаСсылка.РезультатВыполнения);
Комментарий = ?(ПустаяСтрока(Комментарий), "", Комментарий + Символы.ПС); Комментарий = ?(ПустаяСтрока(Комментарий), "", Комментарий + Символы.ПС);

View File

@ -1,118 +1,35 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
// СтандартныеПодсистемы.УправлениеДоступом // СтандартныеПодсистемы.УправлениеДоступом
// См. описание в комментарии к одноименной процедуре в модуле УправлениеДоступом. // См. УправлениеДоступом.ЗаполнитьНаборыЗначенийДоступа.
Процедура ЗаполнитьНаборыЗначенийДоступа(Таблица) Экспорт Процедура ЗаполнитьНаборыЗначенийДоступа(Таблица) Экспорт
// Логика ограничения для БизнесПроцессыИЗадачиПереопределяемый.ПриЗаполненииНаборовЗначенийДоступа(ЭтотОбъект, Таблица);
// - чтения: Автор ИЛИ Исполнитель (с учетом адресации) ИЛИ Проверяющий (с учетом адресации) ИЛИ Предмет
// - изменения: Автор.
// Если предмет не задан (т.е. бизнес-процесс без основания), Если Таблица.Количество() > 0 Тогда
// тогда предмет не участвует в логике ограничения. Возврат;
// Чтение, Изменение: набор № 1.
Строка = Таблица.Добавить();
Строка.НомерНабора = 1;
Строка.Чтение = Истина;
Строка.Изменение = Истина;
Строка.ЗначениеДоступа = Автор;
// Чтение: набор № 2.
Строка = Таблица.Добавить();
Строка.НомерНабора = 2;
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадач;
// Чтение: набор № 3.
Строка = Таблица.Добавить();
Строка.НомерНабора = 3;
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадачПроверяющий;
// Чтение: набор № 4.
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
Если ТипЗнч(Предмет) = Тип("СправочникСсылка.Пользователи") Тогда
Строка = Таблица.Добавить();
Строка.НомерНабора = 4;
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = Предмет;
ИначеЕсли ЗначениеЗаполнено(Предмет) И МодульУправлениеДоступом.ВозможноЗаполнитьНаборыЗначенийДоступа(Предмет) Тогда
НаборыГруппыДоступаИсполнителей = МодульУправлениеДоступом.ТаблицаНаборыЗначенийДоступа();
Строка = НаборыГруппыДоступаИсполнителей.Добавить();
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадач;
Строка = НаборыГруппыДоступаИсполнителей.Добавить();
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадачПроверяющий;
НаборыПредмета = МодульУправлениеДоступом.ТаблицаНаборыЗначенийДоступа();
МодульУправлениеДоступом.ЗаполнитьНаборыЗначенийДоступа(Предмет, НаборыПредмета, Ссылка);
НаборыПредмета = НаборыПредмета.Скопировать(НаборыПредмета.НайтиСтроки(Новый Структура("Чтение", Истина)));
МодульУправлениеДоступом.ДобавитьНаборыЗначенийДоступа(НаборыПредмета, НаборыГруппыДоступаИсполнителей, Истина);
МодульУправлениеДоступом.ДобавитьНаборыЗначенийДоступа(Таблица, НаборыПредмета);
КонецЕсли; КонецЕсли;
ЗаполнитьНаборыЗначенийДоступаПоУмолчанию(Таблица);
КонецПроцедуры КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом // Конец СтандартныеПодсистемы.УправлениеДоступом
// Актуализирует значения реквизит невыполненных задач #КонецОбласти
// согласно реквизитам бизнес-процесса Задание:
// Важность, СрокИсполнения, Наименование и Автор.
//
Процедура ИзменитьРеквизитыНевыполненныхЗадач() Экспорт
НачатьТранзакцию();
Попытка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Задача.ЗадачаИсполнителя");
ЭлементБлокировки.УстановитьЗначение("БизнесПроцесс", Ссылка);
Блокировка.Заблокировать();
Запрос = Новый Запрос(
"ВЫБРАТЬ
| Задачи.Ссылка КАК Ссылка
|ИЗ
| Задача.ЗадачаИсполнителя КАК Задачи
|ГДЕ
| Задачи.БизнесПроцесс = &БизнесПроцесс
| И Задачи.ПометкаУдаления = ЛОЖЬ
| И Задачи.Выполнена = ЛОЖЬ");
Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);
ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ЗадачаОбъект = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект();
ЗадачаОбъект.Важность = Важность;
ЗадачаОбъект.СрокИсполнения =
?(ЗадачаОбъект.ТочкаМаршрута = БизнесПроцессы.Задание.ТочкиМаршрута.Выполнить,
СрокИсполненияЗадачиДляВыполнения(), СрокИсполненияЗадачиДляПроверки());
ЗадачаОбъект.Наименование =
?(ЗадачаОбъект.ТочкаМаршрута = БизнесПроцессы.Задание.ТочкиМаршрута.Выполнить,
НаименованиеЗадачиДляВыполнения(), НаименованиеЗадачиДляПроверки());
ЗадачаОбъект.Автор = Автор;
// Не выполняем предварительную блокировку данных для редактирования, т.к.
// Это изменение имеет более высокий приоритет над открытыми формами задач.
ЗадачаОбъект.Записать();
КонецЦикла;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -133,44 +50,33 @@
БизнесПроцессыИЗадачиСервер.ПроверитьПраваНаИзменениеСостоянияБизнесПроцесса(ЭтотОбъект); БизнесПроцессыИЗадачиСервер.ПроверитьПраваНаИзменениеСостоянияБизнесПроцесса(ЭтотОбъект);
Если ЗначениеЗаполнено(ГлавнаяЗадача) Если ЗначениеЗаполнено(ГлавнаяЗадача)
И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ГлавнаяЗадача, "БизнесПроцесс") = ЭтотОбъект.Ссылка Тогда И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ГлавнаяЗадача, "БизнесПроцесс") = Ссылка Тогда
ВызватьИсключение НСтр("ru = 'Собственная задача бизнес-процесса не может быть указана как главная задача.'"); ВызватьИсключение НСтр("ru = 'Собственная задача бизнес-процесса не может быть указана как главная задача.'");
КонецЕсли; КонецЕсли;
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
ГруппаИсполнителейЗадач = ?(ТипЗнч(Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей"), ГруппаИсполнителейЗадач = ?(ТипЗнч(Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей"),
БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(Исполнитель, ОсновнойОбъектАдресации, ДополнительныйОбъектАдресации), БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(Исполнитель, ОсновнойОбъектАдресации, ДополнительныйОбъектАдресации),
Исполнитель); Исполнитель);
ГруппаИсполнителейЗадачПроверяющий = ?(ТипЗнч(Проверяющий) = Тип("СправочникСсылка.РолиИсполнителей"), ГруппаИсполнителейЗадачПроверяющий = ?(ТипЗнч(Проверяющий) = Тип("СправочникСсылка.РолиИсполнителей"),
БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(Проверяющий, ОсновнойОбъектАдресацииПроверяющий, ДополнительныйОбъектАдресацииПроверяющий), БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(Проверяющий, ОсновнойОбъектАдресацииПроверяющий, ДополнительныйОбъектАдресацииПроверяющий),
Проверяющий); Проверяющий);
УстановитьПривилегированныйРежим(Ложь); УстановитьПривилегированныйРежим(Ложь);
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если НЕ ЭтоНовый() И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, "Предмет") <> Предмет Тогда Если НЕ ЭтоНовый() И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, "Предмет") <> Предмет Тогда
ИзменитьПредметЗадач(); ИзменитьПредметЗадач();
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
Если ЭтоНовый() Тогда Если ЭтоНовый() Тогда
Автор = Пользователи.АвторизованныйПользователь(); Автор = Пользователи.АвторизованныйПользователь();
Важность = Перечисления.ВариантыВажностиЗадачи.Обычная;
НаПроверке = Истина;
Проверяющий = Пользователи.АвторизованныйПользователь(); Проверяющий = Пользователи.АвторизованныйПользователь();
Состояние = Перечисления.СостоянияБизнесПроцессов.Активен;
Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Пользователи") Тогда Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Пользователи") Тогда
Исполнитель = ДанныеЗаполнения; Исполнитель = ДанныеЗаполнения;
Иначе Иначе
@ -316,6 +222,54 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
// Актуализирует значения реквизит невыполненных задач
// согласно реквизитам бизнес-процесса Задание:
// Важность, СрокИсполнения, Наименование и Автор.
//
Процедура ИзменитьРеквизитыНевыполненныхЗадач() Экспорт
НачатьТранзакцию();
Попытка
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Задача.ЗадачаИсполнителя");
ЭлементБлокировки.УстановитьЗначение("БизнесПроцесс", Ссылка);
Блокировка.Заблокировать();
Запрос = Новый Запрос(
"ВЫБРАТЬ
| Задачи.Ссылка КАК Ссылка
|ИЗ
| Задача.ЗадачаИсполнителя КАК Задачи
|ГДЕ
| Задачи.БизнесПроцесс = &БизнесПроцесс
| И Задачи.ПометкаУдаления = ЛОЖЬ
| И Задачи.Выполнена = ЛОЖЬ");
Запрос.УстановитьПараметр("БизнесПроцесс", Ссылка);
ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ЗадачаОбъект = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект();
ЗадачаОбъект.Важность = Важность;
ЗадачаОбъект.СрокИсполнения =
?(ЗадачаОбъект.ТочкаМаршрута = БизнесПроцессы.Задание.ТочкиМаршрута.Выполнить,
СрокИсполненияЗадачиДляВыполнения(), СрокИсполненияЗадачиДляПроверки());
ЗадачаОбъект.Наименование =
?(ЗадачаОбъект.ТочкаМаршрута = БизнесПроцессы.Задание.ТочкиМаршрута.Выполнить,
НаименованиеЗадачиДляВыполнения(), НаименованиеЗадачиДляПроверки());
ЗадачаОбъект.Автор = Автор;
// Не выполняем предварительную блокировку данных для редактирования, т.к.
// Это изменение имеет более высокий приоритет над открытыми формами задач.
ЗадачаОбъект.Записать();
КонецЦикла;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
Процедура ИзменитьПредметЗадач() Процедура ИзменитьПредметЗадач()
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
@ -379,12 +333,12 @@
Функция РезультатВыполненияТочкиВыполнить(Знач ЗадачаСсылка) Функция РезультатВыполненияТочкиВыполнить(Знач ЗадачаСсылка)
СтрокаФормат = ?(Выполнено, СтрокаФормат = ?(Выполнено,
НСтр("ru = '%1, %2 выполнил(а) задачу: "%1, %2 " + НСтр("ru = 'выполнил(а) задачу'") + ":
|%3 |%3
|'"), |",
НСтр("ru = '%1, %2 отклонил(а) задачу: "%1, %2 " + НСтр("ru = 'отклонил(а) задачу'") + ":
|%3 |%3
|'")); |");
ЗадачаДанные = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЗадачаСсылка, ЗадачаДанные = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЗадачаСсылка,
"РезультатВыполнения,ДатаИсполнения,Исполнитель"); "РезультатВыполнения,ДатаИсполнения,Исполнитель");
Комментарий = СокрЛП(ЗадачаДанные.РезультатВыполнения); Комментарий = СокрЛП(ЗадачаДанные.РезультатВыполнения);
@ -394,20 +348,20 @@
КонецФункции КонецФункции
Функция РезультатВыполненияТочкиПроверить(Знач ЗадачаСсылка) Функция РезультатВыполненияТочкиПроверить(Знач ЗадачаСсылка)
Если НЕ Подтверждено Тогда Если НЕ Подтверждено Тогда
СтрокаФормат = НСтр("ru = '%1, %2 вернул(а) задачу на доработку: СтрокаФормат = "%1, %2 " + НСтр("ru = 'вернул(а) задачу на доработку'") + ":
|%3 |%3
|'"); |";
Иначе Иначе
СтрокаФормат = ?(Выполнено, СтрокаФормат = ?(Выполнено,
НСтр("ru = '%1, %2 подтвердил(а) выполнение задачи: "%1, %2 " + НСтр("ru = 'подтвердил(а) выполнение задачи'") + ":
|%3 |%3
|'"), |",
НСтр("ru = '%1, %2 подтвердил(а) отмену задачи: "%1, %2 " + НСтр("ru = 'подтвердил(а) отмену задачи'") + ":
|%3 |%3
|'")); |");
КонецЕсли; КонецЕсли;
ЗадачаДанные = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЗадачаСсылка, ЗадачаДанные = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЗадачаСсылка,
@ -419,6 +373,37 @@
КонецФункции КонецФункции
Процедура ЗаполнитьНаборыЗначенийДоступаПоУмолчанию(Таблица)
// Логика ограничения по умолчанию для
// - чтения: Автор ИЛИ Исполнитель (с учетом адресации) ИЛИ Проверяющий (с учетом адресации)
// - изменения: Автор.
// Если предмет не задан (т.е. бизнес-процесс без основания), тогда предмет не участвует в логике ограничения.
// Чтение, Изменение: набор № 1.
Строка = Таблица.Добавить();
Строка.НомерНабора = 1;
Строка.Чтение = Истина;
Строка.Изменение = Истина;
Строка.ЗначениеДоступа = Автор;
// Чтение: набор № 2.
Строка = Таблица.Добавить();
Строка.НомерНабора = 2;
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадач;
// Чтение: набор № 3.
Строка = Таблица.Добавить();
Строка.НомерНабора = 3;
Строка.Чтение = Истина;
Строка.ЗначениеДоступа = ГруппаИсполнителейЗадачПроверяющий;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли #КонецЕсли

View File

@ -19,6 +19,12 @@
<ExtendedTooltip name="ЗаписатьИЗакрытьExtendedTooltip" id="166"/> <ExtendedTooltip name="ЗаписатьИЗакрытьExtendedTooltip" id="166"/>
</Button> </Button>
<ButtonGroup name="ОсновнаяКоманднаяПанель" id="1"> <ButtonGroup name="ОсновнаяКоманднаяПанель" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основная командная панель</v8:content>
</v8:item>
</Title>
<CommandSource>Form</CommandSource> <CommandSource>Form</CommandSource>
<ExtendedTooltip name="ОсновнаяКоманднаяПанельExtendedTooltip" id="167"/> <ExtendedTooltip name="ОсновнаяКоманднаяПанельExtendedTooltip" id="167"/>
</ButtonGroup> </ButtonGroup>
@ -49,6 +55,7 @@
</ChildItems> </ChildItems>
</AutoCommandBar> </AutoCommandBar>
<Events> <Events>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="NotificationProcessing">ОбработкаОповещения</Event> <Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event> <Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
@ -56,385 +63,416 @@
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event> <Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаСостояние" id="131"> <UsualGroup name="Документ" id="207">
<HorizontalStretch>true</HorizontalStretch>
<VerticalStretch>false</VerticalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="172"/>
</UsualGroup>
<UsualGroup name="Шапка" id="154">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Шапка</v8:content> <v8:content>Документ</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<HorizontalStretch>false</HorizontalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>NormalSeparation</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ШапкаExtendedTooltip" id="173"/> <ExtendedTooltip name="ДокументРасширеннаяПодсказка" id="208"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппыШапки" id="165"> <UsualGroup name="Шапка" id="154">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группы шапки</v8:content> <v8:content>Шапка</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Horizontal</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппыШапкиExtendedTooltip" id="174"/> <ExtendedTooltip name="ШапкаExtendedTooltip" id="173"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаАвторИсполнитель" id="160"> <UsualGroup name="ГруппыШапки" id="165">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Автор и исполнитель</v8:content> <v8:content>Группы шапки</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаАвторИсполнительExtendedTooltip" id="175"/> <ExtendedTooltip name="ГруппыШапкиExtendedTooltip" id="174"/>
<ChildItems> <ChildItems>
<InputField name="Автор" id="161"> <UsualGroup name="ГруппаАвторИсполнитель" id="160">
<DataPath>Объект.Автор</DataPath> <Title>
<ReadOnly>true</ReadOnly> <v8:item>
<Width>35</Width> <v8:lang>ru</v8:lang>
<ContextMenu name="АвторКонтекстноеМеню" id="162"/> <v8:content>Автор исполнитель</v8:content>
<ExtendedTooltip name="АвторExtendedTooltip" id="176"/> </v8:item>
</InputField> </Title>
<InputField name="Исполнитель" id="163"> <Group>Vertical</Group>
<DataPath>Исполнитель</DataPath> <Representation>None</Representation>
<ReadOnly>true</ReadOnly> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаАвторИсполнительExtendedTooltip" id="175"/>
<ChildItems>
<InputField name="Автор" id="161">
<DataPath>Объект.Автор</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="АвторКонтекстноеМеню" id="162"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="176"/>
</InputField>
<InputField name="Исполнитель" id="163">
<DataPath>Исполнитель</DataPath>
<ReadOnly>true</ReadOnly>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Исполнитель</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<DropListButton>false</DropListButton>
<ChoiceButton>true</ChoiceButton>
<ChoiceButtonRepresentation>ShowInInputField</ChoiceButtonRepresentation>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="164"/>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="177"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаДатаИСрок" id="109">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата и срок</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаДатаИСрокExtendedTooltip" id="178"/>
<ChildItems>
<InputField name="Дата" id="152">
<DataPath>Объект.Date</DataPath>
<ReadOnly>true</ReadOnly>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="ДатаКонтекстноеМеню" id="153"/>
<ExtendedTooltip name="ДатаExtendedTooltip" id="179"/>
</InputField>
<InputField name="СрокИсполнения" id="12">
<DataPath>Объект.СрокИсполнения</DataPath>
<ReadOnly>true</ReadOnly>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="180"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаНомерИВажность" id="28">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер и важность</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНомерИВажностьExtendedTooltip" id="181"/>
<ChildItems>
<InputField name="Номер" id="149">
<DataPath>Объект.Number</DataPath>
<Width>14</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="150"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="182"/>
</InputField>
<InputField name="Важность" id="16">
<DataPath>Объект.Важность</DataPath>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>14</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="183"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаПриоритет" id="155">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Приоритет</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПриоритетExtendedTooltip" id="184"/>
<ChildItems>
<InputField name="СрокНачалаИсполнения" id="119">
<DataPath>Объект.ДатаНачала</DataPath>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Исполнитель</v8:content> <v8:content>Срок начала исполнения</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>35</Width>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="164"/>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="177"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаДатаИСрок" id="109">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата и срок</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаДатаИСрокExtendedTooltip" id="178"/>
<ChildItems>
<InputField name="Дата" id="152">
<DataPath>Объект.Date</DataPath>
<ReadOnly>true</ReadOnly>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="ДатаКонтекстноеМеню" id="153"/>
<ExtendedTooltip name="ДатаExtendedTooltip" id="179"/>
</InputField>
<InputField name="СрокИсполнения" id="12">
<DataPath>Объект.СрокИсполнения</DataPath>
<ReadOnly>true</ReadOnly>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="180"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаНомерИВажность" id="28">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер и важность</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<HorizontalStretch>true</HorizontalStretch>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНомерИВажностьExtendedTooltip" id="181"/>
<ChildItems>
<InputField name="Номер" id="149">
<DataPath>Объект.Number</DataPath>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="150"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="182"/>
</InputField>
<InputField name="Важность" id="16">
<DataPath>Объект.Важность</DataPath>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width> <Width>10</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap> <Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="17"/> <EditFormat>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="183"/> <v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияКонтекстноеМеню" id="120"/>
<ExtendedTooltip name="СрокНачалаИсполненияExtendedTooltip" id="185"/>
<Events>
<Event name="OnChange">СрокНачалаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокНачалаИсполненияВремя" id="135">
<DataPath>Объект.ДатаНачала</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияВремяКонтекстноеМеню" id="136"/>
<ExtendedTooltip name="СрокНачалаИсполненияВремяExtendedTooltip" id="186"/>
</InputField> </InputField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<UsualGroup name="ГруппаПриоритет" id="155"> <Pages name="Страницы" id="201">
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПриоритетExtendedTooltip" id="184"/>
<ChildItems>
<InputField name="СрокНачалаИсполнения" id="119">
<DataPath>Объект.ДатаНачала</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияКонтекстноеМеню" id="120"/>
<ExtendedTooltip name="СрокНачалаИсполненияExtendedTooltip" id="185"/>
<Events>
<Event name="OnChange">СрокНачалаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокНачалаИсполненияВремя" id="135">
<DataPath>Объект.ДатаНачала</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияВремяКонтекстноеМеню" id="136"/>
<ExtendedTooltip name="СрокНачалаИсполненияВремяExtendedTooltip" id="186"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<Pages name="Страницы" id="201">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Страницы</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СтраницыРасширеннаяПодсказка" id="202"/>
<ChildItems>
<Page name="Главное" id="203">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Главное</v8:content> <v8:content>Страницы</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ExtendedTooltip name="ГлавноеРасширеннаяПодсказка" id="204"/> <ExtendedTooltip name="СтраницыРасширеннаяПодсказка" id="202"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаСодержание" id="94"> <Page name="Главное" id="203">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content> <v8:content>Главное</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/> <ExtendedTooltip name="ГлавноеРасширеннаяПодсказка" id="204"/>
<Group>Vertical</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="187"/>
<ChildItems> <ChildItems>
<InputField name="Наименование" id="156"> <UsualGroup name="ГруппаСодержание" id="94">
<DataPath>Объект.Description</DataPath> <Title>
<ReadOnly>true</ReadOnly> <v8:item>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="157"/> <v8:lang>ru</v8:lang>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="188"/> <v8:content>Содержание</v8:content>
</InputField> </v8:item>
<LabelField name="Предмет" id="129"> </Title>
<DataPath>ПредметСтрокой</DataPath> <TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<Hiperlink>true</Hiperlink> <Group>Vertical</Group>
<ContextMenu name="ПредметКонтекстноеМеню" id="130"/> <Representation>NormalSeparation</Representation>
<ExtendedTooltip name="ПредметExtendedTooltip" id="189"/> <ShowTitle>false</ShowTitle>
<Events> <ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="187"/>
<Event name="Click">ПредметНажатие</Event> <ChildItems>
</Events> <InputField name="Наименование" id="156">
</LabelField> <DataPath>Объект.Description</DataPath>
<InputField name="Содержание" id="18"> <ReadOnly>true</ReadOnly>
<DataPath>ЗаданиеСодержание</DataPath> <AutoMaxWidth>false</AutoMaxWidth>
<ReadOnly>true</ReadOnly> <ContextMenu name="НаименованиеКонтекстноеМеню" id="157"/>
<TitleLocation>None</TitleLocation> <ExtendedTooltip name="НаименованиеExtendedTooltip" id="188"/>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> </InputField>
<Height>5</Height> <LabelField name="Предмет" id="129">
<MultiLine>true</MultiLine> <DataPath>ПредметСтрокой</DataPath>
<ExtendedEdit>true</ExtendedEdit> <Width>60</Width>
<BorderColor>style:BorderColor</BorderColor> <Hiperlink>true</Hiperlink>
<ContextMenu name="СодержаниеКонтекстноеМеню" id="19"/> <ContextMenu name="ПредметКонтекстноеМеню" id="130"/>
<ExtendedTooltip name="СодержаниеExtendedTooltip" id="190"/> <ExtendedTooltip name="ПредметExtendedTooltip" id="189"/>
</InputField> <Events>
<Event name="Click">ПредметНажатие</Event>
</Events>
</LabelField>
<InputField name="Содержание" id="18">
<DataPath>ЗаданиеСодержание</DataPath>
<ReadOnly>true</ReadOnly>
<TitleLocation>None</TitleLocation>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<AutoMaxWidth>false</AutoMaxWidth>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СодержаниеКонтекстноеМеню" id="19"/>
<ExtendedTooltip name="СодержаниеExtendedTooltip" id="190"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </Page>
</ChildItems> <Page name="ИсторияВыполнения" id="205">
</Page>
<Page name="ИсторияВыполнения" id="205">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ИсторияВыполненияРасширеннаяПодсказка" id="206"/>
<ChildItems>
<InputField name="РезультатВыполнения" id="126">
<DataPath>ЗаданиеРезультатВыполнения</DataPath>
<ReadOnly>true</ReadOnly>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content> <v8:content>История выполнения</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleLocation>None</TitleLocation> <ExtendedTooltip name="ИсторияВыполненияРасширеннаяПодсказка" id="206"/>
<MultiLine>true</MultiLine> <ChildItems>
<ExtendedEdit>true</ExtendedEdit> <InputField name="РезультатВыполнения" id="126">
<ContextMenu name="РезультатВыполненияКонтекстноеМеню" id="127"/> <DataPath>ЗаданиеРезультатВыполнения</DataPath>
<ExtendedTooltip name="РезультатВыполненияExtendedTooltip" id="191"/> <ReadOnly>true</ReadOnly>
</InputField> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<ContextMenu name="РезультатВыполненияКонтекстноеМеню" id="127"/>
<ExtendedTooltip name="РезультатВыполненияExtendedTooltip" id="191"/>
</InputField>
</ChildItems>
</Page>
</ChildItems> </ChildItems>
</Page> </Pages>
</ChildItems> <UsualGroup name="ГруппаСостояние" id="131">
</Pages> <Title>
<UsualGroup name="ГруппаРезультат" id="27">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Результат выполнения задания:</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation>
<ExtendedTooltip name="ГруппаРезультатExtendedTooltip" id="192"/>
<ChildItems>
<InputField name="ОписаниеРезультата" id="78">
<DataPath>Объект.РезультатВыполнения</DataPath>
<DefaultItem>true</DefaultItem>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Описание результата выполнения</v8:content> <v8:content>Состояние</v8:content>
</v8:item> </v8:item>
</ToolTip> </Title>
<Height>2</Height> <HorizontalStretch>true</HorizontalStretch>
<VerticalStretch>false</VerticalStretch> <Representation>NormalSeparation</Representation>
<ContextMenu name="ОписаниеРезультатаКонтекстноеМеню" id="79"/>
<ExtendedTooltip name="ОписаниеРезультатаExtendedTooltip" id="193"/>
</InputField>
<UsualGroup name="ГруппаВыполненоДата" id="54">
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаВыполненоДатаExtendedTooltip" id="194"/> <ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="172"/>
</UsualGroup>
<UsualGroup name="ГруппаРезультат" id="27">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Результат выполнения задания:</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation>
<ExtendedTooltip name="ГруппаРезультатExtendedTooltip" id="192"/>
<ChildItems> <ChildItems>
<Button name="Выполнено" id="123"> <InputField name="ОписаниеРезультата" id="78">
<Type>UsualButton</Type> <DataPath>Объект.РезультатВыполнения</DataPath>
<Representation>PictureAndText</Representation> <DefaultItem>true</DefaultItem>
<SkipOnInput>false</SkipOnInput>
<Height>1</Height>
<CommandName>Form.Command.Выполнено</CommandName>
<ExtendedTooltip name="ВыполненоExtendedTooltip" id="195"/>
</Button>
<Button name="Отклонено" id="137">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<SkipOnInput>false</SkipOnInput>
<Height>1</Height>
<CommandName>Form.Command.Отменено</CommandName>
<Picture>
<xr:Ref>StdPicture.Stop</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<ExtendedTooltip name="ОтклоненоExtendedTooltip" id="196"/>
</Button>
<InputField name="ДатаИсполнения" id="55">
<DataPath>Объект.ДатаИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата</v8:content>
</v8:item>
</Title>
<Width>10</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ДатаИсполненияКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="ДатаИсполненияExtendedTooltip" id="197"/>
<Events>
<Event name="OnChange">ДатаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="ДатаИсполненияВремя" id="146">
<DataPath>Объект.ДатаИсполнения</DataPath>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content> <v8:content>Описание результата выполнения</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Width>8</Width> <AutoMaxWidth>false</AutoMaxWidth>
<Wrap>false</Wrap> <ContextMenu name="ОписаниеРезультатаКонтекстноеМеню" id="79"/>
<ChoiceButton>false</ChoiceButton> <ExtendedTooltip name="ОписаниеРезультатаExtendedTooltip" id="193"/>
<EditFormat> </InputField>
<UsualGroup name="ГруппаВыполненоДата" id="54">
<Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content> <v8:content>Выполнено дата</v8:content>
</v8:item> </v8:item>
</EditFormat> </Title>
<ContextMenu name="ДатаИсполненияВремяКонтекстноеМеню" id="147"/> <Representation>None</Representation>
<ExtendedTooltip name="ДатаИсполненияВремяExtendedTooltip" id="198"/> <ShowTitle>false</ShowTitle>
</InputField> <ExtendedTooltip name="ГруппаВыполненоДатаExtendedTooltip" id="194"/>
<Button name="ИзменитьЗадание" id="199"> <ChildItems>
<Type>Hyperlink</Type> <Button name="Выполнено" id="123">
<CommandName>Form.Command.ИзменитьЗадание</CommandName> <Type>UsualButton</Type>
<ExtendedTooltip name="ИзменитьЗаданиеРасширеннаяПодсказка" id="200"/> <Representation>PictureAndText</Representation>
</Button> <SkipOnInput>false</SkipOnInput>
<Height>1</Height>
<CommandName>Form.Command.Выполнено</CommandName>
<ExtendedTooltip name="ВыполненоExtendedTooltip" id="195"/>
</Button>
<Button name="Отклонено" id="137">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<SkipOnInput>false</SkipOnInput>
<Height>1</Height>
<CommandName>Form.Command.Отменено</CommandName>
<Picture>
<xr:Ref>StdPicture.Stop</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<ExtendedTooltip name="ОтклоненоExtendedTooltip" id="196"/>
</Button>
<InputField name="ДатаИсполнения" id="55">
<DataPath>Объект.ДатаИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата</v8:content>
</v8:item>
</Title>
<Width>10</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ДатаИсполненияКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="ДатаИсполненияExtendedTooltip" id="197"/>
<Events>
<Event name="OnChange">ДатаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="ДатаИсполненияВремя" id="146">
<DataPath>Объект.ДатаИсполнения</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ДатаИсполненияВремяКонтекстноеМеню" id="147"/>
<ExtendedTooltip name="ДатаИсполненияВремяExtendedTooltip" id="198"/>
</InputField>
<Button name="ИзменитьЗадание" id="199">
<Type>Hyperlink</Type>
<CommandName>Form.Command.ИзменитьЗадание</CommandName>
<ExtendedTooltip name="ИзменитьЗаданиеРасширеннаяПодсказка" id="200"/>
</Button>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
@ -449,12 +487,6 @@
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="НачальныйПризнакВыполнения" id="2"> <Attribute name="НачальныйПризнакВыполнения" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Начальный признак выполнения</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -475,23 +507,11 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ТекущийПользователь" id="5"> <Attribute name="ТекущийПользователь" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущий пользователь</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type> <v8:Type>cfg:CatalogRef.Пользователи</v8:Type>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ЗаданиеВыполнено" id="7"> <Attribute name="ЗаданиеВыполнено" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выполнено</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -575,7 +595,6 @@
<xr:LoadTransparent>true</xr:LoadTransparent> <xr:LoadTransparent>true</xr:LoadTransparent>
</Picture> </Picture>
<Action>ВыполненоВыполнить</Action> <Action>ВыполненоВыполнить</Action>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="Отменено" id="2"> <Command name="Отменено" id="2">
@ -592,7 +611,6 @@
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Action>Отменено</Action> <Action>Отменено</Action>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="Дополнительно" id="4"> <Command name="Дополнительно" id="4">

View File

@ -1,13 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
// Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере. // Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере.
// Для существующего - в ПриЧтенииНаСервере. // Для существующего - в ПриЧтенииНаСервере.
Если Объект.Ссылка.Пустая() Тогда Если Объект.Ссылка.Пустая() Тогда
@ -16,6 +19,16 @@
ТекущийПользователь = Пользователи.ТекущийПользователь(); ТекущийПользователь = Пользователи.ТекущийПользователь();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ПараметрыГиперссылки = МодульРаботаСФайлами.ГиперссылкаФайлов();
ПараметрыГиперссылки.Размещение = "КоманднаяПанель";
ПараметрыГиперссылки.Владелец = "Объект.БизнесПроцесс";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -23,6 +36,13 @@
БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект); БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект);
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -34,7 +54,7 @@
КонецЕсли; КонецЕсли;
Если НЕ ЗаданиеВыполнено И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда Если НЕ ЗаданиеВыполнено И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача отклоняется.'"),, НСтр("ru = 'Укажите причину, по которой задача отклоняется.'"),,
"Объект.РезультатВыполнения",, "Объект.РезультатВыполнения",,
Отказ); Отказ);
@ -57,6 +77,13 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -64,6 +91,25 @@
ИнициализацияФормы(); ИнициализацияФормы();
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -103,6 +149,40 @@
КонецПроцедуры КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
@ -152,6 +232,18 @@
КонецПроцедуры КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@ -160,22 +252,30 @@
Процедура ИнициализацияФормы() Процедура ИнициализацияФормы()
НачальныйПризнакВыполнения = Объект.Выполнена; НачальныйПризнакВыполнения = Объект.Выполнена;
ПрочитатьРеквизитыБизнесПроцесса(); ПрочитатьРеквизитыБизнесПроцесса();
УстановитьСостояниеЭлементов(); УстановитьСостояниеЭлементов();
ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач");
Элементы.СрокНачалаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; Элементы.СрокНачалаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач;
Элементы.ДатаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; Элементы.ДатаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач;
БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.СрокИсполнения); БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.СрокИсполнения);
БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.Дата); БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.Дата);
БизнесПроцессыИЗадачиСервер.ФормаЗадачиПриСозданииНаСервере(ЭтотОбъект, Объект, БизнесПроцессыИЗадачиСервер.ФормаЗадачиПриСозданииНаСервере(ЭтотОбъект, Объект,
Элементы.ГруппаСостояние, Элементы.ДатаИсполнения); Элементы.ГруппаСостояние, Элементы.ДатаИсполнения);
Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена; Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена;
Элементы.ИзменитьЗадание.Видимость = (Объект.Автор = Пользователи.ТекущийПользователь()); Элементы.ИзменитьЗадание.Видимость = (Объект.Автор = Пользователи.ТекущийПользователь());
Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя); Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя);
Если ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание) Тогда
Элементы.Выполнено.Доступность = Истина;
Элементы.Отклонено.Доступность = Истина;
Иначе
Элементы.Выполнено.Доступность = Ложь;
Элементы.Отклонено.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере

View File

@ -9,7 +9,7 @@
</li><li>Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующее значение этого поля. </li></ul><h3>Дата начала выполнения</h3> </li><li>Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующее значение этого поля. </li></ul><h3>Дата начала выполнения</h3>
<ul><li>В поле <strong>Дата начала</strong> можно проставить дату и время, когда задание начало выполняться. Для того чтобы это поле было доступно, в разделе <strong>Администрирование - Органайзер</strong> необходимо установить флажок <strong>Дата начала задач</strong>. По данному полю можно будет затем сортировать задачи в списках.</li></ul><h3>Принятие к исполнению</h3> <ul><li>В поле <strong>Дата начала</strong> можно проставить дату и время, когда задание начало выполняться. Для того чтобы это поле было доступно, в разделе <strong>Администрирование - Органайзер</strong> необходимо установить флажок <strong>Дата начала задач</strong>. По данному полю можно будет затем сортировать задачи в списках.</li></ul><h3>Принятие к исполнению</h3>
<ul><li> <ul><li>
<div>Задача, непринятая к исполнению, в списках выделяется жирным шрифтом. Выполните соответствующую команду меню <strong>Еще</strong>, для того чтобы <strong>Принять  к исполнению</strong> задачу. После этого задача исчезает из списков задач других исполнителей, назначенных на ту же роль.</div> <div>Задача, непринятая к исполнению, в списках выделяется жирным шрифтом. Выполните соответствующую команду меню <strong>Еще</strong>, для того чтобы <strong>Принятьк исполнению</strong> задачу. После этого задача исчезает из списков задач других исполнителей, назначенных на ту же роль.</div>
</li><li> </li><li>
<div>С помощью соответствующей команды меню <strong>Еще</strong> можно <strong>Отменить принятие к исполнению</strong>.</div></li></ul><h3>Выполнение задания</h3> <div>С помощью соответствующей команды меню <strong>Еще</strong> можно <strong>Отменить принятие к исполнению</strong>.</div></li></ul><h3>Выполнение задания</h3>
<ul><li>Задачи могут быть без проверки выполнения. В этом случае проверяющим является сам исполнитель. <ul><li>Задачи могут быть без проверки выполнения. В этом случае проверяющим является сам исполнитель.
@ -29,7 +29,7 @@
<div>Для того чтобы запустить один бизнес-процесс на основании другого, в задаче родительского бизнес-процесса выполните команду <strong>Создать на основании</strong>, из списка выберите вид бизнес-процесса, например, <strong>Задание</strong>. Заполните необходимые <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">поля</a>.</div></li></ul><h3>Напоминание</h3> <div>Для того чтобы запустить один бизнес-процесс на основании другого, в задаче родительского бизнес-процесса выполните команду <strong>Создать на основании</strong>, из списка выберите вид бизнес-процесса, например, <strong>Задание</strong>. Заполните необходимые <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">поля</a>.</div></li></ul><h3>Напоминание</h3>
<ul><li> <ul><li>
<div>Для того чтобы не забыть выполнить задачу, нажмите <img src="CommonPicture.Напоминание"></img> <strong>Напомнить</strong>, заполните необходимые <a href="InformationRegister.НапоминанияПользователя.Form.Напоминание/Help">поля</a>. <a name="СтандартныеПодсистемы.НапоминанияПользователя">В указанный момент времени программа выведет </a><a href="InformationRegister.НапоминанияПользователя.Form.ФормаОповещения/Help">напоминание</a> на экран.</div></li></ul><h3>Изменение задания</h3> <div>Для того чтобы не забыть выполнить задачу, нажмите <img src="CommonPicture.Напоминание"></img> <strong>Напомнить</strong>, заполните необходимые <a href="InformationRegister.НапоминанияПользователя.Form.Напоминание/Help">поля</a>. <a name="СтандартныеПодсистемы.НапоминанияПользователя">В указанный момент времени программа выведет </a><a href="InformationRegister.НапоминанияПользователя.Form.ФормаОповещения/Help">напоминание</a> на экран.</div></li></ul><h3>Изменение задания</h3>
<ul><li>С помощью ссылки <strong>Изменить задание</strong> можно открыть задание и переработать его (при наличии соответствующих прав). В этом случае задание снова будет направлено исполнителю. </li></ul><h3>Дополнительные сведения о задаче</h3> <ul><li>С помощью ссылки <strong>Изменить задание</strong> можно открыть задание и переработать его (при наличии прав доступа). В этом случае задание снова будет направлено исполнителю. </li></ul><h3>Дополнительные сведения о задаче</h3>
<ul><li> <ul><li>
<div>Для просмотра <a href="Task.ЗадачаИсполнителя.Form.Дополнительно/Help">дополнительной информации</a> о задаче выполните команду <strong>Еще</strong> <strong>- Дополнительно</strong>.</div></li></ul><h3>См. также:</h3> <div>Для просмотра <a href="Task.ЗадачаИсполнителя.Form.Дополнительно/Help">дополнительной информации</a> о задаче выполните команду <strong>Еще</strong> <strong>- Дополнительно</strong>.</div></li></ul><h3>См. также:</h3>
<ul><li> <ul><li>

View File

@ -18,17 +18,33 @@
<CommandName>Form.Command.ЗаписатьИЗакрыть</CommandName> <CommandName>Form.Command.ЗаписатьИЗакрыть</CommandName>
<ExtendedTooltip name="ЗаписатьИЗакрытьExtendedTooltip" id="187"/> <ExtendedTooltip name="ЗаписатьИЗакрытьExtendedTooltip" id="187"/>
</Button> </Button>
<ButtonGroup name="ОсновнаяКоманднаяПанель" id="1"> <Button name="ФормаЗаписать" id="228">
<CommandSource>Form</CommandSource> <Type>CommandBarButton</Type>
<ExtendedTooltip name="ОсновнаяКоманднаяПанельExtendedTooltip" id="188"/> <Representation>Picture</Representation>
</ButtonGroup> <CommandName>Form.StandardCommand.Write</CommandName>
<ExtendedTooltip name="ФормаЗаписатьРасширеннаяПодсказка" id="229"/>
</Button>
<Button name="ФормаВыполнено" id="230">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.Выполнено</CommandName>
<ExtendedTooltip name="ФормаВыполненоРасширеннаяПодсказка" id="231"/>
</Button>
<Button name="ФормаЗадачаЗадачаИсполнителяПеренаправить" id="232">
<Type>CommandBarButton</Type>
<Representation>Picture</Representation>
<CommandName>Task.ЗадачаИсполнителя.Command.Перенаправить</CommandName>
<DataPath>Объект.Ref</DataPath>
<ExtendedTooltip name="ФормаЗадачаЗадачаИсполнителяПеренаправитьРасширеннаяПодсказка" id="233"/>
</Button>
<Button name="ФормаПринятьКИсполнению" id="163"> <Button name="ФормаПринятьКИсполнению" id="163">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<Representation>Picture</Representation>
<CommandName>Form.Command.ПринятьКИсполнению</CommandName> <CommandName>Form.Command.ПринятьКИсполнению</CommandName>
<ExtendedTooltip name="ФормаПринятьКИсполнениюExtendedTooltip" id="189"/> <ExtendedTooltip name="ФормаПринятьКИсполнениюExtendedTooltip" id="189"/>
</Button> </Button>
<Button name="ФормаОтменитьПринятиеКИсполнению" id="164"> <Button name="ФормаОтменитьПринятиеКИсполнению" id="164">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<Representation>Picture</Representation>
<CommandName>Form.Command.ОтменитьПринятиеКИсполнению</CommandName> <CommandName>Form.Command.ОтменитьПринятиеКИсполнению</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar> <LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="ФормаОтменитьПринятиеКИсполнениюExtendedTooltip" id="190"/> <ExtendedTooltip name="ФормаОтменитьПринятиеКИсполнениюExtendedTooltip" id="190"/>
@ -49,6 +65,7 @@
</ChildItems> </ChildItems>
</AutoCommandBar> </AutoCommandBar>
<Events> <Events>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="NotificationProcessing">ОбработкаОповещения</Event> <Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event> <Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
@ -56,415 +73,432 @@
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event> <Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаСостояние" id="134"> <UsualGroup name="Документ" id="234">
<HorizontalStretch>true</HorizontalStretch>
<VerticalStretch>false</VerticalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="193"/>
</UsualGroup>
<UsualGroup name="Шапка" id="165">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Шапка</v8:content> <v8:content>Документ</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<HorizontalStretch>false</HorizontalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>NormalSeparation</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ШапкаExtendedTooltip" id="194"/> <ExtendedTooltip name="ДокументРасширеннаяПодсказка" id="235"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппыШапки" id="166"> <UsualGroup name="ГруппаСостояние" id="134">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группы шапки</v8:content> <v8:content>Состояние</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Horizontal</Group> <Representation>NormalSeparation</Representation>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппыШапкиExtendedTooltip" id="195"/> <ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="193"/>
</UsualGroup>
<UsualGroup name="Шапка" id="165">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Шапка</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ШапкаExtendedTooltip" id="194"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаАвторИсполнитель" id="167"> <UsualGroup name="ГруппыШапки" id="166">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Автор и исполнитель</v8:content> <v8:content>Группы шапки</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаАвторИсполнительExtendedTooltip" id="196"/> <ExtendedTooltip name="ГруппыШапкиExtendedTooltip" id="195"/>
<ChildItems> <ChildItems>
<InputField name="Автор" id="168"> <UsualGroup name="ГруппаАвторИсполнитель" id="167">
<DataPath>Объект.Автор</DataPath>
<ReadOnly>true</ReadOnly>
<Width>35</Width>
<ContextMenu name="АвторКонтекстноеМеню" id="169"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="197"/>
</InputField>
<InputField name="Исполнитель" id="170">
<DataPath>Исполнитель</DataPath>
<ReadOnly>true</ReadOnly>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Проверяющий</v8:content> <v8:content>Автор исполнитель</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаАвторИсполнительExtendedTooltip" id="196"/>
<ChildItems>
<InputField name="Автор" id="168">
<DataPath>Объект.Автор</DataPath>
<ReadOnly>true</ReadOnly>
<Width>35</Width>
<ContextMenu name="АвторКонтекстноеМеню" id="169"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="197"/>
</InputField>
<InputField name="Исполнитель" id="170">
<DataPath>Исполнитель</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверяющий</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Исполнитель</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>35</Width>
<DropListButton>false</DropListButton>
<ChoiceButton>true</ChoiceButton>
<ChoiceButtonRepresentation>ShowInInputField</ChoiceButtonRepresentation>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="171"/>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="198"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаДатаИСрок" id="172">
<Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Исполнитель</v8:content> <v8:content>Дата и срок</v8:content>
</v8:item> </v8:item>
</ToolTip> </Title>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <Group>Vertical</Group>
<Width>35</Width> <Representation>None</Representation>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="171"/> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="198"/> <ExtendedTooltip name="ГруппаДатаИСрокExtendedTooltip" id="199"/>
</InputField> <ChildItems>
<InputField name="Дата" id="173">
<DataPath>Объект.Date</DataPath>
<ReadOnly>true</ReadOnly>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="ДатаКонтекстноеМеню" id="174"/>
<ExtendedTooltip name="ДатаExtendedTooltip" id="200"/>
</InputField>
<InputField name="СрокИсполнения" id="175">
<DataPath>Объект.СрокИсполнения</DataPath>
<ReadOnly>true</ReadOnly>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="176"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="201"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаНомерИВажность" id="177">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер и важность</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНомерИВажностьExtendedTooltip" id="202"/>
<ChildItems>
<InputField name="Номер" id="178">
<DataPath>Объект.Number</DataPath>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="179"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="203"/>
</InputField>
<InputField name="Важность" id="180">
<DataPath>Объект.Важность</DataPath>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>14</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="181"/>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="204"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<UsualGroup name="ГруппаДатаИСрок" id="172"> <UsualGroup name="ГруппаПриоритет" id="182">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Дата и срок</v8:content> <v8:content>Приоритет</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаДатаИСрокExtendedTooltip" id="199"/> <ExtendedTooltip name="ГруппаПриоритетExtendedTooltip" id="205"/>
<ChildItems> <ChildItems>
<InputField name="Дата" id="173"> <InputField name="СрокНачалаИсполнения" id="183">
<DataPath>Объект.Date</DataPath> <DataPath>Объект.ДатаНачала</DataPath>
<ReadOnly>true</ReadOnly>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="ДатаКонтекстноеМеню" id="174"/>
<ExtendedTooltip name="ДатаExtendedTooltip" id="200"/>
</InputField>
<InputField name="СрокИсполнения" id="175">
<DataPath>Объект.СрокИсполнения</DataPath>
<ReadOnly>true</ReadOnly>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content> <v8:content>Срок начала исполнения</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <Width>8</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="176"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="201"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаНомерИВажность" id="177">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер и важность</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<HorizontalStretch>true</HorizontalStretch>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНомерИВажностьExtendedTooltip" id="202"/>
<ChildItems>
<InputField name="Номер" id="178">
<DataPath>Объект.Number</DataPath>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="179"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="203"/>
</InputField>
<InputField name="Важность" id="180">
<DataPath>Объект.Важность</DataPath>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap> <Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="181"/> <EditFormat>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="204"/> <v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияКонтекстноеМеню" id="184"/>
<ExtendedTooltip name="СрокНачалаИсполненияExtendedTooltip" id="206"/>
<Events>
<Event name="OnChange">СрокНачалаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокНачалаИсполненияВремя" id="185">
<DataPath>Объект.ДатаНачала</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>4</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияВремяКонтекстноеМеню" id="186"/>
<ExtendedTooltip name="СрокНачалаИсполненияВремяExtendedTooltip" id="207"/>
</InputField> </InputField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<UsualGroup name="ГруппаПриоритет" id="182"> <Pages name="Страницы" id="222">
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПриоритетExtendedTooltip" id="205"/>
<ChildItems>
<InputField name="СрокНачалаИсполнения" id="183">
<DataPath>Объект.ДатаНачала</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияКонтекстноеМеню" id="184"/>
<ExtendedTooltip name="СрокНачалаИсполненияExtendedTooltip" id="206"/>
<Events>
<Event name="OnChange">СрокНачалаИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокНачалаИсполненияВремя" id="185">
<DataPath>Объект.ДатаНачала</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок начала исполнения</v8:content>
</v8:item>
</ToolTip>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокНачалаИсполненияВремяКонтекстноеМеню" id="186"/>
<ExtendedTooltip name="СрокНачалаИсполненияВремяExtendedTooltip" id="207"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<Pages name="Страницы" id="222">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Страницы</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СтраницыРасширеннаяПодсказка" id="223"/>
<ChildItems>
<Page name="Главное" id="224">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Главное</v8:content> <v8:content>Страницы</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ExtendedTooltip name="ГлавноеРасширеннаяПодсказка" id="225"/> <ExtendedTooltip name="СтраницыРасширеннаяПодсказка" id="223"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаСодержание" id="94"> <Page name="Главное" id="224">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content> <v8:content>Главное</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<HorizontalStretch>true</HorizontalStretch> <ExtendedTooltip name="ГлавноеРасширеннаяПодсказка" id="225"/>
<Group>Vertical</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="208"/>
<ChildItems> <ChildItems>
<InputField name="Наименование" id="159"> <UsualGroup name="ГруппаСодержание" id="94">
<DataPath>Объект.Description</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="160"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="209"/>
</InputField>
<LabelField name="Предмет" id="132">
<DataPath>ПредметСтрокой</DataPath>
<Hiperlink>true</Hiperlink>
<ContextMenu name="ПредметКонтекстноеМеню" id="133"/>
<ExtendedTooltip name="ПредметExtendedTooltip" id="210"/>
<Events>
<Event name="Click">ПредметНажатие</Event>
</Events>
</LabelField>
<InputField name="Содержание" id="18">
<DataPath>ЗаданиеСодержание</DataPath>
<ReadOnly>true</ReadOnly>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content> <v8:content>Содержание</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleLocation>None</TitleLocation> <Group>Vertical</Group>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <Representation>NormalSeparation</Representation>
<Height>5</Height> <ShowTitle>false</ShowTitle>
<MultiLine>true</MultiLine> <ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="208"/>
<ExtendedEdit>true</ExtendedEdit> <ChildItems>
<BorderColor>style:BorderColor</BorderColor> <InputField name="Наименование" id="159">
<ContextMenu name="СодержаниеКонтекстноеМеню" id="19"/> <DataPath>Объект.Description</DataPath>
<ExtendedTooltip name="СодержаниеExtendedTooltip" id="211"/> <ReadOnly>true</ReadOnly>
</InputField> <AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="160"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="209"/>
</InputField>
<LabelField name="Предмет" id="132">
<DataPath>ПредметСтрокой</DataPath>
<Width>60</Width>
<Hiperlink>true</Hiperlink>
<ContextMenu name="ПредметКонтекстноеМеню" id="133"/>
<ExtendedTooltip name="ПредметExtendedTooltip" id="210"/>
<Events>
<Event name="Click">ПредметНажатие</Event>
</Events>
</LabelField>
<InputField name="Содержание" id="18">
<DataPath>ЗаданиеСодержание</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<AutoMaxWidth>false</AutoMaxWidth>
<Height>5</Height>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СодержаниеКонтекстноеМеню" id="19"/>
<ExtendedTooltip name="СодержаниеExtendedTooltip" id="211"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </Page>
</ChildItems> <Page name="ИсторияВыполнения" id="226">
</Page>
<Page name="ИсторияВыполнения" id="226">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ИсторияВыполненияРасширеннаяПодсказка" id="227"/>
<ChildItems>
<InputField name="РезультатВыполнения" id="126">
<DataPath>ЗаданиеРезультатВыполнения</DataPath>
<ReadOnly>true</ReadOnly>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content> <v8:content>История выполнения</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleLocation>None</TitleLocation> <ExtendedTooltip name="ИсторияВыполненияРасширеннаяПодсказка" id="227"/>
<MultiLine>true</MultiLine> <ChildItems>
<ExtendedEdit>true</ExtendedEdit> <InputField name="РезультатВыполнения" id="126">
<ContextMenu name="РезультатВыполненияКонтекстноеМеню" id="127"/> <DataPath>ЗаданиеРезультатВыполнения</DataPath>
<ExtendedTooltip name="РезультатВыполненияExtendedTooltip" id="212"/> <ReadOnly>true</ReadOnly>
</InputField> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>История выполнения</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<ContextMenu name="РезультатВыполненияКонтекстноеМеню" id="127"/>
<ExtendedTooltip name="РезультатВыполненияExtendedTooltip" id="212"/>
</InputField>
</ChildItems>
</Page>
</ChildItems> </ChildItems>
</Page> </Pages>
</ChildItems> <UsualGroup name="ГруппаРезультат" id="27">
</Pages>
<UsualGroup name="ГруппаРезультат" id="27">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Результат проверки задания:</v8:content>
</v8:item>
</Title>
<HorizontalStretch>true</HorizontalStretch>
<Group>Vertical</Group>
<Representation>NormalSeparation</Representation>
<ExtendedTooltip name="ГруппаРезультатExtendedTooltip" id="213"/>
<ChildItems>
<InputField name="ОписаниеРезультата" id="78">
<DataPath>Объект.РезультатВыполнения</DataPath>
<DefaultItem>true</DefaultItem>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание результата выполнения</v8:content>
</v8:item>
</ToolTip>
<Height>2</Height>
<VerticalStretch>false</VerticalStretch>
<ContextMenu name="ОписаниеРезультатаКонтекстноеМеню" id="79"/>
<ExtendedTooltip name="ОписаниеРезультатаExtendedTooltip" id="214"/>
</InputField>
<UsualGroup name="ГруппаВыполненаДата" id="54">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа выполнена дата</v8:content> <v8:content>Результат проверки задания:</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <Group>Vertical</Group>
<v8:item> <Representation>NormalSeparation</Representation>
<v8:lang>ru</v8:lang> <ExtendedTooltip name="ГруппаРезультатExtendedTooltip" id="213"/>
<v8:content>Группа выполнена дата</v8:content>
</v8:item>
</ToolTip>
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаВыполненаДатаExtendedTooltip" id="215"/>
<ChildItems> <ChildItems>
<Button name="Выполнено" id="123"> <InputField name="ОписаниеРезультата" id="78">
<Type>UsualButton</Type> <DataPath>Объект.РезультатВыполнения</DataPath>
<Representation>PictureAndText</Representation> <DefaultItem>true</DefaultItem>
<SkipOnInput>false</SkipOnInput> <TitleLocation>None</TitleLocation>
<Height>1</Height> <ToolTip>
<CommandName>Form.Command.Выполнено</CommandName> <v8:item>
<ExtendedTooltip name="ВыполненоExtendedTooltip" id="216"/> <v8:lang>ru</v8:lang>
</Button> <v8:content>Описание результата выполнения</v8:content>
<Button name="Отменено" id="147"> </v8:item>
<Type>UsualButton</Type> </ToolTip>
<Representation>PictureAndText</Representation> <AutoMaxWidth>false</AutoMaxWidth>
<SkipOnInput>false</SkipOnInput> <ContextMenu name="ОписаниеРезультатаКонтекстноеМеню" id="79"/>
<Height>1</Height> <ExtendedTooltip name="ОписаниеРезультатаExtendedTooltip" id="214"/>
<CommandName>Form.Command.Отменено</CommandName> </InputField>
<Picture> <UsualGroup name="ГруппаВыполненаДата" id="54">
<xr:Ref>StdPicture.Stop</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<ExtendedTooltip name="ОтмененоExtendedTooltip" id="217"/>
</Button>
<Button name="Возвращено" id="124">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<SkipOnInput>false</SkipOnInput>
<Height>1</Height>
<CommandName>Form.Command.Возвращено</CommandName>
<Picture>
<xr:Ref>CommonPicture.ЗаполнитьФорму</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<ExtendedTooltip name="ВозвращеноExtendedTooltip" id="218"/>
</Button>
<InputField name="ДатаИсполнения" id="55">
<DataPath>Объект.ДатаИсполнения</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Дата проверки</v8:content> <v8:content>Выполнена дата</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Width>10</Width> <Representation>None</Representation>
<HorizontalStretch>false</HorizontalStretch> <ShowTitle>false</ShowTitle>
<Wrap>false</Wrap> <ExtendedTooltip name="ГруппаВыполненаДатаExtendedTooltip" id="215"/>
<EditFormat> <ChildItems>
<v8:item> <Button name="Выполнено" id="123">
<v8:lang>ru</v8:lang> <Type>UsualButton</Type>
<v8:content>ДЛФ=D</v8:content> <Representation>PictureAndText</Representation>
</v8:item> <SkipOnInput>false</SkipOnInput>
</EditFormat> <Height>1</Height>
<ContextMenu name="ДатаИсполненияКонтекстноеМеню" id="56"/> <CommandName>Form.Command.Выполнено</CommandName>
<ExtendedTooltip name="ДатаИсполненияExtendedTooltip" id="219"/> <ExtendedTooltip name="ВыполненоExtendedTooltip" id="216"/>
</InputField> </Button>
<InputField name="ДатаИсполненияВремя" id="161"> <Button name="Отменено" id="147">
<DataPath>Объект.ДатаИсполнения</DataPath> <Type>UsualButton</Type>
<TitleLocation>None</TitleLocation> <Representation>PictureAndText</Representation>
<Width>8</Width> <SkipOnInput>false</SkipOnInput>
<Wrap>false</Wrap> <Height>1</Height>
<ChoiceButton>false</ChoiceButton> <CommandName>Form.Command.Отменено</CommandName>
<EditFormat> <Picture>
<v8:item> <xr:Ref>StdPicture.Stop</xr:Ref>
<v8:lang>ru</v8:lang> <xr:LoadTransparent>true</xr:LoadTransparent>
<v8:content>ДЛФ=T</v8:content> </Picture>
</v8:item> <ExtendedTooltip name="ОтмененоExtendedTooltip" id="217"/>
</EditFormat> </Button>
<ContextMenu name="ДатаИсполненияВремяКонтекстноеМеню" id="162"/> <Button name="Возвращено" id="124">
<ExtendedTooltip name="ДатаИсполненияВремяExtendedTooltip" id="220"/> <Type>UsualButton</Type>
</InputField> <Representation>PictureAndText</Representation>
<Button name="ИзменитьЗадание" id="130"> <SkipOnInput>false</SkipOnInput>
<Type>Hyperlink</Type> <Height>1</Height>
<SkipOnInput>false</SkipOnInput> <CommandName>Form.Command.Возвращено</CommandName>
<CommandName>Form.Command.ИзменитьЗадание</CommandName> <Picture>
<ExtendedTooltip name="ИзменитьЗаданиеExtendedTooltip" id="221"/> <xr:Ref>CommonPicture.ЗаполнитьФорму</xr:Ref>
</Button> <xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<ExtendedTooltip name="ВозвращеноExtendedTooltip" id="218"/>
</Button>
<InputField name="ДатаИсполнения" id="55">
<DataPath>Объект.ДатаИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата проверки</v8:content>
</v8:item>
</Title>
<Width>10</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ДатаИсполненияКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="ДатаИсполненияExtendedTooltip" id="219"/>
</InputField>
<InputField name="ДатаИсполненияВремя" id="161">
<DataPath>Объект.ДатаИсполнения</DataPath>
<TitleLocation>None</TitleLocation>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ДатаИсполненияВремяКонтекстноеМеню" id="162"/>
<ExtendedTooltip name="ДатаИсполненияВремяExtendedTooltip" id="220"/>
</InputField>
<Button name="ИзменитьЗадание" id="130">
<Type>Hyperlink</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ИзменитьЗадание</CommandName>
<ExtendedTooltip name="ИзменитьЗаданиеExtendedTooltip" id="221"/>
</Button>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
@ -479,12 +513,6 @@
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="НачальныйПризнакВыполнения" id="2"> <Attribute name="НачальныйПризнакВыполнения" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Начальный признак выполнения</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -505,12 +533,6 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ТекущийПользователь" id="5"> <Attribute name="ТекущийПользователь" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущий пользователь</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type> <v8:Type>cfg:CatalogRef.Пользователи</v8:Type>
</Type> </Type>
@ -531,12 +553,6 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ЗаданиеВыполнено" id="7"> <Attribute name="ЗаданиеВыполнено" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выполнено</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -557,23 +573,11 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ЗаданиеПодтверждено" id="9"> <Attribute name="ЗаданиеПодтверждено" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подтверждено</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ЗаданиеСсылка" id="10"> <Attribute name="ЗаданиеСсылка" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Задание ссылка</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:BusinessProcessRef.Задание</v8:Type> <v8:Type>cfg:BusinessProcessRef.Задание</v8:Type>
</Type> </Type>
@ -627,7 +631,6 @@
<xr:LoadTransparent>true</xr:LoadTransparent> <xr:LoadTransparent>true</xr:LoadTransparent>
</Picture> </Picture>
<Action>Выполнено</Action> <Action>Выполнено</Action>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="Возвращено" id="4"> <Command name="Возвращено" id="4">
@ -644,7 +647,6 @@
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Action>Возвращено</Action> <Action>Возвращено</Action>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="ИзменитьЗадание" id="6"> <Command name="ИзменитьЗадание" id="6">
@ -680,7 +682,6 @@
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Action>Отменено</Action> <Action>Отменено</Action>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="Дополнительно" id="2"> <Command name="Дополнительно" id="2">

View File

@ -1,13 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
// Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере. // Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере.
// Для существующего - в ПриЧтенииНаСервере. // Для существующего - в ПриЧтенииНаСервере.
Если Объект.Ссылка.Пустая() Тогда Если Объект.Ссылка.Пустая() Тогда
@ -16,13 +19,30 @@
ТекущийПользователь = Пользователи.ТекущийПользователь(); ТекущийПользователь = Пользователи.ТекущийПользователь();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ПараметрыГиперссылки = МодульРаботаСФайлами.ГиперссылкаФайлов();
ПараметрыГиперссылки.Размещение = "КоманднаяПанель";
ПараметрыГиперссылки.Владелец = "Объект.БизнесПроцесс";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект); БизнесПроцессыИЗадачиКлиент.ОбновитьДоступностьКомандПринятияКИсполнению(ЭтотОбъект);
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -35,14 +55,14 @@
Если НЕ ЗаданиеВыполнено И НЕ ЗаданиеПодтверждено Если НЕ ЗаданиеВыполнено И НЕ ЗаданиеПодтверждено
И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача возвращается на доработку.'"),, НСтр("ru = 'Укажите причину, по которой задача возвращается на доработку.'"),,
"Объект.РезультатВыполнения",, "Объект.РезультатВыполнения",,
Отказ); Отказ);
Возврат; Возврат;
ИначеЕсли НЕ ЗаданиеВыполнено И ЗаданиеПодтверждено ИначеЕсли НЕ ЗаданиеВыполнено И ЗаданиеПодтверждено
И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда И НЕ ЗначениеЗаполнено(ТекущийОбъект.РезультатВыполнения) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Укажите причину, по которой задача отменяется.'"),, НСтр("ru = 'Укажите причину, по которой задача отменяется.'"),,
"Объект.РезультатВыполнения",, "Объект.РезультатВыполнения",,
Отказ); Отказ);
@ -58,6 +78,13 @@
ИнициализацияФормы(); ИнициализацияФормы();
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -72,6 +99,25 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -95,6 +141,40 @@
КонецПроцедуры КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
@ -162,6 +242,18 @@
КонецПроцедуры КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@ -184,7 +276,17 @@
Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена; Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена;
Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя); Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя);
КонецПроцедуры Если ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание) Тогда
Элементы.Выполнено.Доступность = Истина;
Элементы.Отменено.Доступность = Истина;
Элементы.Возвращено.Доступность = Истина;
Иначе
Элементы.Выполнено.Доступность = Ложь;
Элементы.Отменено.Доступность = Ложь;
Элементы.Возвращено.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
&НаСервере &НаСервере
Процедура ПрочитатьРеквизитыБизнесПроцесса() Процедура ПрочитатьРеквизитыБизнесПроцесса()

View File

@ -9,7 +9,7 @@
</li><li>Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующие значения этого поля. </li></ul><h3>Дата начала выполнения</h3> </li><li>Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующие значения этого поля. </li></ul><h3>Дата начала выполнения</h3>
<ul><li>В поле <strong>Дата начала</strong> можно проставить дату и время, когда задание начало выполняться. Для того чтобы это поле было доступно, в разделе <strong>Администрирование - Органайзер</strong> необходимо установить флажок <strong>Дата начала задач</strong>. По данному полю можно будет затем сортировать задачи в списках.</li></ul><h3>Принятие к исполнению</h3> <ul><li>В поле <strong>Дата начала</strong> можно проставить дату и время, когда задание начало выполняться. Для того чтобы это поле было доступно, в разделе <strong>Администрирование - Органайзер</strong> необходимо установить флажок <strong>Дата начала задач</strong>. По данному полю можно будет затем сортировать задачи в списках.</li></ul><h3>Принятие к исполнению</h3>
<ul><li> <ul><li>
<div>Задача, непринятая к исполнению, в списках выделяется жирным шрифтом. Выполните соответствующую команду меню <strong>Еще</strong>, для того чтобы <strong>Принять  к исполнению</strong> задачу. После этого задача исчезает из списков задач других исполнителей, назначенных на ту же роль.</div> <div>Задача, непринятая к исполнению, в списках выделяется жирным шрифтом. Выполните соответствующую команду меню <strong>Еще</strong>, для того чтобы <strong>Принятьк исполнению</strong> задачу. После этого задача исчезает из списков задач других исполнителей, назначенных на ту же роль.</div>
</li><li> </li><li>
<div>С помощью соответствующей команды меню <strong>Еще</strong> можно <strong>Отменить принятие к исполнению</strong>.</div></li></ul><h3>Проверка выполнения</h3> <div>С помощью соответствующей команды меню <strong>Еще</strong> можно <strong>Отменить принятие к исполнению</strong>.</div></li></ul><h3>Проверка выполнения</h3>
<ul><li>В поле <strong>Результат проверки задания</strong> напишите комментарий о выполнении задачи. <ul><li>В поле <strong>Результат проверки задания</strong> напишите комментарий о выполнении задачи.
@ -34,7 +34,7 @@
<h3>Отправка другому исполнителю</h3> <h3>Отправка другому исполнителю</h3>
<ul><li>Задачу можно <strong>Перенаправить</strong> другому исполнителю с помощью соответствующей кнопки. <ul><li>Задачу можно <strong>Перенаправить</strong> другому исполнителю с помощью соответствующей кнопки.
</li><li>Заполните необходимые <a href="Task.ЗадачаИсполнителя.Form.ПеренаправитьЗадачи/Help">поля</a>.</li></ul><h3>Изменение задания</h3> </li><li>Заполните необходимые <a href="Task.ЗадачаИсполнителя.Form.ПеренаправитьЗадачи/Help">поля</a>.</li></ul><h3>Изменение задания</h3>
<ul><li>С помощью ссылки <strong>Изменить задание</strong> можно открыть задание и переработать его (при наличии соответствующих прав). В этом случае задание снова будет направлено исполнителю.</li></ul><h3>Дополнительные сведения о задаче</h3> <ul><li>С помощью ссылки <strong>Изменить задание</strong> можно открыть задание и переработать его (при наличии прав доступа). В этом случае задание снова будет направлено исполнителю.</li></ul><h3>Дополнительные сведения о задаче</h3>
<ul><li> <ul><li>
<div>Для просмотра <a href="Task.ЗадачаИсполнителя.Form.Дополнительно/Help">дополнительной информации</a> о задаче выполните команду <strong>Еще</strong> <strong>- Дополнительно</strong>.</div></li></ul><h3>См. также:</h3> <div>Для просмотра <a href="Task.ЗадачаИсполнителя.Form.Дополнительно/Help">дополнительной информации</a> о задаче выполните команду <strong>Еще</strong> <strong>- Дополнительно</strong>.</div></li></ul><h3>См. также:</h3>
<ul><li> <ul><li>

View File

@ -28,6 +28,11 @@
<CommandName>Form.StandardCommand.Start</CommandName> <CommandName>Form.StandardCommand.Start</CommandName>
<ExtendedTooltip name="ФормаСтартРасширеннаяПодсказка" id="138"/> <ExtendedTooltip name="ФормаСтартРасширеннаяПодсказка" id="138"/>
</Button> </Button>
<Button name="ФормаНастроитьОтложенныйСтарт" id="153">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.НастроитьОтложенныйСтарт</CommandName>
<ExtendedTooltip name="ФормаНастроитьОтложенныйСтартРасширеннаяПодсказка" id="154"/>
</Button>
<Button name="ФормаОстановить" id="101"> <Button name="ФормаОстановить" id="101">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<CommandName>Form.Command.Остановить</CommandName> <CommandName>Form.Command.Остановить</CommandName>
@ -45,12 +50,6 @@
<v8:content>Глобальные команды</v8:content> <v8:content>Глобальные команды</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Глобальные команды</v8:content>
</v8:item>
</ToolTip>
<CommandSource>FormCommandPanelGlobalCommands</CommandSource> <CommandSource>FormCommandPanelGlobalCommands</CommandSource>
<ExtendedTooltip name="ГлобальныеКомандыРасширеннаяПодсказка" id="144"/> <ExtendedTooltip name="ГлобальныеКомандыРасширеннаяПодсказка" id="144"/>
</ButtonGroup> </ButtonGroup>
@ -61,12 +60,6 @@
<v8:content>Стандартные команды</v8:content> <v8:content>Стандартные команды</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Стандартные команды</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource> <CommandSource>Form</CommandSource>
<ExtendedTooltip name="СтандартныеКомандыРасширеннаяПодсказка" id="134"/> <ExtendedTooltip name="СтандартныеКомандыРасширеннаяПодсказка" id="134"/>
</ButtonGroup> </ButtonGroup>
@ -80,375 +73,435 @@
<Events> <Events>
<Event name="AfterWrite">ПослеЗаписи</Event> <Event name="AfterWrite">ПослеЗаписи</Event>
<Event name="ChoiceProcessing">ОбработкаВыбора</Event> <Event name="ChoiceProcessing">ОбработкаВыбора</Event>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event> <Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
<Event name="OnWriteAtServer">ПриЗаписиНаСервере</Event> <Event name="OnWriteAtServer">ПриЗаписиНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаСостояние" id="92"> <UsualGroup name="Документ" id="151">
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="107"/>
<ChildItems>
<PictureDecoration name="ДекорацияЗначок" id="93">
<Width>2</Width>
<Height>1</Height>
<SkipOnInput>false</SkipOnInput>
<Picture>
<xr:Ref>CommonPicture.Информация</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<FileDragMode>AsFile</FileDragMode>
<ContextMenu name="ДекорацияЗначокКонтекстноеМеню" id="94"/>
<ExtendedTooltip name="ДекорацияЗначокExtendedTooltip" id="108"/>
</PictureDecoration>
<LabelDecoration name="ДекорацияТекст" id="95">
<HorizontalStretch>true</HorizontalStretch>
<VerticalStretch>false</VerticalStretch>
<SkipOnInput>false</SkipOnInput>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Задание выполнено</v8:content>
</v8:item>
</Title>
<ContextMenu name="ДекорацияТекстКонтекстноеМеню" id="96"/>
<ExtendedTooltip name="ДекорацияТекстExtendedTooltip" id="109"/>
</LabelDecoration>
</ChildItems>
</UsualGroup>
<LabelField name="ГлавнаяЗадача" id="99">
<DataPath>ГлавнаяЗадачаСтрокой</DataPath>
<Hiperlink>true</Hiperlink>
<ContextMenu name="ГлавнаяЗадачаКонтекстноеМеню" id="100"/>
<ExtendedTooltip name="ГлавнаяЗадачаExtendedTooltip" id="110"/>
<Events>
<Event name="Click">ГлавнаяЗадачаНажатие</Event>
</Events>
</LabelField>
<UsualGroup name="ГруппаСрокВажность" id="27">
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСрокВажностьExtendedTooltip" id="111"/>
<ChildItems>
<InputField name="ЗаголовокЗадания" id="19">
<DataPath>Объект.Наименование</DataPath>
<DefaultItem>true</DefaultItem>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>20</Width>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ЗаголовокЗаданияКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="ЗаголовокЗаданияExtendedTooltip" id="112"/>
</InputField>
<InputField name="Важность" id="57">
<DataPath>Объект.Важность</DataPath>
<Width>8</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="58"/>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="113"/>
</InputField>
<InputField name="Номер" id="103">
<DataPath>Объект.Number</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="104"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="114"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаИсполнение" id="67">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Исполнение</v8:content> <v8:content>Документ</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаИсполнениеExtendedTooltip" id="115"/>
<ChildItems>
<InputField name="Исполнитель" id="69">
<DataPath>Объект.Исполнитель</DataPath>
<Width>35</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<OpenButton>false</OpenButton>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="70"/>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="116"/>
<Events>
<Event name="OnChange">ИсполнительПриИзменении</Event>
<Event name="AutoComplete">ИсполнительАвтоПодбор</Event>
<Event name="StartChoice">ИсполнительНачалоВыбора</Event>
<Event name="TextEditEnd">ИсполнительОкончаниеВводаТекста</Event>
<Event name="ChoiceProcessing">ИсполнительОбработкаВыбора</Event>
</Events>
</InputField>
<InputField name="СрокИсполнения" id="21">
<DataPath>Объект.СрокИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="117"/>
<Events>
<Event name="OnChange">СрокИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокИсполненияВремя" id="88">
<DataPath>Объект.СрокИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения (время)</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокИсполненияВремяКонтекстноеМеню" id="89"/>
<ExtendedTooltip name="СрокИсполненияВремяExtendedTooltip" id="118"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаСодержание" id="75">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<HorizontalStretch>false</HorizontalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>NormalSeparation</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="119"/> <ExtendedTooltip name="ДокументРасширеннаяПодсказка" id="152"/>
<ChildItems> <ChildItems>
<LabelField name="Предмет" id="86"> <LabelField name="ГлавнаяЗадача" id="99">
<DataPath>ПредметСтрокой</DataPath> <DataPath>ГлавнаяЗадачаСтрокой</DataPath>
<ContextMenu name="ПредметКонтекстноеМеню" id="87"/> <Hiperlink>true</Hiperlink>
<ExtendedTooltip name="ПредметExtendedTooltip" id="120"/> <ContextMenu name="ГлавнаяЗадачаКонтекстноеМеню" id="100"/>
<ExtendedTooltip name="ГлавнаяЗадачаExtendedTooltip" id="110"/>
<Events> <Events>
<Event name="Click">ПредметНажатие</Event> <Event name="Click">ГлавнаяЗадачаНажатие</Event>
</Events> </Events>
</LabelField> </LabelField>
<InputField name="Содержание" id="17"> <UsualGroup name="ГруппаСостояние" id="92">
<DataPath>Объект.Содержание</DataPath> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Состояние</v8:content>
</v8:item>
</Title>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСостояниеExtendedTooltip" id="107"/>
<ChildItems>
<PictureDecoration name="ДекорацияЗначок" id="93">
<SkipOnInput>false</SkipOnInput>
<Picture>
<xr:Ref>CommonPicture.Информация</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<FileDragMode>AsFile</FileDragMode>
<ContextMenu name="ДекорацияЗначокКонтекстноеМеню" id="94"/>
<ExtendedTooltip name="ДекорацияЗначокExtendedTooltip" id="108"/>
</PictureDecoration>
<LabelField name="ИнфоНадписьЗаголовок" id="155">
<DataPath>ИнфоНадписьЗаголовок</DataPath>
<TitleLocation>None</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<AutoMaxHeight>false</AutoMaxHeight>
<VerticalStretch>true</VerticalStretch>
<ContextMenu name="ИнфоНадписьЗаголовокКонтекстноеМеню" id="156"/>
<ExtendedTooltip name="ИнфоНадписьЗаголовокРасширеннаяПодсказка" id="157"/>
<Events>
<Event name="URLProcessing">ИнфоНадписьЗаголовокОбработкаНавигационнойСсылки</Event>
</Events>
</LabelField>
</ChildItems>
</UsualGroup>
<UsualGroup name="Шапка" id="145">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Шапка</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ШапкаРасширеннаяПодсказка" id="146"/>
<ChildItems>
<UsualGroup name="ГруппаСрокВажность" id="27">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок важность</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<United>false</United>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСрокВажностьExtendedTooltip" id="111"/>
<ChildItems>
<InputField name="ЗаголовокЗадания" id="19">
<DataPath>Объект.Наименование</DataPath>
<DefaultItem>true</DefaultItem>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ЗаголовокЗаданияКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="ЗаголовокЗаданияExtendedTooltip" id="112"/>
</InputField>
<InputField name="Важность" id="57">
<DataPath>Объект.Важность</DataPath>
<Wrap>false</Wrap>
<ContextMenu name="ВажностьКонтекстноеМеню" id="58"/>
<ExtendedTooltip name="ВажностьExtendedTooltip" id="113"/>
</InputField>
<InputField name="Номер" id="103">
<DataPath>Объект.Number</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="НомерКонтекстноеМеню" id="104"/>
<ExtendedTooltip name="НомерExtendedTooltip" id="114"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаИсполнение" id="67">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Исполнение</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<Representation>None</Representation>
<United>false</United>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаИсполнениеExtendedTooltip" id="115"/>
<ChildItems>
<InputField name="Исполнитель" id="69">
<DataPath>Объект.Исполнитель</DataPath>
<Wrap>false</Wrap>
<DropListButton>false</DropListButton>
<ChoiceButton>true</ChoiceButton>
<OpenButton>false</OpenButton>
<ContextMenu name="ИсполнительКонтекстноеМеню" id="70"/>
<ExtendedTooltip name="ИсполнительExtendedTooltip" id="116"/>
<Events>
<Event name="OnChange">ИсполнительПриИзменении</Event>
<Event name="AutoComplete">ИсполнительАвтоПодбор</Event>
<Event name="StartChoice">ИсполнительНачалоВыбора</Event>
<Event name="TextEditEnd">ИсполнительОкончаниеВводаТекста</Event>
<Event name="ChoiceProcessing">ИсполнительОбработкаВыбора</Event>
</Events>
</InputField>
<UsualGroup name="ГруппаСрокИсполнения" id="147">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСрокИсполненияРасширеннаяПодсказка" id="148"/>
<ChildItems>
<InputField name="СрокИсполнения" id="21">
<DataPath>Объект.СрокИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокИсполненияКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="СрокИсполненияExtendedTooltip" id="117"/>
<Events>
<Event name="OnChange">СрокИсполненияПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокИсполненияВремя" id="88">
<DataPath>Объект.СрокИсполнения</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок исполнения (время)</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="СрокИсполненияВремяКонтекстноеМеню" id="89"/>
<ExtendedTooltip name="СрокИсполненияВремяExtendedTooltip" id="118"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаСодержание" id="75">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Содержание</v8:content> <v8:content>Содержание</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleLocation>None</TitleLocation> <Group>Vertical</Group>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <Representation>NormalSeparation</Representation>
<Height>5</Height>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СодержаниеКонтекстноеМеню" id="18"/>
<ExtendedTooltip name="СодержаниеExtendedTooltip" id="121"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаПроверка" id="56">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверка</v8:content>
</v8:item>
</Title>
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ExtendedTooltip name="ГруппаПроверкаExtendedTooltip" id="122"/>
<ChildItems>
<CheckBoxField name="НаПроверке" id="54">
<DataPath>Объект.НаПроверке</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверить выполнение:</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="НаПроверкеКонтекстноеМеню" id="55"/>
<ExtendedTooltip name="НаПроверкеExtendedTooltip" id="123"/>
<Events>
<Event name="OnChange">НаПроверкеПриИзменении</Event>
</Events>
</CheckBoxField>
<UsualGroup name="ГруппаПроверяющий" id="28">
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПроверяющийExtendedTooltip" id="124"/> <ExtendedTooltip name="ГруппаСодержаниеExtendedTooltip" id="119"/>
<ChildItems> <ChildItems>
<InputField name="Проверяющий" id="14"> <LabelField name="Предмет" id="86">
<DataPath>Объект.Проверяющий</DataPath> <DataPath>ПредметСтрокой</DataPath>
<TitleLocation>None</TitleLocation> <Width>60</Width>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <AutoMaxWidth>false</AutoMaxWidth>
<Width>34</Width> <HorizontalStretch>true</HorizontalStretch>
<HorizontalStretch>false</HorizontalStretch> <ContextMenu name="ПредметКонтекстноеМеню" id="87"/>
<Wrap>false</Wrap> <ExtendedTooltip name="ПредметExtendedTooltip" id="120"/>
<OpenButton>false</OpenButton>
<AutoMarkIncomplete>false</AutoMarkIncomplete>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ПроверяющийКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="ПроверяющийExtendedTooltip" id="125"/>
<Events> <Events>
<Event name="OnChange">ПроверяющийПриИзменении</Event> <Event name="Click">ПредметНажатие</Event>
<Event name="AutoComplete">ПроверяющийАвтоПодбор</Event>
<Event name="StartChoice">ПроверяющийНачалоВыбора</Event>
<Event name="TextEditEnd">ПроверяющийОкончаниеВводаТекста</Event>
<Event name="ChoiceProcessing">ПроверяющийОбработкаВыбора</Event>
</Events> </Events>
</InputField> </LabelField>
<InputField name="СрокПроверки" id="23"> <InputField name="Содержание" id="17">
<DataPath>Объект.СрокПроверки</DataPath> <DataPath>Объект.Содержание</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content> <v8:content>Содержание</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок проверки</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СрокПроверкиКонтекстноеМеню" id="24"/>
<ExtendedTooltip name="СрокПроверкиExtendedTooltip" id="126"/>
<Events>
<Event name="OnChange">СрокПроверкиПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокПроверкиВремя" id="90">
<DataPath>Объект.СрокПроверки</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок проверки (время)</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>8</Width> <AutoMaxWidth>false</AutoMaxWidth>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<BorderColor>style:BorderColor</BorderColor> <BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СрокПроверкиВремяКонтекстноеМеню" id="91"/> <ContextMenu name="СодержаниеКонтекстноеМеню" id="18"/>
<ExtendedTooltip name="СрокПроверкиВремяExtendedTooltip" id="127"/> <ExtendedTooltip name="СодержаниеExtendedTooltip" id="121"/>
</InputField> </InputField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> <UsualGroup name="ГруппаПроверка" id="56">
</UsualGroup>
<UsualGroup name="ГруппаОбщиеСведения" id="81">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автор</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа общие сведения</v8:content>
</v8:item>
</ToolTip>
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаОбщиеСведенияExtendedTooltip" id="128"/>
<ChildItems>
<InputField name="Автор" id="79">
<DataPath>Объект.Автор</DataPath>
<Width>35</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<OpenButton>false</OpenButton>
<ContextMenu name="АвторКонтекстноеМеню" id="80"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="129"/>
</InputField>
<InputField name="Дата" id="97">
<DataPath>Объект.Date</DataPath>
<ReadOnly>true</ReadOnly>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Начато</v8:content> <v8:content>Проверка</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ContextMenu name="ДатаКонтекстноеМеню" id="98"/> <Representation>None</Representation>
<ExtendedTooltip name="ДатаExtendedTooltip" id="130"/> <ShowTitle>false</ShowTitle>
</InputField> <ExtendedTooltip name="ГруппаПроверкаExtendedTooltip" id="122"/>
<ChildItems>
<CheckBoxField name="НаПроверке" id="54">
<DataPath>Объект.НаПроверке</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверить выполнение:</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="НаПроверкеКонтекстноеМеню" id="55"/>
<ExtendedTooltip name="НаПроверкеExtendedTooltip" id="123"/>
<Events>
<Event name="OnChange">НаПроверкеПриИзменении</Event>
</Events>
</CheckBoxField>
<UsualGroup name="ГруппаПроверяющий" id="28">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверяющий</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<United>false</United>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПроверяющийExtendedTooltip" id="124"/>
<ChildItems>
<InputField name="Проверяющий" id="14">
<DataPath>Объект.Проверяющий</DataPath>
<TitleLocation>None</TitleLocation>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>35</Width>
<Wrap>false</Wrap>
<DropListButton>false</DropListButton>
<ChoiceButton>true</ChoiceButton>
<OpenButton>false</OpenButton>
<AutoMarkIncomplete>false</AutoMarkIncomplete>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ПроверяющийКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="ПроверяющийExtendedTooltip" id="125"/>
<Events>
<Event name="OnChange">ПроверяющийПриИзменении</Event>
<Event name="AutoComplete">ПроверяющийАвтоПодбор</Event>
<Event name="StartChoice">ПроверяющийНачалоВыбора</Event>
<Event name="TextEditEnd">ПроверяющийОкончаниеВводаТекста</Event>
<Event name="ChoiceProcessing">ПроверяющийОбработкаВыбора</Event>
</Events>
</InputField>
<UsualGroup name="ГруппаСрокПроверки" id="149">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок проверки</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСрокПроверкиРасширеннаяПодсказка" id="150"/>
<ChildItems>
<InputField name="СрокПроверки" id="23">
<DataPath>Объект.СрокПроверки</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок проверки</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>10</Width>
<Wrap>false</Wrap>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=D</v8:content>
</v8:item>
</EditFormat>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СрокПроверкиКонтекстноеМеню" id="24"/>
<ExtendedTooltip name="СрокПроверкиExtendedTooltip" id="126"/>
<Events>
<Event name="OnChange">СрокПроверкиПриИзменении</Event>
</Events>
</InputField>
<InputField name="СрокПроверкиВремя" id="90">
<DataPath>Объект.СрокПроверки</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок проверки (время)</v8:content>
</v8:item>
</ToolTip>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>8</Width>
<Wrap>false</Wrap>
<ChoiceButton>false</ChoiceButton>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДЛФ=T</v8:content>
</v8:item>
</EditFormat>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="СрокПроверкиВремяКонтекстноеМеню" id="91"/>
<ExtendedTooltip name="СрокПроверкиВремяExtendedTooltip" id="127"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаОбщиеСведения" id="81">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автор</v8:content>
</v8:item>
</Title>
<TitleFont ref="sys:DefaultGUIFont" bold="true" italic="false" underline="false" strikeout="false" kind="WindowsFont"/>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаОбщиеСведенияExtendedTooltip" id="128"/>
<ChildItems>
<InputField name="Автор" id="79">
<DataPath>Объект.Автор</DataPath>
<Width>35</Width>
<Wrap>false</Wrap>
<OpenButton>false</OpenButton>
<ContextMenu name="АвторКонтекстноеМеню" id="80"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="129"/>
</InputField>
<InputField name="Дата" id="97">
<DataPath>Объект.Date</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Начато</v8:content>
</v8:item>
</Title>
<ContextMenu name="ДатаКонтекстноеМеню" id="98"/>
<ExtendedTooltip name="ДатаExtendedTooltip" id="130"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
@ -461,12 +514,6 @@
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="НачальныйПризнакСтарта" id="2"> <Attribute name="НачальныйПризнакСтарта" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Начальный признак старта</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -501,6 +548,45 @@
</v8:StringQualifiers> </v8:StringQualifiers>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ИнфоНадписьЗаголовок" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Инфо надпись заголовок</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8ui:FormattedString</v8:Type>
</Type>
</Attribute>
<Attribute name="Отложен" id="6">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ДатаОтложенногоСтарта" id="7">
<Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
</Attribute>
<Attribute name="ИспользоватьДатуИВремяВСрокахЗадач" id="8">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ИспользоватьПодчиненныеБизнесПроцессы" id="9">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ИзменятьЗаданияЗаднимЧислом" id="10">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes> </Attributes>
<Commands> <Commands>
<Command name="Остановить" id="1"> <Command name="Остановить" id="1">
@ -551,5 +637,38 @@
<Action>ЗаписатьИЗакрыть</Action> <Action>ЗаписатьИЗакрыть</Action>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="НастроитьОтложенныйСтарт" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Настроить отложенный старт</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Настроить отложенный старт</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>CommonPicture.ПроцессОтложен</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>НастроитьОтложенныйСтарт</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands> </Commands>
<CommandInterface>
<NavigationPanel>
<Item>
<Command>CommonCommand.ПрисоединенныеФайлы</Command>
<Type>Auto</Type>
<CommandGroup>FormNavigationPanelGoTo</CommandGroup>
<DefaultVisible>false</DefaultVisible>
<Visible>
<xr:Common>false</xr:Common>
</Visible>
</Item>
</NavigationPanel>
</CommandInterface>
</Form> </Form>

View File

@ -1,20 +1,28 @@
&НаКлиенте ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОписаниеПеременных
&НаКлиенте
Перем ОткрытаФормаВыбораИсполнителя; // Признак того, что исполнитель выбирается из формы, а не быстрым вводом. Перем ОткрытаФормаВыбораИсполнителя; // Признак того, что исполнитель выбирается из формы, а не быстрым вводом.
&НаКлиенте &НаКлиенте
Перем ОткрытаФормаВыбораПроверяющего; // Признак того, что проверяющий выбирается из формы, а не быстрым вводом. Перем ОткрытаФормаВыбораПроверяющего; // Признак того, что проверяющий выбирается из формы, а не быстрым вводом.
&НаКлиенте &НаКлиенте
Перем КонтекстВыбора; Перем КонтекстВыбора;
#КонецОбласти
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УстановитьУсловноеОформление();
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. УстановитьУсловноеОформление();
Возврат;
КонецЕсли;
// Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере. // Для нового объекта выполняем код инициализации формы в ПриСозданииНаСервере.
// Для существующего - в ПриЧтенииНаСервере. // Для существующего - в ПриЧтенииНаСервере.
@ -22,6 +30,15 @@
ИнициализацияФормы(); ИнициализацияФормы();
КонецЕсли; КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайлами = ОбщегоНазначения.ОбщийМодуль("РаботаСФайлами");
ГиперссылкаФайлов = МодульРаботаСФайлами.ГиперссылкаФайлов();
ГиперссылкаФайлов.Размещение = "КоманднаяПанель";
МодульРаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ГиперссылкаФайлов);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -29,6 +46,13 @@
ОбновитьДоступностьКомандОстановки(); ОбновитьДоступностьКомандОстановки();
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -36,6 +60,13 @@
ИнициализацияФормы(); ИнициализацияФормы();
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -63,6 +94,29 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ИзмененаНастройкаОтложенногоСтарта" Тогда
Отложен = (Параметр.Отложен И Параметр.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту"));
ДатаОтложенногоСтарта = Параметр.ДатаОтложенногоСтарта;
УстановитьСвойстваЭлементовФормы(ЭтотОбъект);
КонецЕсли;
// СтандартныеПодсистемы.РаботаСФайлами
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
ПроверитьДатуЗавершенияОтложенногоПроцесса(ТекущийОбъект, Отказ);
КонецПроцедуры
&НаСервере &НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
@ -78,6 +132,27 @@
Процедура ПослеЗаписи(ПараметрыЗаписи) Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_Задание", ПараметрыЗаписи, Объект.Ссылка); Оповестить("Запись_Задание", ПараметрыЗаписи, Объект.Ссылка);
Оповестить("Запись_ЗадачаИсполнителя", ПараметрыЗаписи, Неопределено); Оповестить("Запись_ЗадачаИсполнителя", ПараметрыЗаписи, Неопределено);
Если ПараметрыЗаписи.Свойство("Старт") И ПараметрыЗаписи.Старт Тогда
ПодключитьОбработчикОжидания("ОбновитьФорму", 0.2, Истина);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьФорму()
УстановитьСвойстваЭлементовФормы(ЭтотОбъект);
ОбновитьДоступностьКомандОстановки();
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -107,6 +182,12 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ИнфоНадписьЗаголовокОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ОткрытьНастройкуОтложенногоСтарта();
КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ИсполнительНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) Процедура ИсполнительНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
@ -267,6 +348,40 @@
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент,
ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
@ -300,6 +415,23 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура НастроитьОтложенныйСтарт(Команда)
ОткрытьНастройкуОтложенногоСтарта();
КонецПроцедуры
// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСФайламиКлиент");
МодульРаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецЕсли;
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@ -353,57 +485,22 @@
НачальныйПризнакСтарта = Объект.Стартован; НачальныйПризнакСтарта = Объект.Стартован;
ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); УстановитьРеквизитыОтложенногоСтарта();
Элементы.СрокИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач;
Элементы.СрокПроверкиВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач");
Элементы.Дата.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); ИзменятьЗаданияЗаднимЧислом = ПолучитьФункциональнуюОпцию("ИзменятьЗаданияЗаднимЧислом");
ИспользоватьПодчиненныеБизнесПроцессы = ПолучитьФункциональнуюОпцию("ИспользоватьПодчиненныеБизнесПроцессы");
Элементы.Предмет.Гиперссылка = Объект.Предмет <> Неопределено И НЕ Объект.Предмет.Пустая();
ПредметСтрокой = ОбщегоНазначения.ПредметСтрокой(Объект.Предмет); ПредметСтрокой = ОбщегоНазначения.ПредметСтрокой(Объект.Предмет);
Элементы.ГруппаСостояние.Видимость = Объект.Завершен Или Объект.Стартован;
Если Объект.Завершен Тогда
ДатаЗавершенияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач,
Формат(Объект.ДатаЗавершения, "ДЛФ=DT"), Формат(Объект.ДатаЗавершения, "ДЛФ=D"));
ТекстСостояния = ?(Объект.Выполнено,
НСтр("ru = 'Задание выполнено %1.'"),
НСтр("ru = 'Задание отменено %1.'"));
Элементы.ДекорацияТекст.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСостояния, ДатаЗавершенияСтрокой);
Для каждого Элемент Из Элементы Цикл
Если ТипЗнч(Элемент) <> Тип("ПолеФормы") И ТипЗнч(Элемент) <> Тип("ГруппаФормы") Тогда
Продолжить;
КонецЕсли;
Элемент.ТолькоПросмотр = Истина;
КонецЦикла;
Иначе
ТекстСостояния = ?(ПолучитьФункциональнуюОпцию("ИзменятьЗаданияЗаднимЧислом"),
НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания
|вступят в силу немедленно для ранее выданной задачи.'"),
НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания
|не будут отражены в ранее выданной задаче.'"));
Элементы.ДекорацияТекст.Заголовок = ТекстСостояния;
КонецЕсли;
Элементы.ФормаСтартИЗакрыть.Видимость = Не Объект.Стартован;
Элементы.ФормаСтартИЗакрыть.КнопкаПоУмолчанию = Не Объект.Стартован;
Элементы.ФормаСтарт.Видимость = Не Объект.Стартован;
Элементы.ФормаЗаписатьИЗакрыть.Видимость = Объект.Стартован;
Элементы.ФормаЗаписатьИЗакрыть.КнопкаПоУмолчанию = Объект.Стартован;
Если Объект.ГлавнаяЗадача = Неопределено Или Объект.ГлавнаяЗадача.Пустая() Тогда Если Объект.ГлавнаяЗадача = Неопределено Или Объект.ГлавнаяЗадача.Пустая() Тогда
Элементы.ГлавнаяЗадача.Гиперссылка = Ложь;
ГлавнаяЗадачаСтрокой = НСтр("ru = 'не задана'"); ГлавнаяЗадачаСтрокой = НСтр("ru = 'не задана'");
Иначе Иначе
ГлавнаяЗадачаСтрокой = Строка(Объект.ГлавнаяЗадача); ГлавнаяЗадачаСтрокой = Строка(Объект.ГлавнаяЗадача);
КонецЕсли; КонецЕсли;
Если Не ПолучитьФункциональнуюОпцию("ИспользоватьПодчиненныеБизнесПроцессы") Тогда УстановитьСвойстваЭлементовФормы(ЭтотОбъект);
Элементы.ГлавнаяЗадача.Видимость = Ложь;
КонецЕсли;
УстановитьДоступностьПроверяющего(ЭтотОбъект);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -411,18 +508,18 @@
Если Объект.Завершен Тогда Если Объект.Завершен Тогда
Элементы.ФормаОстановить.Доступность = Ложь; Элементы.ФормаОстановить.Видимость = Ложь;
Элементы.ФормаПродолжить.Доступность = Ложь; Элементы.ФормаПродолжить.Видимость = Ложь;
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Объект.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияБизнесПроцессов.Остановлен") Тогда Если Объект.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияБизнесПроцессов.Остановлен") Тогда
Элементы.ФормаОстановить.Доступность = Ложь; Элементы.ФормаОстановить.Видимость = Ложь;
Элементы.ФормаПродолжить.Доступность = Истина; Элементы.ФормаПродолжить.Видимость = Истина;
Иначе Иначе
Элементы.ФормаОстановить.Доступность = Истина; Элементы.ФормаОстановить.Видимость = Объект.Стартован;
Элементы.ФормаПродолжить.Доступность = Ложь; Элементы.ФормаПродолжить.Видимость = Ложь;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -442,4 +539,161 @@
КонецФункции КонецФункции
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьСвойстваЭлементовФормы(Форма)
Если Форма.ТолькоПросмотр Тогда
Форма.Элементы.ФормаОстановить.Видимость = Ложь;
Форма.Элементы.ФормаЗаписатьИЗакрыть.Видимость = Ложь;
Форма.Элементы.ФормаНастроитьОтложенныйСтарт.Видимость = Ложь;
Форма.Элементы.ФормаЗаписать.Видимость = Ложь;
Форма.Элементы.ФормаПродолжить.Видимость = Ложь;
Иначе
ОбъектСтартован = ОбъектСтартован(Форма);
Форма.Элементы.СрокИсполненияВремя.Видимость = Форма.ИспользоватьДатуИВремяВСрокахЗадач;
Форма.Элементы.СрокПроверкиВремя.Видимость = Форма.ИспользоватьДатуИВремяВСрокахЗадач;
Форма.Элементы.Дата.Формат = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D");
Форма.Элементы.Предмет.Гиперссылка = Форма.Объект.Предмет <> Неопределено И НЕ Форма.Объект.Предмет.Пустая();
Форма.Элементы.ФормаСтартИЗакрыть.Видимость = Не ОбъектСтартован;
Форма.Элементы.ФормаСтартИЗакрыть.КнопкаПоУмолчанию = Не ОбъектСтартован;
Форма.Элементы.ФормаСтарт.Видимость = Не ОбъектСтартован;
Форма.Элементы.ФормаНастроитьОтложенныйСтарт.Видимость = Не ОбъектСтартован;
Форма.Элементы.ФормаЗаписатьИЗакрыть.Видимость = ?(Форма.Объект.Завершен, Ложь, ОбъектСтартован);
Форма.Элементы.ФормаЗаписать.Видимость = НЕ Форма.Объект.Завершен;
Форма.Элементы.ФормаЗаписатьИЗакрыть.КнопкаПоУмолчанию = ОбъектСтартован;
Форма.Элементы.ФормаНастроитьОтложенныйСтарт.Доступность = Не Форма.Объект.Стартован;
Если Форма.Объект.ГлавнаяЗадача = Неопределено Или Форма.Объект.ГлавнаяЗадача.Пустая() Тогда
Форма.Элементы.ГлавнаяЗадача.Гиперссылка = Ложь;
КонецЕсли;
Если Не Форма.ИспользоватьПодчиненныеБизнесПроцессы Тогда
Форма.Элементы.ГлавнаяЗадача.Видимость = Ложь;
КонецЕсли;
КонецЕсли;
УстановитьСвойстваГруппеСостояний(Форма);
УстановитьДоступностьПроверяющего(Форма);
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьСвойстваГруппеСостояний(Форма)
ОтображатьГруппу = Форма.Объект.Завершен Или ОбъектСтартован(Форма);
Форма.Элементы.ГруппаСостояние.Видимость = ОтображатьГруппу;
Если НЕ ОтображатьГруппу Тогда
Возврат;
КонецЕсли;
МассивСтрок = Новый Массив;
Высота = 1;
Если Форма.Объект.Завершен Тогда
ДатаЗавершенияСтрокой = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач,
Формат(Форма.Объект.ДатаЗавершения, "ДЛФ=DT"), Формат(Форма.Объект.ДатаЗавершения, "ДЛФ=D"));
СтрокаТекста = ?(Форма.Объект.Выполнено,
НСтр("ru = 'Задание выполнено %1.'"),
НСтр("ru = 'Задание отменено %1.'"));
ТекстСостояния = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаТекста, ДатаЗавершенияСтрокой);
МассивСтрок.Добавить(ТекстСостояния);
Для каждого Элемент Из Форма.Элементы Цикл
Если ТипЗнч(Элемент) <> Тип("ПолеФормы") И ТипЗнч(Элемент) <> Тип("ГруппаФормы") Тогда
Продолжить;
КонецЕсли;
Элемент.ТолькоПросмотр = Истина;
КонецЦикла;
ИначеЕсли Форма.Объект.Стартован Тогда
ТекстСостояния = ?(Форма.ИзменятьЗаданияЗаднимЧислом,
НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания вступят в силу немедленно для ранее выданной задачи.'"),
НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания не будут отражены в ранее выданной задаче.'"));
МассивСтрок.Добавить(ТекстСостояния);
Высота = 2;
ИначеЕсли Форма.Отложен Тогда
ДатаОтложенногоСтартаСтрокой = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач,
Формат(Форма.ДатаОтложенногоСтарта, "ДЛФ=DT"), Формат(Форма.ДатаОтложенногоСтарта, "ДЛФ=D"));
ТекстСостояния = НСтр("ru = 'Задание будет запущено'") + " ";
МассивСтрок.Добавить(ТекстСостояния);
МассивСтрок.Добавить(Новый ФорматированнаяСтрока(ДатаОтложенногоСтартаСтрокой,,,, "ОткрытьНастройкуОтложенногоСтарта"));
КонецЕсли;
Форма.ИнфоНадписьЗаголовок = Новый ФорматированнаяСтрока(МассивСтрок);
Форма.Элементы.ИнфоНадписьЗаголовок.МаксимальнаяВысота = Высота;
КонецПроцедуры
&НаСервере
Процедура ПроверитьДатуЗавершенияОтложенногоПроцесса(ПроверяемыйОбъект, Отказ)
Если Не ЗначениеЗаполнено(ПроверяемыйОбъект.СрокИсполнения) Тогда
Возврат;
КонецЕсли;
ДатаОтложенногоСтарта = БизнесПроцессыИЗадачиСервер.ДатаОтложенногоСтартаПроцесса(ПроверяемыйОбъект.Ссылка);
Если ПроверяемыйОбъект.СрокИсполнения < ДатаОтложенногоСтарта Тогда
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Срок исполнения задания не может быть меньше даты отложенного старта.'"),,
"СрокИсполнения", "Объект.СрокИсполнения");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьНастройкуОтложенногоСтарта()
Если КлючевыеРеквизитыФормыЗаполнены() Тогда
БизнесПроцессыИЗадачиКлиент.НастроитьОтложенныйСтарт(Объект.Ссылка, Объект.СрокИсполнения);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Функция КлючевыеРеквизитыФормыЗаполнены()
Если Объект.Стартован Тогда
Возврат Истина;
КонецЕсли;
ОчиститьСообщения();
РеквизитыФормыЗаполнены = Истина;
Если НЕ ЗначениеЗаполнено(Объект.Исполнитель) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Исполнитель"" не заполнено.'"),,
"Исполнитель", "Объект.Исполнитель");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Объект.Наименование) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Задание"" не заполнено.'"),,
"Исполнитель", "Объект.Наименование");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(Объект.СрокИсполнения) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Поле ""Срок"" исполнения не заполнено.'"),,
"СрокИсполнения", "Объект.СрокИсполнения");
РеквизитыФормыЗаполнены = Ложь;
КонецЕсли;
Возврат РеквизитыФормыЗаполнены;
КонецФункции
&НаКлиентеНаСервереБезКонтекста
Функция ОбъектСтартован(Форма)
Возврат Форма.Объект.Стартован ИЛИ Форма.Отложен;
КонецФункции
&НаСервере
Процедура УстановитьРеквизитыОтложенногоСтарта()
ДатаОтложенногоСтарта = БизнесПроцессыИЗадачиСервер.ДатаОтложенногоСтартаПроцесса(Объект.Ссылка);
Отложен = (ДатаОтложенногоСтарта <> '00010101');
КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,13 +1,12 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Предназначено для постановки и проверки выполнения произвольных <a href="Task.ЗадачаИсполнителя/Help">задач</a>.</p> <p>Предназначено для постановки и проверки выполнения произвольных <a href="Task.ЗадачаИсполнителя/Help">задач</a>.</p>
<p>Можно запустить из документа программы по команде <strong>Создать на основании</strong> (из бизнес-процесса также, при соответствующих настройках - такое задание станет подчиненным бизнес-процессом). Также можно начать новый <a href="v8help://1cv8/EnterprWorkingWithBusinessProcesses_StandardInterface">бизнес-процесс</a> <strong>Задание</strong> по команде <strong>Создать</strong> в списке <a href="BusinessProcess.Задание/Help">Задания</a>.</p> <p>Можно запустить из документа программы по команде <strong>Создать на основании</strong> (из бизнес-процесса также, для этого необходимы <a href="DataProcessor.ПанельАдминистрированияБСП.Form.Органайзер/Help">настройки</a> - такое задание станет подчиненным бизнес-процессом). Также можно начать новый <a href="v8help://1cv8/EnterprWorkingWithBusinessProcesses_StandardInterface">бизнес-процесс</a> <strong>Задание</strong> по команде <strong>Создать</strong> в списке <a href="BusinessProcess.Задание/Help">Задания</a>.</p>
<h3>Сведения о задании</h3> <h3>Сведения о задании</h3>
<ul><li><strong>Главная задача</strong> - заполняется программой автоматически, если бизнес-процесс является подчиненным. По ссылке в этом поле можно просмотреть данные о главном бизнес-процессе. <ul><li><strong>Главная задача</strong> - заполняется программой автоматически, если бизнес-процесс является подчиненным. По ссылке в этом поле можно просмотреть данные о главном бизнес-процессе.
</li><li><strong>Задание</strong> - напишите заголовок задания, который будет показан в списках бизнес-процессов. Поле является обязательным для заполнения. </li><li><strong>Задание</strong> - напишите заголовок задания, который будет показан в списках бизнес-процессов. Поле является обязательным для заполнения.
</li><li><strong>Важность</strong> - принимает значения <strong>Обычная</strong> (по умолчанию), <strong>Низкая</strong>, <strong>Высокая</strong>. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующее значение этого поля. </li><li><strong>Важность</strong> - принимает значения <strong>Обычная</strong> (по умолчанию), <strong>Низкая</strong>, <strong>Высокая</strong>. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующее значение этого поля.
<ul><a name="СтандартныеПодсистемы.Пользователи"> <ul><a name="СтандартныеПодсистемы.Пользователи"></a></ul></li><li><strong>Исполнитель</strong> - выберите исполнителя из списка <a href="Catalog.Пользователи/Help">пользователей</a> программы или из списка <a href="CommonForm.ВыборИсполнителяБизнесПроцесса/Help">исполнителей</a>. Поля является обязательным для заполнения.
<li><strong>Исполнитель</strong> - выберите исполнителя из списка <a href="Catalog.Пользователи/Help">пользователей</a> программы или из списка <a href="CommonForm.ВыборИсполнителяБизнесПроцесса/Help">исполнителей</a>. Поля является обязательным для заполнения. </li></a> </li><li><strong>Срок</strong> - укажите дату и время, когда нужно выполнить задание.
<li><strong>Срок</strong> - укажите дату и время, когда нужно выполнить задание.
</li><li><strong>Предмет</strong> - автоматически проставляется документ программы, на основании которого создано задание. </li><li><strong>Предмет</strong> - автоматически проставляется документ программы, на основании которого создано задание.
</li><li>В текстовом поле ниже можно при необходимости более подробно объяснить суть задания. Недоступно для подчиненных бизнес-процессов. </li><li>В текстовом поле ниже можно при необходимости более подробно объяснить суть задания. Недоступно для подчиненных бизнес-процессов.
</li><li> </li><li>
@ -16,19 +15,33 @@
<div>назначить проверяющего из списка пользователей;</div> <div>назначить проверяющего из списка пользователей;</div>
</li><li> </li><li>
<div>ввести <strong>Срок</strong> - дату и время, до которого надо проверить выполнение задания. Если срок не заполнен, то проверка не производится.</div></li></ul></li><li> <div>ввести <strong>Срок</strong> - дату и время, до которого надо проверить выполнение задания. Если срок не заполнен, то проверка не производится.</div></li></ul></li><li>
<ul><a name="СтандартныеПодсистемы.Пользователи"> <div><a name="СтандартныеПодсистемы.Пользователи"><strong>Автор</strong> - автоматически проставляется программой текущий </a><a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователь</a>. Автора можно назначить из списка <strong>Пользователи</strong>.</div>
<div><strong>Автор</strong> - автоматически проставляется программой текущий <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователь</a>. Автора можно назначить из списка <strong>Пользователи</strong>.</div></a> </li><li>
<li>
<div><strong>Начато</strong> - дата ввода задания. Заполняется программой автоматически. Поле не подлежит редактированию.</div></li></ul><h3>Старт бизнес-процесса</h3> <div><strong>Начато</strong> - дата ввода задания. Заполняется программой автоматически. Поле не подлежит редактированию.</div></li></ul><h3>Старт бизнес-процесса</h3>
<ul><li>После того как задание заполнено, нажмите кнопку <strong>Стартовать и закрыть</strong>, для того чтобы сохранить <strong>Задание</strong>, начать бизнес-процесс и вернуться в программу. <ul><li>После того как задание заполнено, нажмите кнопку <strong>Стартовать и закрыть</strong>, для того чтобы сохранить <strong>Задание</strong>, начать бизнес-процесс и вернуться в программу.
</li><li>Для того чтобы начать бизнес-процесс, можно также воспользоваться командой <strong>Старт</strong>. В этом случае программа сохранит задание, начнет бизнес-процесс, но задание останется открытым. </li><li>Для того чтобы начать бизнес-процесс, можно также воспользоваться командой <strong>Старт</strong>. В этом случае программа сохранит задание, начнет бизнес-процесс, но задание останется открытым.
</li><li>Программа автоматически формирует  задачи, из которых состоит бизнес-процесс <strong>Задание</strong>:  </li><li>Программа автоматически формируетзадачи, из которых состоит бизнес-процесс <strong>Задание</strong>:
<ul><li><a href="BusinessProcess.Задание.Form.ДействиеВыполнить/Help">выполнение задания</a>; <ul><li><a href="BusinessProcess.Задание.Form.ДействиеВыполнить/Help">выполнение задания</a>;
<ul><li>после выполнения этой задачи в зависимости от настроек задание становится выполненным или формируется задача <a href="BusinessProcess.Задание.Form.ДействиеПроверить/Help">проверка выполнения</a>. </li></ul></li></ul></li><li>Для того чтобы записать черновик задания, но не стартовать его, нажмите <strong>Записать</strong>. Такое задание можно дозаполнить и стартовать позднее, в более подходящий момент времени из списка заданий или открыв задание.</li></ul><h3>Управление движением бизнес-процесса</h3> <ul><li>после выполнения этой задачи в зависимости от настроек задание становится выполненным или формируется задача <a href="BusinessProcess.Задание.Form.ДействиеПроверить/Help">проверка выполнения</a>. </li></ul></li></ul></li><li>Для того чтобы записать черновик задания, но не стартовать его, нажмите <strong>Записать</strong>. Такое задание можно дозаполнить и стартовать позднее, в более подходящий момент времени из списка заданий или открыв задание.</li></ul><h3>Отложенный старт бизнес-процесса</h3>
<ul><li>Для того чтобы <strong>Остановить</strong> или <strong>Продолжить</strong> бизнес-процесс, воспользуйтесь соответствующими командами (активна одна из команд). Остановленный бизнес-процесс в списке выделяется значком <img src="CommonPicture.ЗнакСтоп"></img>.</li></ul><h3>Просмотр карты маршрута</h3> <ul><li>
<div>Имеется возможность начать бизнес-процесс не сразу, а отложить его старт на определенное время. Например, можно запланировать старт на завтра или через неделю.</div>
</li><li>
<div>Для настройки отложенного старта задания после заполнения всех необходимых полей нажмите кнопку <img src="CommonPicture.ПроцессОтложен"></img>.</div>
<ul><li>
<div>В открывшемся окне включите флажок <strong>Отложенный старт задания</strong>.</div>
</li><li>
<div>Заполните поля <strong>Дата</strong> и <strong>Время</strong> - укажите, когда нужно начать бизнес-процесс. В нижней части окна отразится, через сколько дней и часов будет запущено задание.</div>
</li><li>
<div>Нажмите кнопку <strong>Готово</strong>.</div></li></ul></li><li>
<div>После этого в карточке бизнес-процесса выводится сообщение со ссылкой, в которой указывается дата и время отложенного старта.</div>
</li><li>
<div>Для запуска отложенных бизнес-процессов в нужное время необходимо настроить регламентное задание <strong>Старт отложенных бизнес-процессов</strong>.</div>
</li><li>
<div>После того как задание стартовано, кнопка отложенного старта становится неактивной.</div></li></ul><h3>Управление движением бизнес-процесса</h3>
<ul><li>Для того чтобы <strong>Остановить</strong> или <strong>Продолжить</strong> бизнес-процесс, воспользуйтесь соответствующими кнопками (активна одна из кнопок). Остановленный бизнес-процесс в некоторых списках выделяется значком <img src="CommonPicture.ЗнакСтоп"></img>.</li></ul><h3>Просмотр карты маршрута</h3>
<ul><li>Нажмите кнопку <img src="StdPicture.BusinessProcess"></img> <strong>Открыть карту маршрута бизнес-процесса</strong>, для того чтобы посмотреть бизнес-процесс в наглядной форме. <ul><li>Нажмите кнопку <img src="StdPicture.BusinessProcess"></img> <strong>Открыть карту маршрута бизнес-процесса</strong>, для того чтобы посмотреть бизнес-процесс в наглядной форме.
</li><li>Также можно воспользоваться командой <strong>Еще</strong> <strong>- Карта маршрута</strong>. </li><li>Также можно воспользоваться командой <strong>Еще</strong> <strong>- Карта маршрута</strong>.
</li><li><a href="DataProcessor.КартаМаршрутаБизнесПроцесса/Help">Карта маршрута</a> описывает логику бизнес-процесса и весь его жизненный цикл в виде схематического изображения - последовательности прохождения точек маршрута.</li></ul><h3>Просмотр задач</h3> </li><li><a href="DataProcessor.КартаМаршрутаБизнесПроцесса/Help">Карта маршрута</a> описывает логику бизнес-процесса и весь его жизненный цикл в виде схематического изображения - последовательности прохождения точек маршрута.</li></ul><h3>Просмотр задач</h3>
<ul><li>Для того чтобы просмотреть <a href="Task.ЗадачаИсполнителя.Form.ЗадачиПоБизнесПроцессу/Help">задачи</a>, из которых состоит данный бизнес-процесс, выполните команду <strong>Задачи</strong> в панели навигации. Если задание не стартовано, то список задач пустой.</li></ul><h3>См. также:</h3> <ul><li>Для того чтобы просмотреть <a href="Task.ЗадачаИсполнителя.Form.ЗадачиПоБизнесПроцессу/Help">задачи</a>, из которых состоит данный бизнес-процесс, выполните команду <strong>Задачи</strong> в панели навигации. Если задание не стартовано, то список задач пустой.</li></ul><h3>См. также:</h3>
<ul><li> <ul><li>
<div><a href="v8help://frame/form_common">Работа с формами</a>.</div></li></ul></li></ul></li></ul></body></html> <div><a href="v8help://frame/form_common">Работа с формами</a>.</div></li></ul></body></html>

View File

@ -1,6 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<CommandBarLocation>None</CommandBarLocation> <CommandBarLocation>None</CommandBarLocation>
<MobileDeviceCommandBarContent>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">КоманднаяПанель</xr:Value>
</xr:Item>
</MobileDeviceCommandBarContent>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Events> <Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
@ -14,7 +21,6 @@
<v8:content>Отборы</v8:content> <v8:content>Отборы</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>Horizontal</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПоРеквизитамExtendedTooltip" id="59"/> <ExtendedTooltip name="ГруппаПоРеквизитамExtendedTooltip" id="59"/>
@ -22,7 +28,6 @@
<InputField name="ПоАвтору" id="14"> <InputField name="ПоАвтору" id="14">
<DataPath>ПоАвтору</DataPath> <DataPath>ПоАвтору</DataPath>
<Width>35</Width> <Width>35</Width>
<HorizontalStretch>false</HorizontalStretch>
<ClearButton>true</ClearButton> <ClearButton>true</ClearButton>
<OpenButton>false</OpenButton> <OpenButton>false</OpenButton>
<ContextMenu name="ПоАвторуКонтекстноеМеню" id="15"/> <ContextMenu name="ПоАвторуКонтекстноеМеню" id="15"/>
@ -34,7 +39,6 @@
<InputField name="ПоИсполнителю" id="17"> <InputField name="ПоИсполнителю" id="17">
<DataPath>ПоИсполнителю</DataPath> <DataPath>ПоИсполнителю</DataPath>
<Width>35</Width> <Width>35</Width>
<HorizontalStretch>false</HorizontalStretch>
<ClearButton>true</ClearButton> <ClearButton>true</ClearButton>
<OpenButton>false</OpenButton> <OpenButton>false</OpenButton>
<ContextMenu name="ПоИсполнителюКонтекстноеМеню" id="18"/> <ContextMenu name="ПоИсполнителюКонтекстноеМеню" id="18"/>
@ -50,7 +54,6 @@
<xr:Common>false</xr:Common> <xr:Common>false</xr:Common>
</UserVisible> </UserVisible>
<Width>35</Width> <Width>35</Width>
<HorizontalStretch>false</HorizontalStretch>
<ClearButton>true</ClearButton> <ClearButton>true</ClearButton>
<OpenButton>false</OpenButton> <OpenButton>false</OpenButton>
<ContextMenu name="ПоПроверяющемуКонтекстноеМеню" id="20"/> <ContextMenu name="ПоПроверяющемуКонтекстноеМеню" id="20"/>
@ -68,8 +71,6 @@
<v8:content>Флажки</v8:content> <v8:content>Флажки</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<HorizontalStretch>true</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ФлажкиExtendedTooltip" id="63"/> <ExtendedTooltip name="ФлажкиExtendedTooltip" id="63"/>
@ -103,7 +104,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<VerticalStretch>false</VerticalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -116,12 +116,6 @@
<v8:content>Командная панель</v8:content> <v8:content>Командная панель</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource> <CommandSource>Form</CommandSource>
<ExtendedTooltip name="КоманднаяПанельExtendedTooltip" id="66"/> <ExtendedTooltip name="КоманднаяПанельExtendedTooltip" id="66"/>
<ChildItems> <ChildItems>
@ -154,10 +148,17 @@
<EnableStartDrag>true</EnableStartDrag> <EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.КартинкаСтроки</RowPictureDataPath>
<SearchStringLocation>None</SearchStringLocation> <RowsPicture>
<ViewStatusLocation>None</ViewStatusLocation> <xr:Ref>CommonPicture.СостоянияПроцессов</xr:Ref>
<SearchControlLocation>None</SearchControlLocation> <xr:LoadTransparent>true</xr:LoadTransparent>
</RowsPicture>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -213,6 +214,12 @@
<ChildItems> <ChildItems>
<PictureField name="ВажностьКартинка" id="24"> <PictureField name="ВажностьКартинка" id="24">
<DataPath>Список.ВажностьКартинка</DataPath> <DataPath>Список.ВажностьКартинка</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Важность</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
@ -234,29 +241,6 @@
<ContextMenu name="ВажностьКартинкаКонтекстноеМеню" id="25"/> <ContextMenu name="ВажностьКартинкаКонтекстноеМеню" id="25"/>
<ExtendedTooltip name="ВажностьКартинкаExtendedTooltip" id="70"/> <ExtendedTooltip name="ВажностьКартинкаExtendedTooltip" id="70"/>
</PictureField> </PictureField>
<PictureField name="Остановлен" id="46">
<DataPath>Список.Остановлен</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Бизнес-процесс остановлен</v8:content>
</v8:item>
</ToolTip>
<HeaderPicture>
<xr:Ref>CommonPicture.ЗнакСтопЧБ</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</HeaderPicture>
<Width>2</Width>
<HorizontalStretch>false</HorizontalStretch>
<ValuesPicture>
<xr:Ref>CommonPicture.ЗнакСтоп</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</ValuesPicture>
<FileDragMode>AsFile</FileDragMode>
<ContextMenu name="ОстановленКонтекстноеМеню" id="47"/>
<ExtendedTooltip name="ОстановленExtendedTooltip" id="71"/>
</PictureField>
<LabelField name="Номер" id="4"> <LabelField name="Номер" id="4">
<DataPath>Список.Number</DataPath> <DataPath>Список.Number</DataPath>
<DefaultItem>true</DefaultItem> <DefaultItem>true</DefaultItem>
@ -317,15 +301,6 @@
<ContextMenu name="СрокПроверкиКонтекстноеМеню" id="45"/> <ContextMenu name="СрокПроверкиКонтекстноеМеню" id="45"/>
<ExtendedTooltip name="СрокПроверкиExtendedTooltip" id="79"/> <ExtendedTooltip name="СрокПроверкиExtendedTooltip" id="79"/>
</LabelField> </LabelField>
<CheckBoxField name="Стартован" id="12">
<DataPath>Список.Started</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="СтартованКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="СтартованExtendedTooltip" id="80"/>
</CheckBoxField>
<LabelField name="ДатаЗавершения" id="38"> <LabelField name="ДатаЗавершения" id="38">
<DataPath>Список.ДатаЗавершения</DataPath> <DataPath>Список.ДатаЗавершения</DataPath>
<Title> <Title>
@ -448,6 +423,22 @@
БизнесПроцессЗадание.РезультатВыполнения, БизнесПроцессЗадание.РезультатВыполнения,
БизнесПроцессЗадание.СрокИсполнения, БизнесПроцессЗадание.СрокИсполнения,
БизнесПроцессЗадание.СрокПроверки, БизнесПроцессЗадание.СрокПроверки,
ВЫБОР
КОГДА БизнесПроцессЗадание.ПометкаУдаления
ТОГДА 6
КОГДА БизнесПроцессЗадание.Завершен = ИСТИНА
ТОГДА 5
КОГДА БизнесПроцессЗадание.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Остановлен)
ТОГДА 4
КОГДА БизнесПроцессЗадание.Стартован = ИСТИНА
ТОГДА 3
КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту)
И ПроцессыДляЗапуска.ДатаОтложенногоСтарта &lt;&gt; ДАТАВРЕМЯ(1, 1, 1)
ТОГДА 1
КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен)
ТОГДА 2
ИНАЧЕ 0
КОНЕЦ КАК КартинкаСтроки,
ВЫБОР ВЫБОР
КОГДА БизнесПроцессЗадание.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая) КОГДА БизнесПроцессЗадание.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая)
ТОГДА 0 ТОГДА 0
@ -460,9 +451,16 @@
ТОГДА ИСТИНА ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК Остановлен, КОНЕЦ КАК Остановлен,
БизнесПроцессЗадание.ЗадачаИсточник БизнесПроцессЗадание.ЗадачаИсточник,
ВЫБОР
КОГДА ПроцессыДляЗапуска.Состояние ЕСТЬ NULL
ТОГДА ЛОЖЬ
ИНАЧЕ ИСТИНА
КОНЕЦ КАК Отложен
ИЗ ИЗ
БизнесПроцесс.Задание КАК БизнесПроцессЗадание</QueryText> БизнесПроцесс.Задание КАК БизнесПроцессЗадание
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска
ПО БизнесПроцессЗадание.Ссылка = ПроцессыДляЗапуска.БизнесПроцесс</QueryText>
<MainTable>BusinessProcess.Задание</MainTable> <MainTable>BusinessProcess.Задание</MainTable>
<ListSettings> <ListSettings>
<dcsset:filter> <dcsset:filter>

View File

@ -1,13 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
ПоАвтору = Пользователи.ТекущийПользователь(); ПоАвтору = Пользователи.ТекущийПользователь();
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
@ -18,6 +21,8 @@
Элементы.СрокИсполнения.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); Элементы.СрокИсполнения.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D");
Элементы.СрокПроверки.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); Элементы.СрокПроверки.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D");
БизнесПроцессыИЗадачиСервер.УстановитьОформлениеБизнесПроцессов(Список.УсловноеОформление); БизнесПроцессыИЗадачиСервер.УстановитьОформлениеБизнесПроцессов(Список.УсловноеОформление);
Элементы.ФормаОстановить.Видимость = ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -46,13 +51,17 @@
&НаКлиенте &НаКлиенте
Процедура ПоказыватьЗавершенныеЗаданияПриИзменении(Элемент) Процедура ПоказыватьЗавершенныеЗаданияПриИзменении(Элемент)
УстановитьОтбор(); УстановитьОтбор();
Элементы.Список.Обновить();
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПоказыватьОстановленныеПриИзменении(Элемент) Процедура ПоказыватьОстановленныеПриИзменении(Элемент)
УстановитьОтбор(); УстановитьОтбор();
Элементы.Список.Обновить();
КонецПроцедуры КонецПроцедуры
@ -81,13 +90,13 @@
&НаСервере &НаСервере
Процедура УстановитьОтбор() Процедура УстановитьОтбор()
ПараметрыОтбора = Новый Соответствие(); ПараметрыОтбора = Новый Соответствие();
ПараметрыОтбора.Вставить("ПоказыватьЗавершенныеЗадания", ПоказыватьЗавершенныеЗадания); ПараметрыОтбора.Вставить("ПоказыватьЗавершенныеЗадания", ПоказыватьЗавершенныеЗадания);
ПараметрыОтбора.Вставить("ПоказыватьОстановленные", ПоказыватьОстановленные); ПараметрыОтбора.Вставить("ПоказыватьОстановленные", ПоказыватьОстановленные);
ПараметрыОтбора.Вставить("ПоАвтору", ПоАвтору); ПараметрыОтбора.Вставить("ПоАвтору", ПоАвтору);
ПараметрыОтбора.Вставить("ПоИсполнителю", ПоИсполнителю); ПараметрыОтбора.Вставить("ПоИсполнителю", ПоИсполнителю);
ПараметрыОтбора.Вставить("ПоПроверяющему", ПоПроверяющему); ПараметрыОтбора.Вставить("ПоПроверяющему", ПоПроверяющему);
УстановитьОтборСписка(ПараметрыОтбора); УстановитьОтборСписка(ПараметрыОтбора);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура УстановитьОтборСписка(ПараметрыОтбора) Процедура УстановитьОтборСписка(ПараметрыОтбора)

View File

@ -544,11 +544,11 @@
</Attribute> </Attribute>
<Attribute uuid="feb41347-62db-41cf-ace0-d8b9de361af3"> <Attribute uuid="feb41347-62db-41cf-ace0-d8b9de361af3">
<Properties> <Properties>
<Name>ПараметрыПрописиНаРусском</Name> <Name>ПараметрыПрописи</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Параметры прописи на русском</v8:content> <v8:content>Параметры прописи</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -565,7 +565,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Параметры прописи валюты на русском языке</v8:content> <v8:content>Настройки представления суммы прописью</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -686,10 +686,8 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Form>ПодборВалютИзКлассификатора</Form>
<Form>ФормаСписка</Form> <Form>ФормаСписка</Form>
<Form>ФормаЭлемента</Form> <Form>ФормаЭлемента</Form>
<Template>ОбщероссийскийКлассификаторВалют</Template>
</ChildObjects> </ChildObjects>
</Catalog> </Catalog>
</MetaDataObject> </MetaDataObject>

View File

@ -1,5 +1,5 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.19355"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Список предназначен для ведения валют, используемых в программе. Необходимые для работы валюты можно подобрать из <a href="Catalog.Валюты.Form.ПодборВалютИзКлассификатора/Help">Общероссийского классификатора валют</a> - ОКВ (рекомендуется) или добавить вручную.</p> <p>Список предназначен для ведения валют, используемых в программе. Необходимые для работы валюты можно подобрать из <a href="DataProcessor.ЗагрузкаКурсовВалют.Form.ПодборВалютИзКлассификатора/Help">Общероссийского классификатора валют</a> - ОКВ (рекомендуется) или добавить вручную.</p>
<p>Открыть список валют можно из раздела <strong>Справочники</strong>.</p> <p>Открыть список валют можно из раздела <strong>Справочники</strong>.</p>
<p>В списке выводится:</p> <p>В списке выводится:</p>
<ul><li> <ul><li>
@ -14,24 +14,19 @@
</li><li> </li><li>
<div><strong>Кратность</strong> - по умолчанию заполнено единицей и не выводится. Если курс какой-либо валюты очень низкий (точность составляет меньше четырех знаков дробной части), то в этом поле указывается количество котировочных единиц. Например, курс вьетнамского донга (VND) составляет 16,1574 руб. за 10000 VND. Состоит из трех вспомогательных колонок, в которых размещается данное выражение:</div> <div><strong>Кратность</strong> - по умолчанию заполнено единицей и не выводится. Если курс какой-либо валюты очень низкий (точность составляет меньше четырех знаков дробной части), то в этом поле указывается количество котировочных единиц. Например, курс вьетнамского донга (VND) составляет 16,1574 руб. за 10000 VND. Состоит из трех вспомогательных колонок, в которых размещается данное выражение:</div>
<ul><li> <ul><li>
<div><strong>Руб</strong>.<strong> за</strong> - логическая связка.</div>
</li><li>
<div><strong>Кратность</strong> - проставляется количество котировочных единиц.</div> <div><strong>Кратность</strong> - проставляется количество котировочных единиц.</div>
</li><li> </li><li>
<div><strong>Краткое наименование</strong> - указывается символьный код валюты</div></li></ul></li></ul><h3>Добавление валюты из Общероссийского классификатора валют (ОКВ)</h3> <div><strong>Краткое наименование</strong> - указывается символьный код валюты</div></li></ul></li></ul><h3>Добавление валюты из Общероссийского классификатора валют (ОКВ)</h3>
<ul><li> <ul><li>
<div>Нажмите <strong>Подобрать из классификатора</strong> (рекомендуется для корректного ввода валюты). </div> <div>Нажмите <strong>Создать - По классификатору</strong> (рекомендуется для корректного ввода валюты). </div>
</li><li> </li><li>
<div>Следующие поля новой валюты будут заполнены из <a href="Catalog.Валюты.Form.ПодборВалютИзКлассификатора/Help">классификатора</a> автоматически: <strong>Наименование</strong>, <strong>Символьный код</strong>, <strong>Цифровой код</strong>, положение переключателя <strong>Курс валюты</strong> (будет установлено положение <strong>загружается из интернета</strong>, если имеется возможность загружать курс этой валюты с сайта РБК). </div></li></ul><h3>Ввод валюты не из классификатора (вручную)</h3> <div>Следующие поля новой валюты будут заполнены из <a href="DataProcessor.ЗагрузкаКурсовВалют.Form.ПодборВалютИзКлассификатора/Help">классификатора</a> автоматически: <strong>Наименование</strong>, <strong>Символьный код</strong>, <strong>Цифровой код</strong>, положение переключателя <strong>Курс валюты</strong> (будет установлено положение <strong>загружается из интернета</strong>, если имеется возможность загружать курс этой валюты с сайта ). </div></li></ul><h3>Ввод валюты не из классификатора (вручную)</h3>
<ul><li> <ul><li>
<div>Нажмите <strong>Создать</strong>.</div> <div>Нажмите <strong>Создать - Новую</strong>. Также можно нажать клавишу <strong>Ins</strong>.</div>
</li><li> </li><li>Заполните <a href="Catalog.Валюты.Form.ФормаЭлемента/Help">сведения о валюте</a>.</li></ul><h3>Загрузка курсов валют</h3>
<div>В ответ на вопрос программы о подборе из ОКВ нажмите <strong>Нет</strong>.</div>
</li><li>
<div>Заполните <a href="Catalog.Валюты.Form.ФормаЭлемента/Help">сведения о валюте</a>.</div></li></ul><h3>Загрузка курсов валют</h3>
<ul><li> <ul><li>
<div>Нажмите <strong>Загрузить курсы валют</strong> для перехода к <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загрузке курсов валют</a> с сайта РБК</div> <div>Нажмите <strong>Загрузить курсы валют</strong> для перехода к <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загрузке курсов валют</a> с сайта 1С. </div>
</li><li> </li><li>
<div>Также в программе предусмотрено <a href="DataProcessor.РегламентныеИФоновыеЗадания/Help">регламентное задание</a> "Загрузка курсов валют" для автоматической загрузки курсов валют с сайта РБК.</div></li></ul><h3>См. также:</h3> <div>Также в программе предусмотрено <a href="DataProcessor.РегламентныеИФоновыеЗадания/Help">регламентное задание</a> <strong>Загрузка курсов валют</strong> для автоматической загрузки курсов валют с сайта 1С.</div></li></ul><h3>См. также:</h3>
<ul><li> <ul><li>
<div><a href="v8help://frame/form_common">Работа с формами</a></div></li></ul></body></html> <div><a href="v8help://frame/form_common">Работа с формами</a></div></li></ul></body></html>

View File

@ -1,9 +1,18 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
//////////////////////////////////////////////////////////////////////////////// #Область ДляВызоваИзДругихПодсистем
// Групповое изменение объектов.
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые разрешается редактировать // Возвращает реквизиты объекта, которые разрешается редактировать
// с помощью обработки группового изменения реквизитов. // с помощью обработки группового изменения реквизитов.
@ -21,45 +30,10 @@
КонецФункции КонецФункции
//////////////////////////////////////////////////////////////////////////////// // Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Загрузка данных из файла
// Запрещает загрузку данных в этот справочник из подсистемы "ЗагрузкаДанныхИзФайла".
// Т.к. справочник реализует свой метод обновления данных.
//
Функция ИспользоватьЗагрузкуДанныхИзФайла() Экспорт
Возврат Ложь;
КонецФункции
#КонецОбласти #КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Отключает у валюты 643 загрузку из интернета.
Процедура ОтключитьЗагрузкуКурсаВалюты643ИзИнтернета(Параметры) Экспорт
ТекстЗапроса =
"ВЫБРАТЬ
| Валюты.Ссылка
|ИЗ
| Справочник.Валюты КАК Валюты
|ГДЕ
| Валюты.Код = ""643""
| И Валюты.СпособУстановкиКурса = ЗНАЧЕНИЕ(Перечисление.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета)";
Запрос = Новый Запрос(ТекстЗапроса);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Валюта = Выборка.Ссылка.ПолучитьОбъект();
Валюта.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РучнойВвод;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(Валюта);
КонецЦикла;
Параметры.ОбработкаЗавершена = Истина;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли

View File

@ -1,4 +1,12 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
@ -37,7 +45,7 @@
КонецЕсли; КонецЕсли;
Если Отказ Тогда Если Отказ Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Курс валюты можно связать только с курсом независимой валюты.'")); НСтр("ru = 'Курс валюты можно связать только с курсом независимой валюты.'"));
КонецЕсли; КонецЕсли;
@ -57,73 +65,46 @@
Если Не ЭтоНовый() Если Не ЭтоНовый()
И СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты И СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты
И РаботаСКурсамиВалют.СписокЗависимыхВалют(Ссылка).Количество() > 0 Тогда И РаботаСКурсамиВалют.СписокЗависимыхВалют(Ссылка).Количество() > 0 Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Валюта не может быть подчиненной, так как она является основной для других валют.'")); НСтр("ru = 'Валюта не может быть подчиненной, так как она является основной для других валют.'"));
Отказ = Истина; Отказ = Истина;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(Ссылка);
Если ДополнительныеСвойства.Свойство("ОбновитьКурсы") Тогда
ПараметрыВалюты = Новый Структура;
ПараметрыВалюты.Вставить("ОсновнаяВалюта");
ПараметрыВалюты.Вставить("Ссылка");
ПараметрыВалюты.Вставить("Наценка");
ПараметрыВалюты.Вставить("ДополнительныеСвойства");
ПараметрыВалюты.Вставить("ФормулаРасчетаКурса");
ЗаполнитьЗначенияСвойств(ПараметрыВалюты, ЭтотОбъект);
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("ПодчиненнаяВалюта", ПараметрыВалюты);
ПараметрыЗадания.Вставить("СпособУстановкиКурса", СпособУстановкиКурса);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор());
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.Валюты");
ЭлементБлокировки.УстановитьЗначение("Ссылка", Ссылка);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();
Результат = ДлительныеОперации.ВыполнитьВФоне("РаботаСКурсамиВалют.ОбновитьКурсВалюты", ПараметрыЗадания, ПараметрыВыполнения);
Если Результат.Статус = "Ошибка" Тогда
ВызватьИсключение Результат.КраткоеПредставлениеОшибки;
КонецЕсли;
Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда
РаботаСКурсамиВалют.ПриОбновленииКурсовВалютВМоделиСервиса(ЭтотОбъект);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Процедура ПередЗаписью(Отказ) Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда Если ОбменДанными.Загрузка Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
КурсЗагружаетсяИзИнтернета = СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета;
КурсЗависитОтДругойВалюты = СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты;
КурсРассчитываетсяПоФормуле = СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РасчетПоФормуле;
Если ЭтоНовый() Тогда Если ЭтоНовый() Тогда
ДополнительныеСвойства.Вставить("ОбновитьКурсы"); Если КурсЗависитОтДругойВалюты Или КурсРассчитываетсяПоФормуле Тогда
ДополнительныеСвойства.Вставить("ОбновитьКурсы");
КонецЕсли;
ДополнительныеСвойства.Вставить("ЭтоНовый"); ДополнительныеСвойства.Вставить("ЭтоНовый");
ДополнительныеСвойства.Вставить("ЗапланироватьКопированиеКурсовВалюты");
Иначе Иначе
ПредыдущиеЗначения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "Код,СпособУстановкиКурса,ОсновнаяВалюта,Наценка,ФормулаРасчетаКурса"); ПредыдущиеЗначения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "Код,СпособУстановкиКурса,ОсновнаяВалюта,Наценка,ФормулаРасчетаКурса");
Если (ПредыдущиеЗначения.СпособУстановкиКурса <> СпособУстановкиКурса)
Или (СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета ПоменялсяСпособУстановкиКурса = ПредыдущиеЗначения.СпособУстановкиКурса <> СпособУстановкиКурса;
И ПредыдущиеЗначения.Код <> Код) ПоменялсяКодВалюты = ПредыдущиеЗначения.Код <> Код;
Или (СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты ПоменяласьОсновнаяВалюта = ПредыдущиеЗначения.ОсновнаяВалюта <> ОсновнаяВалюта;
И (ПредыдущиеЗначения.ОсновнаяВалюта <> ОсновнаяВалюта Или ПредыдущиеЗначения.Наценка <> Наценка)) ПоменяласьНаценка = ПредыдущиеЗначения.Наценка <> Наценка;
Или (СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РасчетПоФормуле ПоменяласьФормула = ПредыдущиеЗначения.ФормулаРасчетаКурса <> ФормулаРасчетаКурса;
И ПредыдущиеЗначения.ФормулаРасчетаКурса <> ФормулаРасчетаКурса) Тогда
Если (КурсЗависитОтДругойВалюты И (ПоменяласьОсновнаяВалюта Или ПоменяласьНаценка Или ПоменялсяСпособУстановкиКурса))
Или (КурсРассчитываетсяПоФормуле И (ПоменяласьФормула Или ПоменялсяСпособУстановкиКурса)) Тогда
ДополнительныеСвойства.Вставить("ОбновитьКурсы"); ДополнительныеСвойства.Вставить("ОбновитьКурсы");
КонецЕсли; КонецЕсли;
Если КурсЗагружаетсяИзИнтернета И (ПоменялсяСпособУстановкиКурса Или ПоменялсяКодВалюты) Тогда
ДополнительныеСвойства.Вставить("ЗапланироватьКопированиеКурсовВалюты");
КонецЕсли;
КонецЕсли; КонецЕсли;
Если СпособУстановкиКурса <> Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты Тогда Если СпособУстановкиКурса <> Перечисления.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты Тогда
@ -137,6 +118,79 @@
КонецПроцедуры КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ОбновитьКурсы") И ВыполняетсяФоновыйПересчетКурсов() Тогда
ВызватьИсключение НСтр("ru = 'Не удалось записать валюту, так как еще не завершился фоновый пересчет курсов.
|Попробуйте записать валюту позже.'");
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ОбновитьКурсы") Тогда
НачатьФоновоеОбновлениеКурсовВалюты();
Иначе
РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(Ссылка);
КонецЕсли;
Если ДополнительныеСвойства.Свойство("ЗапланироватьКопированиеКурсовВалюты") Тогда
ЗапланироватьКопированиеКурсовВалюты();
КонецЕсли;
КонецПроцедуры
Функция ВыполняетсяФоновыйПересчетКурсов()
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Наименование", "РаботаСКурсамиВалют.ОбновитьКурсВалюты");
ПараметрыЗадания.Вставить("Состояние", СостояниеФоновогоЗадания.Активно);
Возврат ОбщегоНазначения.ИнформационнаяБазаФайловая()
И ФоновыеЗадания.ПолучитьФоновыеЗадания(ПараметрыЗадания).Количество() > 0;
КонецФункции
Процедура НачатьФоновоеОбновлениеКурсовВалюты()
ПараметрыВалюты = Новый Структура;
ПараметрыВалюты.Вставить("ОсновнаяВалюта");
ПараметрыВалюты.Вставить("Ссылка");
ПараметрыВалюты.Вставить("Наценка");
ПараметрыВалюты.Вставить("ДополнительныеСвойства");
ПараметрыВалюты.Вставить("ФормулаРасчетаКурса");
ПараметрыВалюты.Вставить("СпособУстановкиКурса");
ЗаполнитьЗначенияСвойств(ПараметрыВалюты, ЭтотОбъект);
ПараметрыЗадания = Новый Структура;
ПараметрыЗадания.Вставить("Валюта", ПараметрыВалюты);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор());
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьНеВФоне = ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы();
Результат = ДлительныеОперации.ВыполнитьВФоне("РаботаСКурсамиВалют.ОбновитьКурсВалюты", ПараметрыЗадания, ПараметрыВыполнения);
Если Результат.Статус = "Ошибка" Тогда
ВызватьИсключение Результат.КраткоеПредставлениеОшибки;
КонецЕсли;
КонецПроцедуры
Процедура ЗапланироватьКопированиеКурсовВалюты()
Перем МодульКурсыВалютСлужебныйВМоделиСервиса;
Если ОбщегоНазначения.РазделениеВключено()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ВалютыВМоделиСервиса") Тогда
МодульКурсыВалютСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("КурсыВалютСлужебныйВМоделиСервиса");
МодульКурсыВалютСлужебныйВМоделиСервиса.ЗапланироватьКопированиеКурсовВалюты(ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецЕсли #Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли

View File

@ -1,285 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Width>90</Width>
<CommandBarLocation>None</CommandBarLocation>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<Table name="СписокВалют" id="1">
<Representation>List</Representation>
<CommandBarLocation>Top</CommandBarLocation>
<ReadOnly>true</ReadOnly>
<SkipOnInput>false</SkipOnInput>
<ChoiceMode>true</ChoiceMode>
<MultipleChoice>true</MultipleChoice>
<RowSelectionMode>Row</RowSelectionMode>
<AutoInsertNewRow>true</AutoInsertNewRow>
<FileDragMode>AsFile</FileDragMode>
<DataPath>Валюты</DataPath>
<CommandSet>
<ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>Change</ExcludedCommand>
<ExcludedCommand>Choose</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>EndEdit</ExcludedCommand>
<ExcludedCommand>MoveDown</ExcludedCommand>
<ExcludedCommand>MoveUp</ExcludedCommand>
<ExcludedCommand>OutputList</ExcludedCommand>
<ExcludedCommand>SortListAsc</ExcludedCommand>
<ExcludedCommand>SortListDesc</ExcludedCommand>
</CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<RowFilter xsi:nil="true"/>
<ContextMenu name="СписокВалютКонтекстноеМеню" id="2">
<ChildItems>
<Button name="СписокВалютКонтекстноеМенюВыбрать" id="18">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.Выбрать</CommandName>
<ExtendedTooltip name="СписокВалютКонтекстноеМенюВыбратьExtendedTooltip" id="21"/>
</Button>
<Button name="СписокВалютКонтекстноеМенюНайти" id="19">
<Type>CommandBarButton</Type>
<CommandName>Form.Item.СписокВалют.StandardCommand.Find</CommandName>
<ExtendedTooltip name="СписокВалютКонтекстноеМенюНайтиExtendedTooltip" id="22"/>
</Button>
<Button name="СписокВалютКонтекстноеМенюОтменитьПоиск" id="20">
<Type>CommandBarButton</Type>
<CommandName>Form.Item.СписокВалют.StandardCommand.CancelSearch</CommandName>
<ExtendedTooltip name="СписокВалютКонтекстноеМенюОтменитьПоискExtendedTooltip" id="23"/>
</Button>
</ChildItems>
</ContextMenu>
<AutoCommandBar name="СписокВалютКоманднаяПанель" id="3">
<Autofill>false</Autofill>
<ChildItems>
<Button name="Выбрать" id="14">
<Type>CommandBarButton</Type>
<Representation>Text</Representation>
<DefaultButton>true</DefaultButton>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.Выбрать</CommandName>
<ExtendedTooltip name="ВыбратьExtendedTooltip" id="24"/>
</Button>
<Button name="Найти" id="12">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Item.СписокВалют.StandardCommand.Find</CommandName>
<ExtendedTooltip name="НайтиExtendedTooltip" id="25"/>
</Button>
<Button name="ОтменитьПоиск" id="13">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Item.СписокВалют.StandardCommand.CancelSearch</CommandName>
<ExtendedTooltip name="ОтменитьПоискExtendedTooltip" id="26"/>
</Button>
<Button name="ФормаСправка" id="17">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.Help</CommandName>
<ExtendedTooltip name="ФормаСправкаExtendedTooltip" id="27"/>
</Button>
</ChildItems>
</AutoCommandBar>
<ExtendedTooltip name="СписокВалютExtendedTooltip" id="28"/>
<SearchStringAddition name="СписокВалютSearchString" id="34">
<AdditionSource>
<Item>СписокВалют</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокВалютSearchStringContextMenu" id="35"/>
<ExtendedTooltip name="СписокВалютSearchStringExtendedTooltip" id="36"/>
</SearchStringAddition>
<ViewStatusAddition name="СписокВалютViewStatus" id="37">
<AdditionSource>
<Item>СписокВалют</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокВалютViewStatusContextMenu" id="38"/>
<ExtendedTooltip name="СписокВалютViewStatusExtendedTooltip" id="39"/>
</ViewStatusAddition>
<SearchControlAddition name="СписокВалютSearchControl" id="40">
<AdditionSource>
<Item>СписокВалют</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="СписокВалютSearchControlContextMenu" id="41"/>
<ExtendedTooltip name="СписокВалютSearchControlExtendedTooltip" id="42"/>
</SearchControlAddition>
<Events>
<Event name="Selection">СписокВалютВыбор</Event>
</Events>
<ChildItems>
<InputField name="КодВалюты" id="4">
<DataPath>Валюты.КодВалютыЦифровой</DataPath>
<Width>3</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="КодВалютыКонтекстноеМеню" id="5"/>
<ExtendedTooltip name="КодВалютыExtendedTooltip" id="29"/>
</InputField>
<InputField name="КраткоеНаименование" id="6">
<DataPath>Валюты.КодВалютыБуквенный</DataPath>
<Width>3</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="КраткоеНаименованиеКонтекстноеМеню" id="7"/>
<ExtendedTooltip name="КраткоеНаименованиеExtendedTooltip" id="30"/>
</InputField>
<InputField name="Наименование" id="8">
<DataPath>Валюты.Наименование</DataPath>
<Width>20</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="31"/>
</InputField>
<InputField name="СтраныИТерритории" id="10">
<DataPath>Валюты.СтраныИТерритории</DataPath>
<Wrap>false</Wrap>
<ContextMenu name="СтраныИТерриторииКонтекстноеМеню" id="11"/>
<ExtendedTooltip name="СтраныИТерриторииExtendedTooltip" id="32"/>
</InputField>
<CheckBoxField name="Загружается" id="15">
<DataPath>Валюты.Загружается</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Валюта может быть загружена с сайта РБК</v8:content>
</v8:item>
</ToolTip>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ЗагружаетсяКонтекстноеМеню" id="16"/>
<ExtendedTooltip name="ЗагружаетсяExtendedTooltip" id="33"/>
</CheckBoxField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Валюты" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Валюты</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8:ValueTable</v8:Type>
</Type>
<Columns>
<Column name="КодВалютыЦифровой" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код числовой</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="КодВалютыБуквенный" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код символьный</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="Наименование" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование валюты</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="СтраныИТерритории" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Страны и территории</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="Загружается" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Загружается из сети Интернет</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Column>
<Column name="ПараметрыПрописиНаРусском" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры прописи на русском</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
</Columns>
</Attribute>
</Attributes>
<Commands>
<Command name="Выбрать" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выбрать</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Создание новой валюты на основании выбора</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.ChooseValue</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ВыбратьВыполнить</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
</Form>

View File

@ -1,127 +0,0 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
// Заполнение списка валют из ОКВ.
ЗакрыватьПриВыборе = Ложь;
ЗаполнитьТаблицуВалют();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСписокВалют
&НаКлиенте
Процедура СписокВалютВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ОбработатьВыборВСпискеВалют(СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВыбратьВыполнить()
ОбработатьВыборВСпискеВалют();
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ЗаполнитьТаблицуВалют()
// Заполняет список валют из макета ОКВ.
КлассификаторXML = Справочники.Валюты.ПолучитьМакет("ОбщероссийскийКлассификаторВалют").ПолучитьТекст();
КлассификаторТаблица = ОбщегоНазначения.ПрочитатьXMLВТаблицу(КлассификаторXML).Данные;
Для Каждого ЗаписьОКВ Из КлассификаторТаблица Цикл
НоваяСтрока = Валюты.Добавить();
НоваяСтрока.КодВалютыЦифровой = ЗаписьОКВ.Code;
НоваяСтрока.КодВалютыБуквенный = ЗаписьОКВ.CodeSymbol;
НоваяСтрока.Наименование = ЗаписьОКВ.Name;
НоваяСтрока.СтраныИТерритории = ЗаписьОКВ.Description;
НоваяСтрока.Загружается = ЗаписьОКВ.RBCLoading;
НоваяСтрока.ПараметрыПрописиНаРусском = ЗаписьОКВ.NumerationItemOptions;
КонецЦикла;
КонецПроцедуры
&НаСервере
Функция СохранитьВыбранныеСтроки(Знач ВыбранныеСтроки, ЕстьКурсы)
ЕстьКурсы = Ложь;
ТекущаяСсылка = Неопределено;
Для каждого НомерСтроки Из ВыбранныеСтроки Цикл
ТекущиеДанные = Валюты[НомерСтроки];
СтрокаВБазе = Справочники.Валюты.НайтиПоКоду(ТекущиеДанные.КодВалютыЦифровой);
Если ЗначениеЗаполнено(СтрокаВБазе) Тогда
Если НомерСтроки = Элементы.СписокВалют.ТекущаяСтрока Или ТекущаяСсылка = Неопределено Тогда
ТекущаяСсылка = СтрокаВБазе;
КонецЕсли;
Продолжить;
КонецЕсли;
НоваяСтрока = Справочники.Валюты.СоздатьЭлемент();
НоваяСтрока.Код = ТекущиеДанные.КодВалютыЦифровой;
НоваяСтрока.Наименование = ТекущиеДанные.КодВалютыБуквенный;
НоваяСтрока.НаименованиеПолное = ТекущиеДанные.Наименование;
Если ТекущиеДанные.Загружается Тогда
НоваяСтрока.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета;
Иначе
НоваяСтрока.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РучнойВвод;
КонецЕсли;
НоваяСтрока.ПараметрыПрописиНаРусском = ТекущиеДанные.ПараметрыПрописиНаРусском;
НоваяСтрока.Записать();
Если НомерСтроки = Элементы.СписокВалют.ТекущаяСтрока Или ТекущаяСсылка = Неопределено Тогда
ТекущаяСсылка = НоваяСтрока.Ссылка;
КонецЕсли;
Если ТекущиеДанные.Загружается Тогда
ЕстьКурсы = Истина;
КонецЕсли;
КонецЦикла;
Возврат ТекущаяСсылка;
КонецФункции
&НаКлиенте
Процедура ОбработатьВыборВСпискеВалют(СтандартнаяОбработка = Неопределено)
Перем ЕстьКурсы;
// Добавление элемента справочника и вывод результата пользователю.
СтандартнаяОбработка = Ложь;
ТекущаяСсылка = СохранитьВыбранныеСтроки(Элементы.СписокВалют.ВыделенныеСтроки, ЕстьКурсы);
ОповеститьОВыборе(ТекущаяСсылка);
ПоказатьОповещениеПользователя(
НСтр("ru = 'Валюты добавлены.'"), ,
?(СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().РазделениеВключено И ЕстьКурсы,
НСтр("ru = 'Курсы будут загружены автоматически через непродолжительное время.'"), ""),
БиблиотекаКартинок.Информация32);
Закрыть();
КонецПроцедуры
#КонецОбласти

View File

@ -1,19 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.19355"></meta></head><body>
<p>Содержит общую информацию о <a href="Catalog.Валюты/Help">валютах</a> и предназначен для добавления новых валют (рекомендуется для корректного заполнения данных о <a href="Catalog.Валюты.Form.ФормаЭлемента/Help">валюте</a>).</p>
<p>В Общероссийском классификаторе валют выводится:</p>
<ul><li>
<div><strong>Код числовой</strong> - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта РБК).</div>
</li><li>
<div><strong>Код символьный</strong> - принят международным стандартом, используется как краткое наименование и основное представление валюты.</div>
</li><li>
<div><strong>Наименование валюты</strong> - полное наименование.</div>
</li><li>
<div><strong>Страны и территории</strong> - указываются страны или территории, в которых данная валюта используется в качестве основной.</div>
</li><li>
<div><strong>Загружается из сети Интернет</strong> - если флажок включен, то валюта может <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загружаться с сайта РБК</a>.</div></li></ul><h3>Добавление валюты из классификатора в список валют</h3>
<ul><li>
<div>Выделив одну или несколько валют, нажмите кнопку <strong>Выбрать</strong>.</div>
</li><li>
<div>Воспользуйтесь двойным щелчком мыши по валюте для добавления валюты в список валют.</div></li></ul><h3>См. также: </h3>
<ul><li>
<div><a href="v8help://frame/form_common">Работа с формами</a>.</div></li></ul></body></html>

View File

@ -1,5 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<MobileDeviceCommandBarContent>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">КоманднаяПанель</xr:Value>
</xr:Item>
</MobileDeviceCommandBarContent>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill> <Autofill>false</Autofill>
</AutoCommandBar> </AutoCommandBar>
@ -16,12 +23,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -34,24 +35,65 @@
<v8:content>Командная панель</v8:content> <v8:content>Командная панель</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource>
<ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="65"/> <ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="65"/>
<ChildItems> <ChildItems>
<Button name="ФормаЗагрузитьКурсыВалют" id="43"> <Popup name="Создать" id="77">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Создать</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СоздатьРасширеннаяПодсказка" id="78"/>
<ChildItems>
<Button name="ФормаПодборИзКлассификатора" id="44">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ПодборИзКлассификатора</CommandName>
<ExtendedTooltip name="ФормаПодборИзКлассификатораРасширеннаяПодсказка" id="51"/>
</Button>
<Button name="СоздатьВалюту" id="85">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.Create</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Новую</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СоздатьВалютуРасширеннаяПодсказка" id="86"/>
</Button>
</ChildItems>
</Popup>
<ButtonGroup name="КомандыФормы" id="79">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команды формы</v8:content>
</v8:item>
</Title>
<CommandSource>Form</CommandSource>
<ExtendedTooltip name="КомандыФормыРасширеннаяПодсказка" id="80"/>
</ButtonGroup>
<ButtonGroup name="ГруппаЗагрузитьКурсыВалют" id="87">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Загрузить курсы валют</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ГруппаЗагрузитьКурсыВалютРасширеннаяПодсказка" id="88"/>
<ChildItems>
<Button name="ФормаЗагрузитьКурсыВалют" id="43">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ЗагрузитьКурсыВалют</CommandName>
<ExtendedTooltip name="ФормаЗагрузитьКурсыВалютExtendedTooltip" id="50"/>
</Button>
</ChildItems>
</ButtonGroup>
<Button name="Справка" id="81">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<CommandName>Form.Command.ЗагрузитьКурсыВалют</CommandName> <CommandName>Form.StandardCommand.Help</CommandName>
<ExtendedTooltip name="ФормаЗагрузитьКурсыВалютExtendedTooltip" id="50"/> <ExtendedTooltip name="СправкаРасширеннаяПодсказка" id="82"/>
</Button>
<Button name="ФормаПодборИзОКВ" id="44">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ПодборИзОКВ</CommandName>
<ExtendedTooltip name="ФормаПодборИзОКВExtendedTooltip" id="51"/>
</Button> </Button>
</ChildItems> </ChildItems>
</CommandBar> </CommandBar>
@ -62,9 +104,12 @@
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<SearchStringLocation>None</SearchStringLocation> <Title>
<ViewStatusLocation>None</ViewStatusLocation> <v8:item>
<SearchControlLocation>None</SearchControlLocation> <v8:lang>ru</v8:lang>
<v8:content>Валюты</v8:content>
</v8:item>
</Title>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -107,10 +152,10 @@
<ExtendedTooltip name="ВалютыУправлениеПоискомРасширеннаяПодсказка" id="76"/> <ExtendedTooltip name="ВалютыУправлениеПоискомРасширеннаяПодсказка" id="76"/>
</SearchControlAddition> </SearchControlAddition>
<Events> <Events>
<Event name="BeforeAddRow">ВалютыПередНачаломДобавления</Event> <Event name="OnGetDataAtServer">ВалютыПриПолученииДанныхНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<InputField name="НаименованиеПолное" id="40"> <InputField name="НаименованиеПолное" id="40" DisplayImportance="VeryHigh">
<DataPath>Список.НаименованиеПолное</DataPath> <DataPath>Список.НаименованиеПолное</DataPath>
<Width>20</Width> <Width>20</Width>
<Wrap>false</Wrap> <Wrap>false</Wrap>
@ -118,7 +163,7 @@
<ExtendedTooltip name="НаименованиеПолноеExtendedTooltip" id="55"/> <ExtendedTooltip name="НаименованиеПолноеExtendedTooltip" id="55"/>
</InputField> </InputField>
<InputField name="Код" id="28"> <InputField name="Код" id="28">
<DataPath>Список.Code</DataPath> <DataPath>Список.Код</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -131,7 +176,7 @@
<ExtendedTooltip name="КодExtendedTooltip" id="53"/> <ExtendedTooltip name="КодExtendedTooltip" id="53"/>
</InputField> </InputField>
<InputField name="Наименование" id="32"> <InputField name="Наименование" id="32">
<DataPath>Список.Description</DataPath> <DataPath>Список.Наименование</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -143,13 +188,20 @@
<ContextMenu name="НаименованиеКонтекстноеМеню" id="33"/> <ContextMenu name="НаименованиеКонтекстноеМеню" id="33"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="54"/> <ExtendedTooltip name="НаименованиеExtendedTooltip" id="54"/>
</InputField> </InputField>
<LabelField name="Курс" id="38"> <LabelField name="Курс" id="38" DisplayImportance="VeryHigh">
<DataPath>Список.Курс</DataPath> <DataPath>Список.Курс</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Курс</v8:content>
</v8:item>
</Title>
<Width>7</Width> <Width>7</Width>
<ContextMenu name="КурсКонтекстноеМеню" id="39"/> <ContextMenu name="КурсКонтекстноеМеню" id="39"/>
<ExtendedTooltip name="КурсExtendedTooltip" id="56"/> <ExtendedTooltip name="КурсExtendedTooltip" id="56"/>
</LabelField> </LabelField>
<ColumnGroup name="ПредставлениеКратности" id="49"> <LabelField name="Кратность" id="36">
<DataPath>Список.Кратность</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -159,47 +211,15 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Кратность валюты. Отображается, если не равна 1.</v8:content> <v8:content>Кратность равная единице не отображается</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Group>Horizontal</Group> <Width>7</Width>
<ShowInHeader>true</ShowInHeader> <ContextMenu name="КратностьКонтекстноеМеню" id="37"/>
<ExtendedTooltip name="ПредставлениеКратностиExtendedTooltip" id="57"/> <ExtendedTooltip name="КратностьРасширеннаяПодсказка" id="59"/>
<ChildItems> </LabelField>
<LabelField name="РубЗа" id="45">
<DataPath>Список.РубЗа</DataPath>
<TitleLocation>None</TitleLocation>
<ShowInHeader>false</ShowInHeader>
<Width>7</Width>
<ContextMenu name="РубЗаКонтекстноеМеню" id="46"/>
<ExtendedTooltip name="РубЗаExtendedTooltip" id="58"/>
</LabelField>
<LabelField name="Кратность" id="36">
<DataPath>Список.Кратность</DataPath>
<TitleLocation>None</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>кратность равная единице не отображается</v8:content>
</v8:item>
</ToolTip>
<ShowInHeader>false</ShowInHeader>
<Width>7</Width>
<ContextMenu name="КратностьКонтекстноеМеню" id="37"/>
<ExtendedTooltip name="КратностьExtendedTooltip" id="59"/>
</LabelField>
<LabelField name="КраткоеНаименование" id="47">
<DataPath>Список.КраткоеНаименование</DataPath>
<TitleLocation>None</TitleLocation>
<ShowInHeader>false</ShowInHeader>
<Width>7</Width>
<ContextMenu name="КраткоеНаименованиеКонтекстноеМеню" id="48"/>
<ExtendedTooltip name="КраткоеНаименованиеExtendedTooltip" id="60"/>
</LabelField>
</ChildItems>
</ColumnGroup>
<LabelField name="Ссылка" id="61"> <LabelField name="Ссылка" id="61">
<DataPath>Список.Ref</DataPath> <DataPath>Список.Ссылка</DataPath>
<UserVisible> <UserVisible>
<xr:Common>false</xr:Common> <xr:Common>false</xr:Common>
</UserVisible> </UserVisible>
@ -217,37 +237,24 @@
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
<UseAlways> <UseAlways>
<Field>Список.Ref</Field> <Field>Список.Кратность</Field>
<Field>Список.Курс</Field>
<Field>Список.Наименование</Field>
<Field>Список.Ссылка</Field>
</UseAlways> </UseAlways>
<Settings xsi:type="DynamicList"> <Settings xsi:type="DynamicList">
<ManualQuery>true</ManualQuery> <ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead> <DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ <QueryText>ВЫБРАТЬ
Валюты.ПометкаУдаления, Валюты.ПометкаУдаления КАК ПометкаУдаления,
Валюты.Код, Валюты.Код КАК Код,
Валюты.Наименование, Валюты.Наименование КАК Наименование,
Валюты.НаименованиеПолное, Валюты.НаименованиеПолное КАК НаименованиеПолное,
КурсыВалют.Курс, ВЫРАЗИТЬ(NULL КАК ЧИСЛО(10, 2)) КАК Курс,
ВЫБОР ВЫРАЗИТЬ(NULL КАК СТРОКА(50)) КАК Кратность,
КОГДА КурсыВалют.Кратность = 1 Валюты.Ссылка КАК Ссылка
ТОГДА " "
ИНАЧЕ ВЫРАЗИТЬ(&amp;ПояснениеКратности КАК СТРОКА(50))
КОНЕЦ КАК РубЗа,
ВЫБОР
КОГДА КурсыВалют.Кратность = 1
ТОГДА " "
ИНАЧЕ КурсыВалют.Кратность
КОНЕЦ КАК Кратность,
ВЫБОР
КОГДА КурсыВалют.Кратность = 1
ТОГДА " "
ИНАЧЕ Валюты.Наименование
КОНЕЦ КАК КраткоеНаименование,
Валюты.Ссылка
ИЗ ИЗ
Справочник.Валюты КАК Валюты Справочник.Валюты КАК Валюты</QueryText>
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&amp;КонецПериода, ) КАК КурсыВалют
ПО Валюты.Ссылка = КурсыВалют.Валюта</QueryText>
<MainTable>Catalog.Валюты</MainTable> <MainTable>Catalog.Валюты</MainTable>
<ListSettings> <ListSettings>
<dcsset:filter> <dcsset:filter>
@ -273,11 +280,11 @@
</Attribute> </Attribute>
</Attributes> </Attributes>
<Commands> <Commands>
<Command name="ПодборИзОКВ" id="1"> <Command name="ПодборИзКлассификатора" id="1">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Подобрать из классификатора...</v8:content> <v8:content>По классификатору...</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <ToolTip>
@ -286,7 +293,7 @@
<v8:content>Подобрать валюты из Общероссийского классификатора валют</v8:content> <v8:content>Подобрать валюты из Общероссийского классификатора валют</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Action>ПодборИзОКВ</Action> <Action>ПодборИзКлассификатора</Action>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="ЗагрузитьКурсыВалют" id="2"> <Command name="ЗагрузитьКурсыВалют" id="2">
@ -299,7 +306,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Загрузить курсы валют с веб-сайта РБК</v8:content> <v8:content>Загрузить курсы валют с веб-сайта </v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Action>ЗагрузитьКурсыВалют</Action> <Action>ЗагрузитьКурсыВалют</Action>

View File

@ -1,22 +1,38 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
ДатаКурса = НачалоДня(ТекущаяДатаСеанса());
Список.Параметры.УстановитьЗначениеПараметра("КонецПериода", ДатаКурса);
Список.Параметры.УстановитьЗначениеПараметра("ПояснениеКратности", НСтр("ru = 'руб. за'"));
Элементы.Валюты.РежимВыбора = Параметры.РежимВыбора; Элементы.Валюты.РежимВыбора = Параметры.РежимВыбора;
Если Не Пользователи.РолиДоступны("ДобавлениеИзменениеКурсовВалют") Тогда ДатаКурса = НачалоДня(ТекущаяДатаСеанса());
Элементы.ФормаПодборИзОКВ.Видимость = Ложь; Список.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ДатаКурса", ДатаКурса);
Элементы.ФормаЗагрузитьКурсыВалют.Видимость = Ложь;
ИзменяемыеПоля = Новый Массив;
ИзменяемыеПоля.Добавить("Курс");
ИзменяемыеПоля.Добавить("Кратность");
Список.УстановитьОграниченияИспользованияВГруппировке(ИзменяемыеПоля);
Список.УстановитьОграниченияИспользованияВПорядке(ИзменяемыеПоля);
Список.УстановитьОграниченияИспользованияВОтборе(ИзменяемыеПоля);
ДоступноИзменениеВалют = ПравоДоступа("Изменение", Метаданные.РегистрыСведений.КурсыВалют);
ДоступнаЗагрузкаКурсов = Метаданные.Обработки.Найти("ЗагрузкаКурсовВалют") <> Неопределено И ДоступноИзменениеВалют;
Элементы.ФормаПодборИзКлассификатора.Видимость = ДоступнаЗагрузкаКурсов;
Элементы.ФормаЗагрузитьКурсыВалют.Видимость = ДоступнаЗагрузкаКурсов;
Если Не ДоступнаЗагрузкаКурсов Тогда
Если ДоступноИзменениеВалют Тогда
Элементы.СоздатьВалюту.Заголовок = НСтр("ru = 'Создать'");
КонецЕсли;
Элементы.Создать.Вид = ВидГруппыФормы.ГруппаКнопок;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -43,17 +59,37 @@
#Область ОбработчикиСобытийЭлементовТаблицыФормыВалюты #Область ОбработчикиСобытийЭлементовТаблицыФормыВалюты
&НаКлиенте &НаСервереБезКонтекста
Процедура ВалютыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) Процедура ВалютыПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
Текст = НСтр("ru = 'Есть возможность подобрать валюту из классификатора.
|Подобрать?'"); Перем ДатаКурса;
Оповещение = Новый ОписаниеОповещения("ВалютыПередНачаломДобавленияЗавершение", ЭтотОбъект);
КнопкиВыбора = Новый СписокЗначений(); Если Не Настройки.ДополнительныеСвойства.Свойство("ДатаКурса", ДатаКурса) Тогда
КнопкиВыбора.Добавить(КодВозвратаДиалога.Да, "Подобрать"); Возврат;
КнопкиВыбора.Добавить(КодВозвратаДиалога.Нет, "Создать"); КонецЕсли;
КнопкиВыбора.Добавить(КодВозвратаДиалога.Отмена, "Отмена");
ПоказатьВопрос(Оповещение, Текст,КнопкиВыбора, , КодВозвратаДиалога.Да); Запрос = Новый Запрос;
Отказ = Истина; Запрос.Текст =
"ВЫБРАТЬ
| КурсыВалют.Валюта КАК Валюта,
| КурсыВалют.Курс КАК Курс,
| КурсыВалют.Кратность КАК Кратность
|ИЗ
| РегистрСведений.КурсыВалют.СрезПоследних(&КонецПериода, Валюта В (&Валюты)) КАК КурсыВалют";
Запрос.УстановитьПараметр("Валюты", Строки.ПолучитьКлючи());
Запрос.УстановитьПараметр("КонецПериода", ДатаКурса);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
СтрокаСписка = Строки[Выборка.Валюта];
СтрокаСписка.Данные["Курс"] = Выборка.Курс;
Если Выборка.Кратность <> 1 Тогда
Пояснение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'за %1 %2'"),
Выборка.Кратность, СтрокаСписка.Данные["Наименование"]);
СтрокаСписка.Данные["Кратность"] = Пояснение;
КонецЕсли;
КонецЦикла;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -61,31 +97,20 @@
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
&НаКлиенте &НаКлиенте
Процедура ПодборИзОКВ(Команда) Процедура ПодборИзКлассификатора(Команда)
ОткрытьФорму("Справочник.Валюты.Форма.ПодборВалютИзКлассификатора",, ЭтотОбъект); ИмяФормыПодбора = "Обработка.ЗагрузкаКурсовВалют.Форма.ПодборВалютИзКлассификатора";
ОткрытьФорму(ИмяФормыПодбора, , ЭтотОбъект);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ЗагрузитьКурсыВалют(Команда) Процедура ЗагрузитьКурсыВалют(Команда)
ИмяФормыЗагрузки = "Обработка.ЗагрузкаКурсовВалют.Форма";
ПараметрыФормы = Новый Структура("ОткрытиеИзСписка"); ПараметрыФормы = Новый Структура("ОткрытиеИзСписка");
ОткрытьФорму("Обработка.ЗагрузкаКурсовВалют.Форма", ПараметрыФормы); ОткрытьФорму(ИмяФормыЗагрузки, ПараметрыФормы);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ВалютыПередНачаломДобавленияЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
ОткрытьФорму("Справочник.Валюты.Форма.ПодборВалютИзКлассификатора", , ЭтотОбъект);
ИначеЕсли РезультатВопроса = КодВозвратаДиалога.Нет Тогда
ОткрытьФорму("Справочник.Валюты.ФормаОбъекта");
КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,13 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если Объект.Ссылка.Пустая() Тогда Если Объект.Ссылка.Пустая() Тогда
Если Параметры.Свойство("КодВалюты") Тогда Если Параметры.Свойство("КодВалюты") Тогда
@ -28,28 +31,26 @@
Объект.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РучнойВвод; Объект.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РучнойВвод;
КонецЕсли; КонецЕсли;
Если Параметры.Свойство("ПараметрыПрописиНаРусском") Тогда Если Параметры.Свойство("ПараметрыПрописи") Тогда
Объект.ПараметрыПрописиНаРусском = Параметры.ПараметрыПрописиНаРусском; Объект.ПараметрыПрописи = Параметры.ПараметрыПрописи;
КонецЕсли; КонецЕсли;
ЗаполнитьФормуПоОбъекту();
КонецЕсли; КонецЕсли;
ОбработкаЗагрузкаКурсовВалют = Метаданные.Обработки.Найти("ЗагрузкаКурсовВалют");
Если ОбработкаЗагрузкаКурсовВалют <> Неопределено Тогда
ЕстьФормаПараметрыПрописиВалюты = ОбработкаЗагрузкаКурсовВалют.Формы.Найти("ПараметрыПрописиВалюты") <> Неопределено;
КонецЕсли;
Элементы.КурсВалютыЗагружаетсяИзИнтернета.Видимость = ОбработкаЗагрузкаКурсовВалют <> Неопределено;
УстановитьДоступностьЭлементов(ЭтотОбъект); УстановитьДоступностьЭлементов(ЭтотОбъект);
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
ЗаполнитьФормуПоОбъекту(); Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ФормулаРасчетаКурса.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
КонецПроцедуры Элементы.ОсновнаяВалюта.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Авто;
Элементы.ГруппаШапка.ВыравниваниеЭлементовИЗаголовков =
&НаСервере ВариантВыравниванияЭлементовИЗаголовков.ЭлементыПравоЗаголовкиЛево;
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) КонецЕсли;
ТекущийОбъект.ПараметрыПрописиНаРусском = ПараметрыПрописиНаРусском(ЭтотОбъект);
КонецПроцедуры КонецПроцедуры
@ -68,216 +69,31 @@
КонецПроцедуры КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Страница "Параметры прописи валюты".
&НаКлиенте
Процедура СуммаЧислоПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи4наРусскомПриИзменении(Элемент)
УстановитьСклоненияПараметровПрописи(ЭтотОбъект);
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи4наРусскомАвтоПодбор(Элемент, Текст, ДанныеВыбора, Ожидание, СтандартнаяОбработка)
ДанныеВыбора = АвтоПодборПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи4наРусскомОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка)
ДанныеВыбора = ОкончаниеВводаТекстаПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи8наРусскомПриИзменении(Элемент)
УстановитьСклоненияПараметровПрописи(ЭтотОбъект);
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи8наРусскомАвтоПодбор(Элемент, Текст, ДанныеВыбора, Ожидание, СтандартнаяОбработка)
ДанныеВыбора = АвтоПодборПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи8наРусскомОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка)
ДанныеВыбора = ОкончаниеВводаТекстаПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи1наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи2наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи3наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи5наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи6наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПолеПрописи7наРусскомПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ДлинаДробнойЧастиПриИзменении(Элемент)
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ДлинаДробнойЧастиАвтоПодбор(Элемент, Текст, ДанныеВыбора, Ожидание, СтандартнаяОбработка)
ДанныеВыбора = АвтоПодборПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ДлинаДробнойЧастиОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка)
ДанныеВыбора = ОкончаниеВводаТекстаПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура КурсВалютыПриИзменении(Элемент) Процедура КурсВалютыПриИзменении(Элемент)
УстановитьДоступностьЭлементов(ЭтотОбъект); УстановитьДоступностьЭлементов(ЭтотОбъект);
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПараметрыПрописиВалютыНажатие(Элемент)
ОписаниеОповещения = Новый ОписаниеОповещения("ПриИзмененииПараметровПрописиВалюты", ЭтотОбъект);
Если ЕстьФормаПараметрыПрописиВалюты Тогда
ПараметрыОткрытия = Новый Структура;
ПараметрыОткрытия.Вставить("ТолькоПросмотр", ТолькоПросмотр);
ПараметрыОткрытия.Вставить("ПараметрыПрописи", Объект.ПараметрыПрописи);
ИмяФормыРедактированияПрописей = "Обработка.ЗагрузкаКурсовВалют.Форма.ПараметрыПрописиВалюты";
ОткрытьФорму(ИмяФормыРедактированияПрописей, ПараметрыОткрытия, ЭтотОбъект, , , , ОписаниеОповещения);
Иначе
ПоказатьВводСтроки(ОписаниеОповещения, Объект.ПараметрыПрописи, НСтр("ru = 'Параметры прописи валюты'"));
КонецЕсли;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ЗаполнитьФормуПоОбъекту()
ПрочитатьПараметрыПрописи();
УстановитьСклоненияПараметровПрописи(ЭтотОбъект);
УстановитьСуммуПрописью(ЭтотОбъект);
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Функция ПараметрыПрописиНаРусском(Форма)
Возврат Форма.ПолеПрописи1наРусском + ", "
+ Форма.ПолеПрописи2наРусском + ", "
+ Форма.ПолеПрописи3наРусском + ", "
+ НРег(Лев(Форма.ПолеПрописи4наРусском, 1)) + ", "
+ Форма.ПолеПрописи5наРусском + ", "
+ Форма.ПолеПрописи6наРусском + ", "
+ Форма.ПолеПрописи7наРусском + ", "
+ НРег(Лев(Форма.ПолеПрописи8наРусском, 1)) + ", "
+ Форма.ДлинаДробнойЧасти;
КонецФункции
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьСуммуПрописью(Форма)
Форма.СуммаПрописью = ЧислоПрописью(Форма.СуммаЧисло, , ПараметрыПрописиНаРусском(Форма));
КонецПроцедуры
&НаСервере
Процедура ПрочитатьПараметрыПрописи()
// Считывает параметры прописи и заполняет соответствующие поля диалога.
СтрокаПараметров = СтрЗаменить(Объект.ПараметрыПрописиНаРусском, ",", Символы.ПС);
ПолеПрописи1наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 1));
ПолеПрописи2наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 2));
ПолеПрописи3наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 3));
Род = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 4));
Если НРег(Род) = "м" Тогда
ПолеПрописи4наРусском = "Мужской";
ИначеЕсли НРег(Род) = "ж" Тогда
ПолеПрописи4наРусском = "Женский";
ИначеЕсли НРег(Род) = "с" Тогда
ПолеПрописи4наРусском = "Средний";
КонецЕсли;
ПолеПрописи5наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 5));
ПолеПрописи6наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 6));
ПолеПрописи7наРусском = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 7));
Род = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 8));
Если НРег(Род = "м") Тогда
ПолеПрописи8наРусском = "Мужской";
ИначеЕсли НРег(Род = "ж") Тогда
ПолеПрописи8наРусском = "Женский";
ИначеЕсли НРег(Род = "с") Тогда
ПолеПрописи8наРусском = "Средний";
КонецЕсли;
ДлинаДробнойЧасти = СокрЛП(СтрПолучитьСтроку(СтрокаПараметров, 9));
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьСклоненияПараметровПрописи(Форма)
// Склонение заголовков параметров прописи.
Элементы = Форма.Элементы;
Если Форма.ПолеПрописи4наРусском = "Женский" Тогда
Элементы.ПолеПрописи1наРусском.Заголовок = НСтр("ru = 'Одна'");
Элементы.ПолеПрописи2наРусском.Заголовок = НСтр("ru = 'Две'");
ИначеЕсли Форма.ПолеПрописи4наРусском = "Мужской" Тогда
Элементы.ПолеПрописи1наРусском.Заголовок = НСтр("ru = 'Один'");
Элементы.ПолеПрописи2наРусском.Заголовок = НСтр("ru = 'Два'");
Иначе
Элементы.ПолеПрописи1наРусском.Заголовок = НСтр("ru = 'Одно'");
Элементы.ПолеПрописи2наРусском.Заголовок = НСтр("ru = 'Два'");
КонецЕсли;
Если Форма.ПолеПрописи8наРусском = "Женский" Тогда
Элементы.ПолеПрописи5наРусском.Заголовок = НСтр("ru = 'Одна'");
Элементы.ПолеПрописи6наРусском.Заголовок = НСтр("ru = 'Две'");
ИначеЕсли Форма.ПолеПрописи8наРусском = "Мужской" Тогда
Элементы.ПолеПрописи5наРусском.Заголовок = НСтр("ru = 'Один'");
Элементы.ПолеПрописи6наРусском.Заголовок = НСтр("ru = 'Два'");
Иначе
Элементы.ПолеПрописи5наРусском.Заголовок = НСтр("ru = 'Одно'");
Элементы.ПолеПрописи6наРусском.Заголовок = НСтр("ru = 'Два'");
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста &НаСервереБезКонтекста
Процедура ПодготовитьДанныеВыбораПодчиненнойВалюты(ДанныеВыбора, Ссылка) Процедура ПодготовитьДанныеВыбораПодчиненнойВалюты(ДанныеВыбора, Ссылка)
@ -288,70 +104,46 @@
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ Ссылка, НаименованиеПолное Запрос.Текст =
|ИЗ "ВЫБРАТЬ
| Справочник.Валюты | Валюты.Ссылка КАК Ссылка,
|ГДЕ | Валюты.НаименованиеПолное КАК НаименованиеПолное,
| Ссылка <> &Ссылка | Валюты.Наименование КАК Наименование
|ИЗ
| ОсновнаяВалюта = Значение(Справочник.Валюты.ПустаяСсылка) | Справочник.Валюты КАК Валюты
|УПОРЯДОЧИТЬ ПО НаименованиеПолное"; |ГДЕ
| Валюты.Ссылка <> &Ссылка
| И Валюты.ОсновнаяВалюта = ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)
|
|УПОРЯДОЧИТЬ ПО
| Валюты.НаименованиеПолное";
Запрос.Параметры.Вставить("Ссылка", Ссылка); Запрос.Параметры.Вставить("Ссылка", Ссылка);
Выборка = Запрос.Выполнить().Выбрать(); Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл Пока Выборка.Следующий() Цикл
ДанныеВыбора.Добавить(Выборка.Ссылка, Выборка.НаименованиеПолное); ДанныеВыбора.Добавить(Выборка.Ссылка, Выборка.НаименованиеПолное + " (" + Выборка.Наименование + ")");
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Функция АвтоПодборПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка)
// Вспомогательная функция управлением вводом.
Для Каждого ЭлементВыбора Из Элемент.СписокВыбора Цикл
Если ВРег(Текст) = ВРег(Лев(ЭлементВыбора.Представление, СтрДлина(Текст))) Тогда
Результат = Новый СписокЗначений;
Результат.Добавить(ЭлементВыбора.Значение, ЭлементВыбора.Представление);
СтандартнаяОбработка = Ложь;
Возврат Результат;
КонецЕсли;
КонецЦикла;
Возврат Неопределено;
КонецФункции
&НаКлиенте
Функция ОкончаниеВводаТекстаПоСпискуВыбора(Элемент, Текст, СтандартнаяОбработка)
// Вспомогательная функция управлением вводом.
СтандартнаяОбработка = Ложь;
Для Каждого ЭлементВыбора Из Элемент.СписокВыбора Цикл
Если ВРег(Текст) = ВРег(ЭлементВыбора.Представление) Тогда
СтандартнаяОбработка = Истина;
ИначеЕсли ВРег(Текст) = ВРег(Лев(ЭлементВыбора.Представление, СтрДлина(Текст))) Тогда
СтандартнаяОбработка = Ложь;
Результат = Новый СписокЗначений;
Результат.Добавить(ЭлементВыбора.Значение, ЭлементВыбора.Представление);
Возврат Результат;
КонецЕсли;
КонецЦикла;
Возврат Неопределено;
КонецФункции
&НаКлиентеНаСервереБезКонтекста &НаКлиентеНаСервереБезКонтекста
Процедура УстановитьДоступностьЭлементов(Форма) Процедура УстановитьДоступностьЭлементов(Форма)
Элементы = Форма.Элементы; Элементы = Форма.Элементы;
Объект = Форма.Объект; Объект = Форма.Объект;
Элементы.ГруппаНаценкаНаКурсДругойВалюты.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты"); Элементы.ГруппаНаценкаНаКурсДругойВалюты.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты");
Элементы.ГруппаФормулаРасчетаКурса.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.РасчетПоФормуле"); Элементы.ФормулаРасчетаКурса.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.РасчетПоФормуле");
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииПараметровПрописиВалюты(Результат, ДополнительныеПараметры) Экспорт
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
Объект.ПараметрыПрописи = Результат;
Модифицированность = Истина;
КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,16 +1,16 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.19355"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Описание свойств используемой валюты.</p> <p>Описание свойств используемой валюты.</p>
<p>Валюта широко используется в деятельности любого предприятия: во всех документах, которые имеют дело с денежными суммами (счета, платежные поручения, договоры, накладные) присутствует поле <strong>Валюта</strong>, явно или по умолчанию. Значение поля <strong>Валюта</strong> заполняется в зависимости от направления деятельности предприятия: рубль, иностранная валюта или у.е.</p> <p>Валюта широко используется в деятельности любого предприятия: во всех документах, которые имеют дело с денежными суммами (счета, платежные поручения, договоры, накладные) присутствует поле <strong>Валюта</strong>, явно или по умолчанию. Значение поля <strong>Валюта</strong> заполняется в зависимости от направления деятельности предприятия: рубль, иностранная валюта или у.е.</p>
<h3>Основные сведения о валюте</h3> <h3>Основные сведения о валюте</h3>
<div>При добавлении валюты из <a href="Catalog.Валюты.Form.ПодборВалютИзКлассификатора/Help">Общероссийского классификатора валют</a> следующие поля новой валюты будут заполнены автоматически: </div> <div>При добавлении валюты из <a href="DataProcessor.ЗагрузкаКурсовВалют.Form.ПодборВалютИзКлассификатора/Help">Общероссийского классификатора валют</a> следующие поля новой валюты будут заполнены автоматически: </div>
<ul><li> <ul><li>
<div><strong>Наименование валюты</strong> - полное наименование валюты.</div> <div><strong>Наименование валюты</strong> - полное наименование валюты.</div>
</li><li> </li><li>
<div><strong>Цифровой код</strong> - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта РБК).</div> <div><strong>Цифровой код</strong> - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта ).</div>
</li><li> </li><li>
<div><strong>Символьный код</strong> - принят международным стандартом, используется как краткое наименование и основное представление валюты.</div> <div><strong>Символьный код</strong> - принят международным стандартом, используется как краткое наименование и основное представление валюты.</div>
</li><li> </li><li>
<div><strong>Курс валюты</strong> - переключатель установлен в положение з<strong>агружается из интернета</strong>, если валюта может загружаться с сайта РБК. </div></li></ul><h3>Особенности использования переключателя Курс валюты</h3> <div><strong>Курс валюты</strong> - переключатель установлен в положение з<strong>агружается из интернета</strong>, если валюта может загружаться с сайта . </div></li></ul><h3>Особенности использования переключателя Курс валюты</h3>
<ul><li> <ul><li>
<div>Положение переключателя <strong>Курс валюты загружается из интернета</strong> можно изменить в исключительных случаях:</div> <div>Положение переключателя <strong>Курс валюты загружается из интернета</strong> можно изменить в исключительных случаях:</div>
<ul><li> <ul><li>
@ -27,18 +27,16 @@
<div>Укажите <strong>Наценку, %</strong> - коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</div></li></ul><h3>Расчет по формуле</h3> <div>Укажите <strong>Наценку, %</strong> - коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</div></li></ul><h3>Расчет по формуле</h3>
<ul><li>Предусмотрена возможность ввести валюту, курс которой зависит от нескольких валют одновременно. <ul><li>Предусмотрена возможность ввести валюту, курс которой зависит от нескольких валют одновременно.
</li><li>Для этого переключатель <strong>Курс валюты</strong> установите в положение <strong>рассчитывается по формуле</strong>. </li><li>Для этого переключатель <strong>Курс валюты</strong> установите в положение <strong>рассчитывается по формуле</strong>.
</li><li>Задайте способ расчета курса валюты в соответствующем поле, например, <strong>(USD+EUR)/2</strong>.</li></ul><h3>Параметры прописи валюты</h3> </li><li>Задайте способ расчета курса валюты в соответствующем поле, например, <strong>(USD+EUR)/2</strong>.
<p>Для того чтобы в печатных формах правильно указывалось наименование валюты прописью, необходимо задать параметры прописи целой и дробной части валюты. </p> </li><li>Допустимыми разделителями дробной части чисел в формуле являются знаки точки и запятой, т.е. правильно:
<ul><li><strong>Целая часть</strong> - укажите параметры склонения целой части валюты: <strong>Род</strong> и соответствующие шаблоны склонения в единственном и множественном числе. <ul><li><strong>EUR*1.025</strong>
</li><li><strong>Дробная часть</strong> - укажите параметры склонения дробной части валюты: <strong>Род</strong> и соответствующие шаблоны склонения в единственном и множественном числе. </li><li><strong>EUR*1,025</strong></li></ul></li><li>Но если возникает необходимость использовать функции с двумя и более параметрами, то параметры следует разделять запятыми, а дробные части чисел - точками, например:
</li><li><strong>Число разрядов дробной части</strong> - в случае если дробная часть в печатных формах отображается числом, то можно установить нужное количество разрядов при выводе печатных форм документов. Например, если установлено количество разрядов 1 знак, то сумма по документу будет отображена, как 150,2 евро, а если 2 знака, то – 150,20 евро. <ul><li><strong>Окр(EUR*1.025,2)</strong></li></ul></li><li>Подробнее о правилах построения подобных выражений см. раздел справки <a href="v8help://dcsui/SKD_Lang">Язык выражений системы компоновки данных</a>.</li></ul><h3>Просмотр курса валюты</h3>
</li><li><strong>Пример прописи суммы</strong> - число, введенное в поле <strong>Сумма</strong>, будет написано по указанным параметрам прописи валюты. Используйте эту возможность для проверки параметров прописи валюты.</li></ul><p>Параметры прописи валюты заполнены по умолчанию для основных валют: <strong>рубль</strong>, <strong>Евро</strong>, <strong>доллар</strong>. Для остальных валют их необходимо заполнить самостоятельно.</p>
<h3>Просмотр курса валюты</h3>
<ul><li>Для перевода валютных сумм в рубли используется <a href="InformationRegister.КурсыВалют/Help">курс валюты</a>. <ul><li>Для перевода валютных сумм в рубли используется <a href="InformationRegister.КурсыВалют/Help">курс валюты</a>.
</li><li>Нажмите <strong>Курсы валют</strong> на панели навигации валюты. Можно установить интервал дат для удобства просмотра курсов.</li></ul><h3>Ввод курса валюты вручную</h3> </li><li>Нажмите <strong>Курсы валют</strong> на панели навигации валюты. Можно установить интервал дат для удобства просмотра курсов.</li></ul><h3>Ввод курса валюты вручную</h3>
<ul><li>Курсы основных валют можно <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загрузить</a> с сайта РБК. Если для валюты загрузка невозможна, то переключатель <strong>Курс валюты</strong> автоматически устанавливается в положение  <strong>вводится вручную</strong>. <ul><li>Курсы основных валют можно <a href="DataProcessor.ЗагрузкаКурсовВалют/Help">загрузить</a> с сайта . Если для валюты загрузка невозможна, то переключатель <strong>Курс валюты</strong> автоматически устанавливается в положение<strong>вводится вручную</strong>.
</li><li>Для того чтобы заполнить курс вручную: </li><li>Для того чтобы заполнить курс вручную:
<ul><li>Нажмите <strong>Курсы валют</strong> на панели навигации валюты. <ul><li>Нажмите <strong>Курсы валют</strong> на панели навигации валюты.
</li><li>Нажмите <strong>Создать</strong>, заполните курс валюты на нужную дату (по умолчанию установлена текущая дата).</li></ul></li></ul><h3>См. также: </h3> </li><li>Нажмите <strong>Создать</strong>, заполните курс валюты на нужную дату (по умолчанию установлена текущая дата).</li></ul></li></ul><h3>См. также: </h3>
<ul><li><a href="Catalog.Валюты/Help">Валюты</a>  <ul><li><a href="Catalog.Валюты/Help">Валюты</a>
</li><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> </li><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>

View File

@ -1,163 +0,0 @@
<Items Description="ОбщероссийскийКлассификаторВалют" Columns="Code,CodeSymbol,Name,Description,RBCLoading,NumerationItemOptions">
<Item Code="008" CodeSymbol="ALL" Name="Лек" Description="Албания" RBCLoading="ложь"/>
<Item Code="012" CodeSymbol="DZD" Name="Алжирский динар" Description="Алжир" RBCLoading="ложь"/>
<Item Code="032" CodeSymbol="ARS" Name="Аргентинское песо" Description="Аргентина" RBCLoading="ложь"/>
<Item Code="036" CodeSymbol="AUD" Name="Австралийский доллар" Description="Австралия; Кирибати; Кокосовые (Килинг) острова; Науру; Норфолк, остров; Остров Рождества; Тувалу; Херд и Макдональд, острова" RBCLoading="истина"/>
<Item Code="044" CodeSymbol="BSD" Name="Багамский доллар" Description="Багамы" RBCLoading="ложь"/>
<Item Code="048" CodeSymbol="BHD" Name="Бахрейнский динар" Description="Бахрейн" RBCLoading="ложь"/>
<Item Code="050" CodeSymbol="BDT" Name="Така" Description="Бангладеш" RBCLoading="ложь"/>
<Item Code="051" CodeSymbol="AMD" Name="Армянский драм" Description="Армения" RBCLoading="истина"/>
<Item Code="052" CodeSymbol="BBD" Name="Барбадосский доллар" Description="Барбадос" RBCLoading="ложь"/>
<Item Code="060" CodeSymbol="BMD" Name="Бермудский доллар" Description="Бермуды" RBCLoading="ложь"/>
<Item Code="064" CodeSymbol="BTN" Name="Нгултрум" Description="Бутан" RBCLoading="ложь"/>
<Item Code="068" CodeSymbol="BOB" Name="Боливиано" Description="Боливия" RBCLoading="ложь"/>
<Item Code="072" CodeSymbol="BWP" Name="Пула" Description="Ботсвана" RBCLoading="ложь"/>
<Item Code="084" CodeSymbol="BZD" Name="Белизский доллар" Description="Белиз" RBCLoading="ложь"/>
<Item Code="090" CodeSymbol="SBD" Name="Доллар Соломоновых островов" Description="Соломоновы острова" RBCLoading="ложь"/>
<Item Code="096" CodeSymbol="BND" Name="Брунейский доллар" Description="Бруней-Даруссалам" RBCLoading="ложь"/>
<Item Code="104" CodeSymbol="MMK" Name="Кьят" Description="Мьянма" RBCLoading="ложь"/>
<Item Code="108" CodeSymbol="BIF" Name="Бурундийский франк" Description="Бурунди" RBCLoading="ложь"/>
<Item Code="116" CodeSymbol="KHR" Name="Риель Камбоджи" Description="Камбоджа" RBCLoading="ложь"/>
<Item Code="124" CodeSymbol="CAD" Name="Канадский доллар" Description="Канада" RBCLoading="истина"/>
<Item Code="132" CodeSymbol="CVE" Name="Эскудо Кабо - Верде" Description="Кабо - Верде" RBCLoading="ложь"/>
<Item Code="136" CodeSymbol="KYD" Name="Доллар островов Кайман" Description="Острова Кайман" RBCLoading="ложь"/>
<Item Code="144" CodeSymbol="LKR" Name="Шри-Ланкийская рупия" Description="Шри - Ланка" RBCLoading="ложь"/>
<Item Code="152" CodeSymbol="CLP" Name="Чилийское песо" Description="Чили" RBCLoading="ложь"/>
<Item Code="156" CodeSymbol="CNY" Name="Юань" Description="Китай" RBCLoading="истина"/>
<Item Code="170" CodeSymbol="COP" Name="Колумбийский песо" Description="Колумбия" RBCLoading="ложь"/>
<Item Code="174" CodeSymbol="KMF" Name="Франк Комор" Description="Коморы" RBCLoading="ложь"/>
<Item Code="188" CodeSymbol="CRC" Name="Костариканский колон" Description="Коста - Рика" RBCLoading="ложь"/>
<Item Code="191" CodeSymbol="HRK" Name="Куна" Description="Хорватия" RBCLoading="ложь"/>
<Item Code="192" CodeSymbol="CUP" Name="Кубинское песо" Description="Куба" RBCLoading="ложь"/>
<Item Code="203" CodeSymbol="CZK" Name="Чешская крона" Description="Чешская Республика" RBCLoading="истина"/>
<Item Code="208" CodeSymbol="DKK" Name="Датская крона" Description="Гренландия; Дания; Фарерские острова" RBCLoading="истина"/>
<Item Code="214" CodeSymbol="DOP" Name="Доминиканское песо" Description="Доминиканская Республика" RBCLoading="ложь"/>
<Item Code="222" CodeSymbol="SVC" Name="Сальвадорский колон" Description="Эль-Сальвадор" RBCLoading="ложь"/>
<Item Code="230" CodeSymbol="ETB" Name="Эфиопский быр" Description="Эфиопия" RBCLoading="ложь"/>
<Item Code="232" CodeSymbol="ERN" Name="Накфа" Description="Эритрея" RBCLoading="ложь"/>
<Item Code="238" CodeSymbol="FKP" Name="Фунт Фолклендских островов" Description="Фолклендские острова (Мальвинские) " RBCLoading="ложь"/>
<Item Code="242" CodeSymbol="FJD" Name="Доллар Фиджи" Description="Фиджи" RBCLoading="ложь"/>
<Item Code="262" CodeSymbol="DJF" Name="Франк Джибути" Description="Джибути" RBCLoading="ложь"/>
<Item Code="270" CodeSymbol="GMD" Name="Даласи" Description="Гамбия" RBCLoading="ложь"/>
<Item Code="292" CodeSymbol="GIP" Name="Гибралтарский фунт" Description="Гибралтар" RBCLoading="ложь"/>
<Item Code="320" CodeSymbol="GTQ" Name="Кетсаль" Description="Гватемала" RBCLoading="ложь"/>
<Item Code="324" CodeSymbol="GNF" Name="Гвинейский франк" Description="Гвинея" RBCLoading="ложь"/>
<Item Code="328" CodeSymbol="GYD" Name="Гайанский доллар" Description="Гайана" RBCLoading="ложь"/>
<Item Code="332" CodeSymbol="HTG" Name="Гурд" Description="Гаити" RBCLoading="ложь"/>
<Item Code="340" CodeSymbol="HNL" Name="Лемпира" Description="Гондурас" RBCLoading="ложь"/>
<Item Code="344" CodeSymbol="HKD" Name="Гонконгский доллар" Description="Гонконг" RBCLoading="ложь"/>
<Item Code="348" CodeSymbol="HUF" Name="Форинт" Description="Венгрия" RBCLoading="истина"/>
<Item Code="352" CodeSymbol="ISK" Name="Исландская крона" Description="Исландия" RBCLoading="ложь"/>
<Item Code="356" CodeSymbol="INR" Name="Индийская рупия" Description="Бутан; Индия" RBCLoading="истина"/>
<Item Code="360" CodeSymbol="IDR" Name="Рупия" Description="Индонезия" RBCLoading="ложь"/>
<Item Code="364" CodeSymbol="IRR" Name="Иранский риал" Description="Иран (Исламская Республика)" RBCLoading="ложь"/>
<Item Code="368" CodeSymbol="IQD" Name="Иракский динар" Description="Ирак" RBCLoading="ложь"/>
<Item Code="376" CodeSymbol="ILS" Name="Новый израильский шекель" Description="Израиль" RBCLoading="ложь"/>
<Item Code="388" CodeSymbol="JMD" Name="Ямайский доллар" Description="Ямайка" RBCLoading="ложь"/>
<Item Code="392" CodeSymbol="JPY" Name="Иена" Description="Япония" RBCLoading="истина"/>
<Item Code="398" CodeSymbol="KZT" Name="Тенге" Description="Казахстан" RBCLoading="истина"/>
<Item Code="400" CodeSymbol="JOD" Name="Иорданский динар" Description="Иордания" RBCLoading="ложь"/>
<Item Code="404" CodeSymbol="KES" Name="Кенийский шиллинг" Description="Кения" RBCLoading="ложь"/>
<Item Code="408" CodeSymbol="KPW" Name="Северокорейская вона" Description="Корея, народно-демократическая республика" RBCLoading="ложь"/>
<Item Code="410" CodeSymbol="KRW" Name="Вона" Description="Корея, республика" RBCLoading="истина"/>
<Item Code="414" CodeSymbol="KWD" Name="Кувейтский динар" Description="Кувейт" RBCLoading="ложь"/>
<Item Code="417" CodeSymbol="KGS" Name="Сом" Description="Киргизия" RBCLoading="истина"/>
<Item Code="418" CodeSymbol="LAK" Name="Кип" Description="Лаосская Народно-Демократическая Республика " RBCLoading="ложь"/>
<Item Code="422" CodeSymbol="LBP" Name="Ливанский фунт" Description="Ливан" RBCLoading="ложь"/>
<Item Code="426" CodeSymbol="LSL" Name="Лоти" Description="Лесото" RBCLoading="ложь"/>
<Item Code="430" CodeSymbol="LRD" Name="Либерийский доллар" Description="Либерия" RBCLoading="ложь"/>
<Item Code="434" CodeSymbol="LYD" Name="Ливийский динар" Description="Ливия" RBCLoading="ложь"/>
<Item Code="446" CodeSymbol="MOP" Name="Патака" Description="Макао" RBCLoading="ложь"/>
<Item Code="454" CodeSymbol="MWK" Name="Квача" Description="Малави" RBCLoading="ложь"/>
<Item Code="458" CodeSymbol="MYR" Name="Малайзийский ринггит" Description="Малайзия" RBCLoading="ложь"/>
<Item Code="462" CodeSymbol="MVR" Name="Руфия" Description="Мальдивы" RBCLoading="ложь"/>
<Item Code="478" CodeSymbol="MRO" Name="Угия" Description="Мавритания" RBCLoading="ложь"/>
<Item Code="480" CodeSymbol="MUR" Name="Маврикийская рупия" Description="Маврикий" RBCLoading="ложь"/>
<Item Code="484" CodeSymbol="MXN" Name="Мексиканский песо" Description="Мексика" RBCLoading="ложь"/>
<Item Code="496" CodeSymbol="MNT" Name="Тугрик" Description="Монголия" RBCLoading="ложь"/>
<Item Code="498" CodeSymbol="MDL" Name="Молдавский лей" Description="Молдова, республика" RBCLoading="истина"/>
<Item Code="504" CodeSymbol="MAD" Name="Марокканский дирхам" Description="Западная Сахара; Марокко" RBCLoading="ложь"/>
<Item Code="512" CodeSymbol="OMR" Name="Оманский риал" Description="Оман" RBCLoading="ложь"/>
<Item Code="516" CodeSymbol="NAD" Name="Доллар Намибии" Description="Намибия" RBCLoading="ложь"/>
<Item Code="524" CodeSymbol="NPR" Name="Непальская рупия" Description="Непал" RBCLoading="ложь"/>
<Item Code="532" CodeSymbol="ANG" Name="Нидерландский антильский гульден" Description="Нидерландские Антилы" RBCLoading="ложь"/>
<Item Code="533" CodeSymbol="AWG" Name="Арубанский флорин" Description="Аруба" RBCLoading="ложь"/>
<Item Code="548" CodeSymbol="VUV" Name="Вату" Description="Вануату" RBCLoading="ложь"/>
<Item Code="554" CodeSymbol="NZD" Name="Новозеландский доллар" Description="Ниуэ; Новая Зеландия; Острова Кука; Питкерн; Токелау" RBCLoading="ложь"/>
<Item Code="558" CodeSymbol="NIO" Name="Золотая кордоба" Description="Никарагуа" RBCLoading="ложь"/>
<Item Code="566" CodeSymbol="NGN" Name="Найра" Description="Нигерия" RBCLoading="ложь"/>
<Item Code="578" CodeSymbol="NOK" Name="Норвежская крона" Description="Норвежская крона Норвегия; Остров Буве; Шпицберген и Ян Майен " RBCLoading="истина"/>
<Item Code="586" CodeSymbol="PKR" Name="Пакистанская рупия" Description="Пакистан" RBCLoading="ложь"/>
<Item Code="590" CodeSymbol="PAB" Name="Бальбоа" Description="Панама" RBCLoading="ложь"/>
<Item Code="598" CodeSymbol="PGK" Name="Кина" Description="Папуа Новая Гвинея" RBCLoading="ложь"/>
<Item Code="600" CodeSymbol="PYG" Name="Гуарани" Description="Парагвай" RBCLoading="ложь"/>
<Item Code="604" CodeSymbol="PEN" Name="Новый соль" Description="Перу" RBCLoading="ложь"/>
<Item Code="608" CodeSymbol="PHP" Name="Филиппинское песо" Description="Филиппины" RBCLoading="ложь"/>
<Item Code="634" CodeSymbol="QAR" Name="Катарский риал" Description="Катар" RBCLoading="ложь"/>
<Item Code="643" CodeSymbol="RUB" Name="Российский рубль" Description="Россия" RBCLoading="ложь" NumerationItemOptions="рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2 знака"/>
<Item Code="646" CodeSymbol="RWF" Name="Франк Руанды" Description="Руанда" RBCLoading="ложь"/>
<Item Code="654" CodeSymbol="SHP" Name="Фунт Святой Елены" Description="Святая Елена" RBCLoading="ложь"/>
<Item Code="678" CodeSymbol="STD" Name="Добра" Description="Сан - Томе и Принсипи" RBCLoading="ложь"/>
<Item Code="682" CodeSymbol="SAR" Name="Саудовский риял" Description="Саудовская Аравия" RBCLoading="ложь"/>
<Item Code="690" CodeSymbol="SCR" Name="Сейшельская рупия" Description="Сейшелы" RBCLoading="ложь"/>
<Item Code="694" CodeSymbol="SLL" Name="Леоне" Description="Сьерра - Леоне" RBCLoading="ложь"/>
<Item Code="702" CodeSymbol="SGD" Name="Сингапурский доллар" Description="Сингапур" RBCLoading="истина"/>
<Item Code="704" CodeSymbol="VND" Name="Донг" Description="Вьетнам" RBCLoading="ложь"/>
<Item Code="706" CodeSymbol="SOS" Name="Сомалийский шиллинг" Description="Сомали" RBCLoading="ложь"/>
<Item Code="710" CodeSymbol="ZAR" Name="Рэнд" Description="Лесото; Намибия; Южная Африка" RBCLoading="истина"/>
<Item Code="728" CodeSymbol="SSP" Name="Южносуданский фунт" Description="Южный Судан" RBCLoading="ложь"/>
<Item Code="748" CodeSymbol="SZL" Name="Лилангени" Description="Свазиленд" RBCLoading="ложь"/>
<Item Code="752" CodeSymbol="SEK" Name="Шведская крона" Description="Швеция" RBCLoading="истина"/>
<Item Code="756" CodeSymbol="CHF" Name="Швейцарский франк" Description="Лихтенштейн; Швейцария" RBCLoading="истина"/>
<Item Code="760" CodeSymbol="SYP" Name="Сирийский фунт" Description="Сирийская Арабская Республика" RBCLoading="ложь"/>
<Item Code="764" CodeSymbol="THB" Name="Бат" Description="Таиланд" RBCLoading="ложь"/>
<Item Code="776" CodeSymbol="TOP" Name="Паанга" Description="Тонга" RBCLoading="ложь"/>
<Item Code="780" CodeSymbol="TTD" Name="Доллар Тринидада и Тобаго" Description="Тринидад и Тобаго" RBCLoading="ложь"/>
<Item Code="784" CodeSymbol="AED" Name="Дирхам (ОАЭ)" Description="Объединенные Арабские Эмираты (ОАЭ)" RBCLoading="ложь"/>
<Item Code="788" CodeSymbol="TND" Name="Тунисский динар" Description="Тунис" RBCLoading="ложь"/>
<Item Code="800" CodeSymbol="UGX" Name="Угандийский шиллинг" Description="Уганда" RBCLoading="ложь"/>
<Item Code="807" CodeSymbol="MKD" Name="Денар" Description="Македония, бывшая Югославская Республика " RBCLoading="ложь"/>
<Item Code="818" CodeSymbol="EGP" Name="Египетский фунт" Description="Египет" RBCLoading="ложь"/>
<Item Code="826" CodeSymbol="GBP" Name="Фунт стерлингов" Description="Соединенное королевство" RBCLoading="истина"/>
<Item Code="834" CodeSymbol="TZS" Name="Танзанийский шиллинг" Description="Танзания, объединенная республика" RBCLoading="ложь"/>
<Item Code="840" CodeSymbol="USD" Name="Доллар США" Description="Американское Самоа; Британская территория в Индийском океане; Виргинские острова (Британские); Виргинские острова (США); Гаити; Гуам; Малые Тихоокеанские Отдаленные острова Соединенных Штатов; Маршалловы Острова; Микронезия, федеративные штаты; Острова Теркс и Кайкос; Палау; Панама; Пуэрто-Рико; Северные Марианские острова; Соединенные Штаты; Тимор-Лесте; Эквадор; Эль-Сальвадор" RBCLoading="истина" NumerationItemOptions="доллар, доллара, долларов, м, цент, цента, центов, м, 2 знака"/>
<Item Code="858" CodeSymbol="UYU" Name="Уругвайское песо" Description="Уругвай" RBCLoading="ложь"/>
<Item Code="860" CodeSymbol="UZS" Name="Узбекский сум" Description="Узбекистан" RBCLoading="истина"/>
<Item Code="882" CodeSymbol="WST" Name="Тала" Description="Самоа" RBCLoading="ложь"/>
<Item Code="886" CodeSymbol="YER" Name="Йеменский риал" Description="Йемен" RBCLoading="ложь"/>
<Item Code="901" CodeSymbol="TWD" Name="Новый тайваньский доллар" Description="Тайвань (Китай)" RBCLoading="ложь"/>
<Item Code="931" CodeSymbol="CUC" Name="Конвертируемое песо" Description="Куба" RBCLoading="ложь"/>
<Item Code="932" CodeSymbol="ZWL" Name="Доллар Зимбабве" Description="Зимбабве" RBCLoading="ложь"/>
<Item Code="933" CodeSymbol="BYN" Name="Белорусский рубль" Description="Беларусь" RBCLoading="истина"/>
<Item Code="934" CodeSymbol="TMT" Name="Новый туркменский манат" Description="Туркмения" RBCLoading="истина"/>
<Item Code="936" CodeSymbol="GHS" Name="Ганский седи" Description="Гана" RBCLoading="ложь"/>
<Item Code="937" CodeSymbol="VEF" Name="Боливар" Description="Венесуэла" RBCLoading="ложь"/>
<Item Code="938" CodeSymbol="SDG" Name="Суданский фунт" Description="Судан" RBCLoading="ложь"/>
<Item Code="940" CodeSymbol="UYI" Name="Уругвайское песо в индексированных единицах" Description="Уругвай" RBCLoading="ложь"/>
<Item Code="941" CodeSymbol="RSD" Name="Сербский динар" Description="Сербия" RBCLoading="ложь"/>
<Item Code="943" CodeSymbol="MZN" Name="Мозамбикский метикал" Description="Мозамбик" RBCLoading="ложь"/>
<Item Code="944" CodeSymbol="AZN" Name="Азербайджанский манат" Description="Азербайджан" RBCLoading="истина"/>
<Item Code="946" CodeSymbol="RON" Name="Румынский лей" Description="Румыния" RBCLoading="истина"/>
<Item Code="949" CodeSymbol="TRY" Name="Турецкая лира" Description="Турция" RBCLoading="истина"/>
<Item Code="950" CodeSymbol="XAF" Name="Франк КФА ВЕАС" Description="Габон; Камерун; Конго; Центрально - африканская Республика; Чад; Экваториальная Гвинея Франк КФА ВЕАС - денежная единица Банка государств центральной Африки" RBCLoading="ложь"/>
<Item Code="951" CodeSymbol="XCD" Name="Восточно - карибский доллар" Description="Ангилья; Антигуа и Барбуда; Гренада; Доминика; Монтсеррат; Сент - Винсент и Гренадины; Сент - Китс и Невис; Сент - Люсия" RBCLoading="ложь"/>
<Item Code="952" CodeSymbol="XOF" Name="Франк КФА ВСЕАО" Description="Бенин; Буркина - Фасо; Гвинея - Бисау; Кот д'Ивуар; Мали; Нигер; Сенегал; Того Франк КФА ВСЕАО - денежная единица Центрального Банка государств Западной Африки" RBCLoading="ложь"/>
<Item Code="953" CodeSymbol="XPF" Name="Франк КФП" Description="Новая Каледония; Французская Полинезия; Уоллис и Футуна" RBCLoading="ложь"/>
<Item Code="960" CodeSymbol="XDR" Name="СДР (специальные права заимствования)" Description="Международный валютный фонд (МВФ)" RBCLoading="истина"/>
<Item Code="967" CodeSymbol="ZMW" Name="Замбийская квача" Description="Замбия" RBCLoading="ложь"/>
<Item Code="968" CodeSymbol="SRD" Name="Суринамский доллар" Description="Суринам" RBCLoading="ложь"/>
<Item Code="969" CodeSymbol="MGA" Name="Малагасийский ариари" Description="Мадагаскар" RBCLoading="ложь"/>
<Item Code="970" CodeSymbol="COU" Name="Единица реальной стоимости" Description="Колумбия" RBCLoading="ложь"/>
<Item Code="971" CodeSymbol="AFN" Name="Афгани" Description="Афганистан" RBCLoading="ложь"/>
<Item Code="972" CodeSymbol="TJS" Name="Сомони" Description="Таджикистан" RBCLoading="истина"/>
<Item Code="973" CodeSymbol="AOA" Name="Кванза" Description="Ангола" RBCLoading="ложь"/>
<Item Code="974" CodeSymbol="BYR" Name="Белорусский рубль" Description="Беларусь" RBCLoading="истина"/>
<Item Code="975" CodeSymbol="BGN" Name="Болгарский лев" Description="Болгария" RBCLoading="истина"/>
<Item Code="976" CodeSymbol="CDF" Name="Конголезский франк" Description="Конго, демократическая республика" RBCLoading="ложь"/>
<Item Code="977" CodeSymbol="ВАМ" Name="Конвертируемая марка" Description="Босния и Герцеговина" RBCLoading="ложь"/>
<Item Code="978" CodeSymbol="EUR" Name="Евро" Description="Австрия; Андорра; Бельгия; Гваделупа; Германия; Греция; Ирландия; Испания; Италия; Кипр; Латвия; Литва; Люксембург; Майотта; Мальта; Мартиника; Монако; Нидерланды; Папский Престол (Государство-город Ватикан); Португалия; Реюньон; Сан-Марино; Сен-Бартелеми; Сен-Мартен (французская часть); Сент-Пьер и Микелон; Словакия; Словения; Финляндия; Франция; Французская Гвиана; Французские Южные территории; Черногория; Эландские острова; Эстония" RBCLoading="истина" NumerationItemOptions="евро, евро, евро, м, цент, цента, центов, м, 2 знака"/>
<Item Code="980" CodeSymbol="UAH" Name="Гривна" Description="Украина" RBCLoading="истина"/>
<Item Code="981" CodeSymbol="GEL" Name="Лари" Description="Грузия" RBCLoading="ложь"/>
<Item Code="985" CodeSymbol="PLN" Name="Злотый" Description="Польша" RBCLoading="истина"/>
<Item Code="986" CodeSymbol="BRL" Name="Бразильский реал" Description="Бразилия" RBCLoading="истина"/>
</Items>

View File

@ -1,4 +1,4 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.19355"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Ведение списка вариантов ответов на <a href="ChartOfCharacteristicTypes.ВопросыДляАнкетирования/Help">вопросы</a> типов <strong>Выбор одного</strong> или <strong>нескольких вариантов ответа из предложенных.</strong></p> <p>Ведение списка вариантов ответов на <a href="ChartOfCharacteristicTypes.ВопросыДляАнкетирования/Help">вопросы</a> типов <strong>Выбор одного</strong> или <strong>нескольких вариантов ответа из предложенных.</strong></p>
<p>Существуют вопросы <a href="Document.Анкета.Form.ФормаСписка/Help">анкеты</a> типа <strong>Выбор одного варианта ответа из предложенных</strong> или <strong>Выбор нескольких вариантов ответа из предложенных</strong>. В этих случаях ответ респондента сводится к выбору одного или нескольких вариантов ответа из списка с помощью переключателей.</p> <p>Существуют вопросы <a href="Document.Анкета.Form.ФормаСписка/Help">анкеты</a> типа <strong>Выбор одного варианта ответа из предложенных</strong> или <strong>Выбор нескольких вариантов ответа из предложенных</strong>. В этих случаях ответ респондента сводится к выбору одного или нескольких вариантов ответа из списка с помощью переключателей.</p>
<p>Задайте возможные варианты ответов на <a href="ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Form.ФормаЭлемента/Help">вопрос</a>.</p> <p>Задайте возможные варианты ответов на <a href="ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Form.ФормаЭлемента/Help">вопрос</a>.</p>

View File

@ -1,9 +1,18 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
//////////////////////////////////////////////////////////////////////////////// #Область ДляВызоваИзДругихПодсистем
// Групповое изменение объектов.
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые разрешается редактировать // Возвращает реквизиты объекта, которые разрешается редактировать
// с помощью обработки группового изменения реквизитов. // с помощью обработки группового изменения реквизитов.
@ -18,6 +27,10 @@
КонецФункции КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
#КонецОбласти
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли

View File

@ -2,9 +2,6 @@
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode> <WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаПользовательскихНастроек" id="14"> <UsualGroup name="ГруппаПользовательскихНастроек" id="14">
<UserVisible> <UserVisible>
@ -16,12 +13,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -39,9 +30,12 @@
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<SearchStringLocation>None</SearchStringLocation> <Title>
<ViewStatusLocation>None</ViewStatusLocation> <v8:item>
<SearchControlLocation>None</SearchControlLocation> <v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -114,6 +108,9 @@
<v8:Type>cfg:DynamicList</v8:Type> <v8:Type>cfg:DynamicList</v8:Type>
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
<UseAlways>
<Field>Список.Ref</Field>
</UseAlways>
<Settings xsi:type="DynamicList"> <Settings xsi:type="DynamicList">
<ManualQuery>false</ManualQuery> <ManualQuery>false</ManualQuery>
<DynamicDataRead>true</DynamicDataRead> <DynamicDataRead>true</DynamicDataRead>

View File

@ -1,13 +0,0 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -15,12 +15,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="18"/> <ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="18"/>
@ -36,9 +30,12 @@
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<SearchStringLocation>None</SearchStringLocation> <Title>
<ViewStatusLocation>None</ViewStatusLocation> <v8:item>
<SearchControlLocation>None</SearchControlLocation> <v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -94,6 +91,11 @@
<ContextMenu name="КодКонтекстноеМеню" id="7"/> <ContextMenu name="КодКонтекстноеМеню" id="7"/>
<ExtendedTooltip name="КодExtendedTooltip" id="12"/> <ExtendedTooltip name="КодExtendedTooltip" id="12"/>
</LabelField> </LabelField>
<LabelField name="Владелец" id="8">
<DataPath>Список.Owner</DataPath>
<ContextMenu name="ВладелецКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="ВладелецExtendedTooltip" id="13"/>
</LabelField>
<LabelField name="Ссылка" id="14"> <LabelField name="Ссылка" id="14">
<DataPath>Список.Ref</DataPath> <DataPath>Список.Ref</DataPath>
<UserVisible> <UserVisible>
@ -102,11 +104,6 @@
<ContextMenu name="СсылкаКонтекстноеМеню" id="15"/> <ContextMenu name="СсылкаКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="16"/> <ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="16"/>
</LabelField> </LabelField>
<LabelField name="Владелец" id="8">
<DataPath>Список.Owner</DataPath>
<ContextMenu name="ВладелецКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="ВладелецExtendedTooltip" id="13"/>
</LabelField>
</ChildItems> </ChildItems>
</Table> </Table>
</ChildItems> </ChildItems>
@ -116,6 +113,9 @@
<v8:Type>cfg:DynamicList</v8:Type> <v8:Type>cfg:DynamicList</v8:Type>
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
<UseAlways>
<Field>Список.Ref</Field>
</UseAlways>
<Settings xsi:type="DynamicList"> <Settings xsi:type="DynamicList">
<ManualQuery>false</ManualQuery> <ManualQuery>false</ManualQuery>
<DynamicDataRead>true</DynamicDataRead> <DynamicDataRead>true</DynamicDataRead>

View File

@ -1,15 +1,18 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Если НЕ Пользователи.ЭтоСеансВнешнегоПользователя() Тогда
Возврат; ОбщегоНазначения.СообщитьПользователю(
КонецЕсли;
Если НЕ ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Варианты ответов анкет используются только внешними пользователями.'"),,,,Отказ); НСтр("ru = 'Варианты ответов анкет используются только внешними пользователями.'"),,,,Отказ);
КонецЕсли; КонецЕсли;

View File

@ -8,34 +8,42 @@
</Events> </Events>
<ChildItems> <ChildItems>
<UsualGroup name="КодОткрытыйОтвет" id="7"> <UsualGroup name="КодОткрытыйОтвет" id="7">
<Group>Horizontal</Group> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код открытый ответ</v8:content>
</v8:item>
</Title>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="КодОткрытыйОтветExtendedTooltip" id="8"/> <ExtendedTooltip name="КодОткрытыйОтветExtendedTooltip" id="8"/>
<ChildItems> <ChildItems>
<InputField name="Наименование" id="3">
<DataPath>Объект.Description</DataPath>
<DefaultItem>true</DefaultItem>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="4"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="11"/>
</InputField>
<InputField name="Код" id="1"> <InputField name="Код" id="1">
<DataPath>Объект.Code</DataPath> <DataPath>Объект.Code</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<EditMode>EnterOnInput</EditMode> <EditMode>EnterOnInput</EditMode>
<ContextMenu name="КодКонтекстноеМеню" id="2"/> <ContextMenu name="КодКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="КодExtendedTooltip" id="9"/> <ExtendedTooltip name="КодExtendedTooltip" id="9"/>
</InputField> </InputField>
<CheckBoxField name="ТребуетОткрытогоОтвета" id="5">
<DataPath>Объект.ТребуетОткрытогоОтвета</DataPath>
<TitleLocation>Right</TitleLocation>
<EditMode>EnterOnInput</EditMode>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ТребуетОткрытогоОтветаКонтекстноеМеню" id="6"/>
<ExtendedTooltip name="ТребуетОткрытогоОтветаExtendedTooltip" id="10"/>
</CheckBoxField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<InputField name="Наименование" id="3"> <CheckBoxField name="ТребуетОткрытогоОтвета" id="5">
<DataPath>Объект.Description</DataPath> <DataPath>Объект.ТребуетОткрытогоОтвета</DataPath>
<DefaultItem>true</DefaultItem> <TitleLocation>Right</TitleLocation>
<EditMode>EnterOnInput</EditMode> <EditMode>EnterOnInput</EditMode>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="4"/> <CheckBoxType>Auto</CheckBoxType>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="11"/> <ContextMenu name="ТребуетОткрытогоОтветаКонтекстноеМеню" id="6"/>
</InputField> <ExtendedTooltip name="ТребуетОткрытогоОтветаExtendedTooltip" id="10"/>
</CheckBoxField>
</ChildItems> </ChildItems>
<Attributes> <Attributes>
<Attribute name="Объект" id="1"> <Attribute name="Объект" id="1">

View File

@ -1,23 +1,26 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если Параметры.Свойство("Владелец") Если Параметры.Свойство("Владелец")
И ТипЗнч(Параметры.Владелец) = Тип("ПланВидовХарактеристикСсылка.ВопросыДляАнкетирования") И ТипЗнч(Параметры.Владелец) = Тип("ПланВидовХарактеристикСсылка.ВопросыДляАнкетирования")
И НЕ Параметры.Владелец.Пустая() Тогда И НЕ Параметры.Владелец.Пустая() Тогда
Объект.Владелец = Параметры.Владелец; Объект.Владелец = Параметры.Владелец;
Иначе Иначе
ТекстСообщения = НСтр("ru = 'Данная форма предназначена для открытия только из формы элемента плана вида характеристик ""Вопросы для анкетирования""'"); ТекстСообщения = НСтр("ru = 'Данная форма предназначена для открытия только из формы элемента плана вида характеристик ""Вопросы для анкетирования""'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
Отказ = Истина; Отказ = Истина;
Возврат; Возврат;
@ -29,6 +32,10 @@
Элементы.ТребуетОткрытогоОтвета.Видимость = (Объект.Владелец.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз); Элементы.ТребуетОткрытогоОтвета.Видимость = (Объект.Владелец.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз);
КонецЕсли; КонецЕсли;
Если Параметры.Свойство("Наименование") Тогда
Объект.Наименование = Параметры.Наименование;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -231,7 +231,7 @@
<xr:Synonym> <xr:Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Родитель</v8:content> <v8:content>Родитель, Основной вариант</v8:content>
</v8:item> </v8:item>
</xr:Synonym> </xr:Synonym>
<xr:Comment/> <xr:Comment/>
@ -336,252 +336,13 @@
<ListPresentation/> <ListPresentation/>
<ExtendedListPresentation/> <ExtendedListPresentation/>
<Explanation/> <Explanation/>
<CreateOnInput>Use</CreateOnInput> <CreateOnInput>DontUse</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput> <ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory> <DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite> <UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing> <ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties> </Properties>
<ChildObjects> <ChildObjects>
<Attribute uuid="50a1e3bf-8624-4474-854e-21b89aaf97ed">
<Properties>
<Name>Отчет</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отчет</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>cfg:CatalogRef.ДополнительныеОтчетыИОбработки</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка отчета или его полное имя.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>ShowError</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61">
<Properties>
<Name>ТипОтчета</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип отчета</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:EnumRef.ТипыОтчетов</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип варианта отчета</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>ShowError</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892">
<Properties>
<Name>КлючВарианта</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ключ варианта</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>256</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Уникальный ключ варианта отчета</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="847b97a3-d0bc-45e2-b06c-932bb22d8eca">
<Properties>
<Name>ПредопределенныйВариант</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Предопределенный вариант</v8:content>
</v8:item>
</Synonym>
<Comment>Вариант конфигурации</Comment>
<Type>
<v8:Type>cfg:CatalogRef.ПредопределенныеВариантыОтчетовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ПредопределенныеВариантыОтчетов</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Предопределенный вариант отчета, содержит настройки по умолчанию.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="503b3eab-b7f1-4ede-8845-3290a834cec7">
<Properties>
<Name>Пользовательский</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пользовательский</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип варианта отчета:
Да - Пользовательский,
Нет - Предопределенный.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="8361991a-0f30-4a03-9a4c-90556b744f53"> <Attribute uuid="8361991a-0f30-4a03-9a4c-90556b744f53">
<Properties> <Properties>
<Name>Автор</Name> <Name>Автор</Name>
@ -628,53 +389,6 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="3116fa60-bc42-4dea-aa03-387896168690">
<Properties>
<Name>ТолькоДляАвтора</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только для автора</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Влияет на доступность варианта из панели отчетов:
Флажок снят - вариант доступен всем пользователям.
Флажок установлен - вариант доступен только автору.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0"> <Attribute uuid="5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0">
<Properties> <Properties>
<Name>ВидимостьПоУмолчанию</Name> <Name>ВидимостьПоУмолчанию</Name>
@ -767,18 +481,18 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="f9196766-4ae2-4a73-bed6-4a8838323e02"> <Attribute uuid="259cb8f5-9e78-4b2f-941b-ccb4b1112c8b">
<Properties> <Properties>
<Name>Настройки</Name> <Name>ИнтерактивнаяПометкаУдаления</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Настройки</v8:content> <v8:content>Интерактивная пометка удаления</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<Type> <Type>
<v8:Type>v8:ValueStorage</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
<PasswordMode>false</PasswordMode> <PasswordMode>false</PasswordMode>
<Format/> <Format/>
@ -786,7 +500,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Пользовательские настройки варианта отчета</v8:content> <v8:content>Пометка удаления, установленная пользователем</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -808,24 +522,24 @@
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput> <ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use> <Use>ForItem</Use>
<Indexing>DontIndex</Indexing> <Indexing>DontIndex</Indexing>
<FullTextSearch>DontUse</FullTextSearch> <FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="ca797560-8802-4bdc-b21f-7a7fd795beae"> <Attribute uuid="24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892">
<Properties> <Properties>
<Name>ХешНастроек</Name> <Name>КлючВарианта</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Хеш настроек</v8:content> <v8:content>Ключ варианта</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
<v8:Length>32</v8:Length> <v8:Length>256</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength> <v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers> </v8:StringQualifiers>
</Type> </Type>
@ -835,8 +549,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Служебное поле. <v8:content>Уникальный ключ варианта отчета</v8:content>
Используется при обновлении программы.</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -857,18 +570,18 @@
<LinkByType/> <LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput> <ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use> <Use>ForItem</Use>
<Indexing>DontIndex</Indexing> <Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch> <FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="56242b05-d722-4d4a-82d9-517e0e169d0b"> <Attribute uuid="73c1a829-0191-486b-97a0-7f333c6f8011">
<Properties> <Properties>
<Name>НаименованияПолей</Name> <Name>КлючевыеСлова</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Наименования полей</v8:content> <v8:content>Ключевые слова</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -885,7 +598,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Поля, выведенные в отчете. <v8:content>Дополнительная терминология (в т.ч. специализированная или устаревшая).
Используется при поиске.</v8:content> Используется при поиске.</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
@ -962,13 +675,13 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="73c1a829-0191-486b-97a0-7f333c6f8011"> <Attribute uuid="56242b05-d722-4d4a-82d9-517e0e169d0b">
<Properties> <Properties>
<Name>КлючевыеСлова</Name> <Name>НаименованияПолей</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Ключевые слова</v8:content> <v8:content>Наименования полей</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -985,7 +698,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Дополнительная терминология (в т.ч. специализированная или устаревшая). <v8:content>Поля, выведенные в отчете.
Используется при поиске.</v8:content> Используется при поиске.</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
@ -1012,6 +725,51 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="f9196766-4ae2-4a73-bed6-4a8838323e02">
<Properties>
<Name>Настройки</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Настройки</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>v8:ValueStorage</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пользовательские настройки варианта отчета</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="4eeda6df-fb48-4c88-853f-9c35e2b3a3cf"> <Attribute uuid="4eeda6df-fb48-4c88-853f-9c35e2b3a3cf">
<Properties> <Properties>
<Name>Описание</Name> <Name>Описание</Name>
@ -1040,12 +798,249 @@
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
<Mask/> <Mask/>
<MultiLine>true</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="50a1e3bf-8624-4474-854e-21b89aaf97ed">
<Properties>
<Name>Отчет</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отчет</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>cfg:CatalogRef.ДополнительныеОтчетыИОбработки</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка отчета или его полное имя.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine> <MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit> <ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/> <MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/> <MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue> <FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/> <FillValue xsi:type="xs:string"/>
<FillChecking>ShowError</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="503b3eab-b7f1-4ede-8845-3290a834cec7">
<Properties>
<Name>Пользовательский</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пользовательский</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип варианта отчета:
Да - Пользовательский,
Нет - Предопределенный.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="847b97a3-d0bc-45e2-b06c-932bb22d8eca">
<Properties>
<Name>ПредопределенныйВариант</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Предопределенный вариант</v8:content>
</v8:item>
</Synonym>
<Comment>Вариант конфигурации</Comment>
<Type>
<v8:Type>cfg:CatalogRef.ПредопределенныеВариантыОтчетовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ПредопределенныеВариантыОтчетов</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Предопределенный вариант отчета, содержит настройки по умолчанию.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61">
<Properties>
<Name>ТипОтчета</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип отчета</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:EnumRef.ТипыОтчетов</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип варианта отчета</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>ShowError</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="3116fa60-bc42-4dea-aa03-387896168690">
<Properties>
<Name>ТолькоДляАвтора</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только для автора</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Влияет на доступность варианта из панели отчетов:
Флажок снят - вариант доступен всем пользователям.
Флажок установлен - вариант доступен только автору.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking> <FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems> <ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/> <ChoiceParameterLinks/>
@ -1159,6 +1154,56 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="ca797560-8802-4bdc-b21f-7a7fd795beae">
<Properties>
<Name>ХешНастроек</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Хеш настроек</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>32</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Служебное поле.
Используется при обновлении программы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>DontUse</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<TabularSection uuid="3df19dbf-efe7-4e31-99ad-fafb59ec1329"> <TabularSection uuid="3df19dbf-efe7-4e31-99ad-fafb59ec1329">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.ВариантыОтчетов.Размещение" category="TabularSection"> <xr:GeneratedType name="CatalogTabularSection.ВариантыОтчетов.Размещение" category="TabularSection">
@ -1614,6 +1659,189 @@
</Attribute> </Attribute>
</ChildObjects> </ChildObjects>
</TabularSection> </TabularSection>
<TabularSection uuid="c1c62215-41b8-40bc-a806-1347db5b03e9">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.ВариантыОтчетов.Представления" category="TabularSection">
<xr:TypeId>f8245c3b-b14b-4212-b772-e48206f1323d</xr:TypeId>
<xr:ValueId>b1416cce-05f5-40f3-89ad-1c94740b746b</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.ВариантыОтчетов.Представления" category="TabularSectionRow">
<xr:TypeId>d5a0c9c6-9020-4a6a-99d2-e341bee917c1</xr:TypeId>
<xr:ValueId>716e5a29-f25b-4a31-a262-52d7a178b244</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>Представления</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Представления</v8:content>
</v8:item>
</Synonym>
<Comment/>
<ToolTip/>
<FillChecking>DontCheck</FillChecking>
<StandardAttributes>
<xr:StandardAttribute name="LineNumber">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Use>ForItem</Use>
</Properties>
<ChildObjects>
<Attribute uuid="a24322f3-c7a5-4b25-bad6-9c75712a3e58">
<Properties>
<Name>КодЯзыка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код языка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>10</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="679d2b3b-a354-4dec-b49d-ab1163756e3a">
<Properties>
<Name>Наименование</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование варианта отчета</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="665e96bc-8ec1-4008-b9bd-db95a234b9b8">
<Properties>
<Name>Описание</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<Form>РазмещениеВРазделах</Form> <Form>РазмещениеВРазделах</Form>
<Form>СбросНастроекРазмещения</Form> <Form>СбросНастроекРазмещения</Form>
<Form>СбросПользовательскихНастроек</Form> <Form>СбросПользовательскихНастроек</Form>

View File

@ -1,9 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(ВариантСсылка, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(Вариант, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ПоказатьНастройкиОтчета(ВариантСсылка); ВариантыОтчетовКлиент.ПоказатьНастройкиОтчета(Вариант);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,20 +1,28 @@
#Область ОбработчикиСобытий ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(ВариантСсылка, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(СсылкаВарианта, ПараметрыВыполненияКоманды)
ПараметрыОткрытия = ВариантСсылка; Вариант = СсылкаВарианта;
Форма = ПараметрыВыполненияКоманды.Источник; Форма = ПараметрыВыполненияКоманды.Источник;
Если ТипЗнч(Форма) = Тип("УправляемаяФорма") Тогда Если ТипЗнч(Форма) = Тип("УправляемаяФорма") Тогда
Если Форма.ИмяФормы = "Справочник.ВариантыОтчетов.Форма.ФормаСписка" Тогда Если Форма.ИмяФормы = "Справочник.ВариантыОтчетов.Форма.ФормаСписка" Тогда
ПараметрыОткрытия = Форма.Элементы.Список.ТекущиеДанные; Вариант = Форма.Элементы.Список.ТекущиеДанные;
ИначеЕсли Форма.ИмяФормы = "Справочник.ВариантыОтчетов.Форма.ФормаЭлемента" Тогда ИначеЕсли Форма.ИмяФормы = "Справочник.ВариантыОтчетов.Форма.ФормаЭлемента" Тогда
ПараметрыОткрытия = Форма.Объект; Вариант = Форма.Объект;
КонецЕсли; КонецЕсли;
Иначе Иначе
Форма = Неопределено; Форма = Неопределено;
КонецЕсли; КонецЕсли;
ВариантыОтчетовКлиент.ОткрытьФормуОтчета(Форма, ПараметрыОткрытия); ВариантыОтчетовКлиент.ОткрытьФормуОтчета(Форма, Вариант);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,9 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(МассивВариантов, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(Варианты, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ОткрытьДиалогРазмещенияВариантовВРазделах(МассивВариантов); ВариантыОтчетовКлиент.ОткрытьДиалогРазмещенияВариантовВРазделах(Варианты, ПараметрыВыполненияКоманды.Источник);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,9 +1,22 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(МассивВариантов, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(Варианты, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ОткрытьДиалогСбросаНастроекПользователей(МассивВариантов, ПараметрыВыполненияКоманды.Источник); Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() = 0 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов, для которых необходимо сбросить пользовательские настройки.'"));
Возврат;
КонецЕсли;
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.СбросПользовательскихНастроек",
Новый Структура("Варианты", Варианты), ПараметрыВыполненияКоманды.Источник);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,9 +1,22 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(МассивВариантов, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(Варианты, ПараметрыВыполненияКоманды)
ВариантыОтчетовКлиент.ОткрытьДиалогСбросаНастроекРазмещения(МассивВариантов, ПараметрыВыполненияКоманды.Источник); Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() = 0 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов программы, для которых необходимо сбросить настройки размещения.'"));
Возврат;
КонецЕсли;
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.СбросНастроекРазмещения",
Новый Структура("Варианты", Варианты), ПараметрыВыполненияКоманды.Источник);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -56,7 +56,7 @@
</li><li> </li><li>
<div>В списке <strong>Варианты отчетов</strong>, предназначенном только для администратора, также можно воспользоваться двойным щелчком мыши на нужном варианте отчета.</div></li></ul><h3>Удаление варианта отчета</h3> <div>В списке <strong>Варианты отчетов</strong>, предназначенном только для администратора, также можно воспользоваться двойным щелчком мыши на нужном варианте отчета.</div></li></ul><h3>Удаление варианта отчета</h3>
<ul><li>Пользовательский вариант отчета с помощью команды меню <strong>Еще</strong> можно <strong>Пометить на удаление</strong>. Также можно воспользоваться клавишей <strong>Del</strong>. <ul><li>Пользовательский вариант отчета с помощью команды меню <strong>Еще</strong> можно <strong>Пометить на удаление</strong>. Также можно воспользоваться клавишей <strong>Del</strong>.
</li><li>Повторно выполните эту команду, для того чтобы <strong>Снять пометку удаления</strong>.  </li><li>Повторно выполните эту команду, для того чтобы <strong>Снять пометку удаления</strong>.
</li><li>Эта возможность недоступна для предопределенных вариантов отчетов.</li></ul><h3>Размещение вариантов отчетов в разделах программы </h3> </li><li>Эта возможность недоступна для предопределенных вариантов отчетов.</li></ul><h3>Размещение вариантов отчетов в разделах программы </h3>
<p><a href="Catalog.ВариантыОтчетов.Form.РазмещениеВРазделах/Help">Размещение</a> варианта отчета может быть изменено автором отчета или администратором.</p> <p><a href="Catalog.ВариантыОтчетов.Form.РазмещениеВРазделах/Help">Размещение</a> варианта отчета может быть изменено автором отчета или администратором.</p>
<ul><li>Варианты отчетов можно перемещать из текущего раздела/группы в другие при помощи перетаскивания мышью. Если при перетаскивании зажать клавишу <strong>Ctrl</strong>, то вариант отчета будет добавлен в новую группу, а также останется в текущей группе. Программа запрашивает подтверждение размещения варианта отчета. Для подтверждения нажмите <strong>Да</strong>. <ul><li>Варианты отчетов можно перемещать из текущего раздела/группы в другие при помощи перетаскивания мышью. Если при перетаскивании зажать клавишу <strong>Ctrl</strong>, то вариант отчета будет добавлен в новую группу, а также останется в текущей группе. Программа запрашивает подтверждение размещения варианта отчета. Для подтверждения нажмите <strong>Да</strong>.

View File

@ -1,7 +1,19 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые разрешается редактировать // Возвращает реквизиты объекта, которые разрешается редактировать
// с помощью обработки группового изменения реквизитов. // с помощью обработки группового изменения реквизитов.
// //
@ -18,23 +30,54 @@
КонецФункции КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// СтандартныеПодсистемы.УправлениеДоступом
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Ограничение.Текст =
"РазрешитьЧтение
|ГДЕ
| Пользовательский = ЛОЖЬ
| ИЛИ ТолькоДляАвтора = ЛОЖЬ
| ИЛИ ЭтоАвторизованныйПользователь(Автор)
|;
|РазрешитьИзменениеЕслиРазрешеноЧтение
|ГДЕ
| ЭтоАвторизованныйПользователь(Автор)";
Ограничение.ТекстДляВнешнихПользователей = Ограничение.Текст;
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
#КонецОбласти
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
// Переопределение для целей избранного - вместо карточки с настройками размещения отчета будет открываться его основная форма.
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
// Переопределение для целей избранного - вместо карточки с настройками размещения отчета будет открываться его
// основная форма.
Если ВидФормы = "ФормаОбъекта" Тогда Если ВидФормы = "ФормаОбъекта" Тогда
СсылкаВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "Ключ");
Если Не ЗначениеЗаполнено(СсылкаВарианта) Тогда
ВызватьИсключение НСтр("ru = 'Новый вариант отчета можно создать только из формы отчета'");
КонецЕсли;
ПоказатьКарточку = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ПоказатьКарточку"); ПоказатьКарточку = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ПоказатьКарточку");
Если ПоказатьКарточку = Истина Тогда Если ПоказатьКарточку = Истина Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПараметрыОткрытия = ВариантыОтчетов.ПараметрыОткрытия(Параметры.Ключ); ПараметрыОткрытия = ВариантыОтчетов.ПараметрыОткрытия(СсылкаВарианта);
ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПараметрыОткрытия, "ВыполнятьЗамеры", Ложь); ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПараметрыОткрытия, "ВыполнятьЗамеры", Ложь);
@ -54,12 +97,9 @@
ПолноеИмяОтчета = Вид + "." + ПараметрыОткрытия.ИмяОтчета; ПолноеИмяОтчета = Вид + "." + ПараметрыОткрытия.ИмяОтчета;
Уникальность = ПолноеИмяОтчета; КлючУникальности = ОтчетыКлиентСервер.КлючУникальности(ПолноеИмяОтчета, ПараметрыОткрытия.КлючВарианта);
Если ЗначениеЗаполнено(ПараметрыОткрытия.КлючВарианта) Тогда ПараметрыОткрытия.Вставить("КлючПараметровПечати", КлючУникальности);
Уникальность = Уникальность + "/КлючВарианта." + ПараметрыОткрытия.КлючВарианта; ПараметрыОткрытия.Вставить("КлючСохраненияПоложенияОкна", КлючУникальности);
КонецЕсли;
ПараметрыОткрытия.Вставить("КлючПараметровПечати", Уникальность);
ПараметрыОткрытия.Вставить("КлючСохраненияПоложенияОкна", Уникальность);
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
Если ПараметрыОткрытия.ТипОтчета = "Дополнительный" Тогда // Для платформы. Если ПараметрыОткрытия.ТипОтчета = "Дополнительный" Тогда // Для платформы.
@ -70,9 +110,122 @@
ВыбраннаяФорма = ПолноеИмяОтчета + ".Форма"; ВыбраннаяФорма = ПолноеИмяОтчета + ".Форма";
ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, ПараметрыОткрытия); ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, ПараметрыОткрытия);
КонецЕсли; КонецЕсли;
КонецПроцедуры
#КонецЕсли #КонецЕсли
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
Поля.Добавить("Наименование");
Поля.Добавить("Ссылка");
Поля.Добавить("Пользовательский");
Поля.Добавить("ПредопределенныйВариант");
Поля.Добавить("ТипОтчета");
СтандартнаяОбработка = Ложь;
КонецПроцедуры
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
ЭтоПредопределенный = Не Данные.Пользовательский
И (Данные.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний
Или Данные.ТипОтчета = Перечисления.ТипыОтчетов.Расширение)
И ЗначениеЗаполнено(Данные.ПредопределенныйВариант);
Если ЭтоПредопределенный Тогда
Данные.Ссылка = Данные.ПредопределенныйВариант;
КонецЕсли;
ЛокализацияКлиентСервер.ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныйПрограммныйИнтерфейс
////////////////////////////////////////////////////////////////////////////////
// Обработчики обновления.
// Регистрирует данные к обновлению в плане обмена ОбновлениеИнформационнойБазы
// см. Стандарты и методики разработки прикладных решений: Параллельный режим отложенного обновления.
//
// Параметры:
// Параметры - Структура - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке.
//
Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт
Запрос = Новый Запрос("
|ВЫБРАТЬ
| Варианты.Ссылка
|ИЗ
| Справочник.ВариантыОтчетов КАК Варианты
|ГДЕ
| Варианты.Отчет = &УниверсальныйОтчет
| И Варианты.Пользовательский
|");
УниверсальныйОтчет = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Метаданные.Отчеты.УниверсальныйОтчет);
Запрос.УстановитьПараметр("УниверсальныйОтчет", УниверсальныйОтчет);
Ссылки = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, Ссылки);
КонецПроцедуры
// Обрабатывает данные, зарегистрированные в плане обмена ОбновлениеИнформационнойБазы
// см. Стандарты и методики разработки прикладных решений: Параллельный режим отложенного обновления.
//
// Параметры:
// Параметры - Структура - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке.
//
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
ОбъектМетаданных = Метаданные.Справочники.ВариантыОтчетов;
ПолноеИмяОбъекта = ОбъектМетаданных.ПолноеИмя();
Обработано = 0;
Отказано = 0;
Вариант = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, ПолноеИмяОбъекта);
Пока Вариант.Следующий() Цикл
Попытка
Отчеты.УниверсальныйОтчет.УстановитьИсточникДанныхВарианта(Вариант.Ссылка);
Обработано = Обработано + 1;
Исключение
// Если не удалось обработать вариант отчета, повторяем попытку снова.
Отказано = Отказано + 1;
ШаблонКомментария = НСтр("ru = 'Не удалось установить источник данных варианта отчета %1.
|Возможно он поврежден и не подлежит восстановлению.
|
|Техническая информация о проблеме: %2'");
Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
ШаблонКомментария, Вариант.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ЗаписьЖурналаРегистрации(
ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
УровеньЖурналаРегистрации.Предупреждение,
ОбъектМетаданных,
Вариант.Ссылка,
Комментарий);
КонецПопытки;
КонецЦикла;
Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, ПолноеИмяОбъекта);
Если Обработано = 0 И Отказано <> 0 Тогда
ШаблонСообщения = НСтр("ru = 'Процедуре УстановитьИсточникДанныхВарианта не удалось обработать некоторые варианты отчетов: %1'");
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, Отказано);
ВызватьИсключение ТекстСообщения;
Иначе
ШаблонКомментария = НСтр("ru = 'Процедура УстановитьИсточникДанныхВарианта обработала очередной пакет вариантов отчетов: %1'");
Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонКомментария, Обработано);
ЗаписьЖурналаРегистрации(
ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
УровеньЖурналаРегистрации.Информация,
ОбъектМетаданных,,
Комментарий);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецЕсли

View File

@ -1,11 +1,19 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
ИсключаемыеРеквизиты = Новый Массив; ИсключаемыеРеквизиты = Новый Массив;
Если НЕ Пользовательский Тогда Если Не Пользовательский Тогда
ИсключаемыеРеквизиты.Добавить("Автор"); ИсключаемыеРеквизиты.Добавить("Автор");
КонецЕсли; КонецЕсли;
@ -13,7 +21,7 @@
Если Наименование <> "" И ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование) Тогда Если Наименование <> "" И ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование) Тогда
Отказ = Истина; Отказ = Истина;
ОбщегоНазначенияКлиентСервер.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" занято, необходимо указать другое наименование.'"), Наименование), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" занято, необходимо указать другое наименование.'"), Наименование),
, ,
"Наименование"); "Наименование");
@ -28,22 +36,23 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПользователемИзмененаПометкаУдаления = ( ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(ЭтотОбъект);
НЕ ЭтоНовый()
И ПометкаУдаления <> Ссылка.ПометкаУдаления
И НЕ ДополнительныеСвойства.Свойство("ЗаполнениеПредопределенных"));
Если НЕ Пользовательский И ПользователемИзмененаПометкаУдаления Тогда ПользователемИзмененаПометкаУдаления = (
Не ЭтоНовый()
И ПометкаУдаления <> Ссылка.ПометкаУдаления
И Не ДополнительныеСвойства.Свойство("ЗаполнениеПредопределенных"));
Если Не Пользовательский И ПользователемИзмененаПометкаУдаления Тогда
Если ПометкаУдаления Тогда Если ПометкаУдаления Тогда
ТекстОшибки = НСтр("ru = 'Пометка на удаление предопределенного варианта отчета запрещена.'"); ТекстОшибки = НСтр("ru = 'Пометка на удаление предопределенного варианта отчета запрещена.'");
Иначе Иначе
ТекстОшибки = НСтр("ru = 'Снятие пометки удаления предопределенного варианта отчета запрещена.'"); ТекстОшибки = НСтр("ru = 'Снятие пометки удаления предопределенного варианта отчета запрещено.'");
КонецЕсли; КонецЕсли;
ВариантыОтчетов.ОшибкаПоВарианту(Ссылка, ТекстОшибки);
ВызватьИсключение ТекстОшибки; ВызватьИсключение ТекстОшибки;
КонецЕсли; КонецЕсли;
Если НЕ ПометкаУдаления И ПользователемИзмененаПометкаУдаления Тогда Если Не ПометкаУдаления И ПользователемИзмененаПометкаУдаления Тогда
НаименованиеЗанято = ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование); НаименованиеЗанято = ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование);
КлючВариантаЗанят = ВариантыОтчетов.КлючВариантаЗанят(Отчет, Ссылка, КлючВарианта); КлючВариантаЗанят = ВариантыОтчетов.КлючВариантаЗанят(Отчет, Ссылка, КлючВарианта);
Если НаименованиеЗанято ИЛИ КлючВариантаЗанят Тогда Если НаименованиеЗанято ИЛИ КлючВариантаЗанят Тогда
@ -58,51 +67,56 @@
КлючВарианта); КлючВарианта);
КонецЕсли; КонецЕсли;
ТекстОшибки = ТекстОшибки + НСтр("ru = 'Перед снятием пометки удаления варианта отчета ТекстОшибки = ТекстОшибки + НСтр("ru = 'Перед снятием пометки удаления варианта отчета
|необходимо установить пометку удаления конфликтующего варианта отчета.'"); |необходимо установить пометку удаления конфликтующего варианта отчета.'");
ВариантыОтчетов.ОшибкаПоВарианту(Ссылка, ТекстОшибки);
ВызватьИсключение ТекстОшибки; ВызватьИсключение ТекстОшибки;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
Если ПользователемИзмененаПометкаУдаления Тогда
ИнтерактивнаяПометкаУдаления = ?(Пользовательский, ПометкаУдаления, Ложь);
КонецЕсли;
// Удаление из табличной части подсистем, помеченных на удаление. // Удаление из табличной части подсистем, помеченных на удаление.
МассивУдаляемыхСтрок = Новый Массив; УдаляемыеСтроки = Новый Массив;
Для Каждого СтрокаРазмещения Из Размещение Цикл Для Каждого СтрокаРазмещения Из Размещение Цикл
Если СтрокаРазмещения.Подсистема.ПометкаУдаления = Истина Тогда Если СтрокаРазмещения.Подсистема.ПометкаУдаления = Истина Тогда
МассивУдаляемыхСтрок.Добавить(СтрокаРазмещения); УдаляемыеСтроки.Добавить(СтрокаРазмещения);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
Для Каждого СтрокаРазмещения Из МассивУдаляемыхСтрок Цикл Для Каждого СтрокаРазмещения Из УдаляемыеСтроки Цикл
Размещение.Удалить(СтрокаРазмещения); Размещение.Удалить(СтрокаРазмещения);
КонецЦикла; КонецЦикла;
// Заполнение реквизитов "НаименованияПолей" и "НаименованияПараметровИОтборов". ЗаполнитьПоляДляПоиска();
ПроиндексироватьНастройки();
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
Процедура ПроиндексироватьНастройки() Процедура ПриЧтенииПредставленийНаСервере() Экспорт
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ЭтотОбъект);
КонецПроцедуры
// Заполнение реквизитов НаименованияПолей и НаименованияПараметровИОтборов.
Процедура ЗаполнитьПоляДляПоиска()
Дополнительный = (ТипОтчета = Перечисления.ТипыОтчетов.Дополнительный); Дополнительный = (ТипОтчета = Перечисления.ТипыОтчетов.Дополнительный);
Если Не Пользовательский И Не Дополнительный Тогда Если Не Пользовательский И Не Дополнительный Тогда
// Для предопределенных вариантов отчетов данные хранятся в неразделенном справочнике.
НаименованияПолей = "";
НаименованияПараметровИОтборов = "";
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Дополнительный И БезопасныйРежим() = Ложь Тогда
Возврат; // Оставить текущие настройки.
КонецЕсли;
Попытка Попытка
ВариантыОтчетов.ПроиндексироватьСодержимоеСхемы(ЭтотОбъект); УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина);
ВариантыОтчетов.ЗаполнитьПоляДляПоиска(ЭтотОбъект);
Исключение Исключение
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось проиндексировать схему варианта ""%1"" отчета ""%2"":'"), НСтр("ru = 'Не удалось проиндексировать схему варианта ""%1"" отчета ""%2"":'"),
КлючВарианта, КлючВарианта, Строка(Отчет));
Строка(Отчет));
ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
ВариантыОтчетов.ОшибкаПоВарианту(Ссылка, ТекстОшибки); ВариантыОтчетов.ЗаписатьВЖурнал(УровеньЖурналаРегистрации.Ошибка, ТекстОшибки, Ссылка);
КонецПопытки; КонецПопытки;
КонецПроцедуры КонецПроцедуры
@ -152,7 +166,7 @@
ТекстОшибки = НеЗаполненоПоле("Отчет"); ТекстОшибки = НеЗаполненоПоле("Отчет");
ИначеЕсли Не ЗначениеЗаполнено(ТипОтчета) Тогда ИначеЕсли Не ЗначениеЗаполнено(ТипОтчета) Тогда
ТекстОшибки = НеЗаполненоПоле("ТипОтчета"); ТекстОшибки = НеЗаполненоПоле("ТипОтчета");
ИначеЕсли ТипОтчета <> ВариантыОтчетовКлиентСервер.ТипОтчета(Отчет) Тогда ИначеЕсли ТипОтчета <> ВариантыОтчетов.ТипОтчета(Отчет) Тогда
ТекстОшибки = НСтр("ru = 'Противоречивые значения полей ""%1"" и ""%2""'"); ТекстОшибки = НСтр("ru = 'Противоречивые значения полей ""%1"" и ""%2""'");
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, "ТипОтчета", "Отчет"); ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, "ТипОтчета", "Отчет");
ИначеЕсли Не ЗначениеЗаполнено(ПредопределенныйВариант) ИначеЕсли Не ЗначениеЗаполнено(ПредопределенныйВариант)
@ -170,4 +184,6 @@
#КонецОбласти #КонецОбласти
#КонецЕсли #Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли

View File

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Width>70</Width>
<Height>14</Height>
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode> <WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<ChildItems> <ChildItems>
@ -18,42 +16,16 @@
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar> <LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="ДеревоПодсистемСнятьФлажкиExtendedTooltip" id="80"/> <ExtendedTooltip name="ДеревоПодсистемСнятьФлажкиExtendedTooltip" id="80"/>
</Button> </Button>
<Button name="ДеревоПодсистемПеречитать" id="75">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.Перечитать</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="ДеревоПодсистемПеречитатьExtendedTooltip" id="81"/>
</Button>
</ChildItems> </ChildItems>
</AutoCommandBar> </AutoCommandBar>
<Events> <Events>
<Event name="047d4d09-961c-4bdc-8519-eef10674c35b">ПослеЗаписи</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="bf0ac0e1-bcbb-4dfe-8fc4-0b1923b461a6">ПередЗаписьюНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<InputField name="ИзменяемыеВарианты" id="56">
<DataPath>ИзменяемыеВарианты</DataPath>
<TitleLocation>Left</TitleLocation>
<Height>2</Height>
<VerticalStretch>false</VerticalStretch>
<MultiLine>true</MultiLine>
<ChoiceButton>true</ChoiceButton>
<ClearButton>false</ClearButton>
<SpinButton>false</SpinButton>
<OpenButton>false</OpenButton>
<AutoMarkIncomplete>true</AutoMarkIncomplete>
<ChoiceListButton>false</ChoiceListButton>
<BackColor>style:ФонУправляющегоПоля</BackColor>
<ContextMenu name="ИзменяемыеВариантыКонтекстноеМеню" id="57"/>
<ExtendedTooltip name="ИзменяемыеВариантыExtendedTooltip" id="82"/>
<Events>
<Event name="OnChange">ИзменяемыеВариантыПриИзменении</Event>
</Events>
</InputField>
<Table name="ДеревоПодсистем" id="7"> <Table name="ДеревоПодсистем" id="7">
<Representation>Tree</Representation> <Representation>Tree</Representation>
<DefaultItem>true</DefaultItem>
<ChangeRowOrder>false</ChangeRowOrder> <ChangeRowOrder>false</ChangeRowOrder>
<SelectionMode>SingleRow</SelectionMode> <SelectionMode>SingleRow</SelectionMode>
<AutoInsertNewRow>true</AutoInsertNewRow> <AutoInsertNewRow>true</AutoInsertNewRow>
@ -62,6 +34,12 @@
<EnableDrag>true</EnableDrag> <EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>ДеревоПодсистем</DataPath> <DataPath>ДеревоПодсистем</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дерево подсистем</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Add</ExcludedCommand> <ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
@ -74,9 +52,6 @@
<ExcludedCommand>SortListDesc</ExcludedCommand> <ExcludedCommand>SortListDesc</ExcludedCommand>
<ExcludedCommand>Tree</ExcludedCommand> <ExcludedCommand>Tree</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="8"> <ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="8">
<ChildItems> <ChildItems>
<Button name="ДеревоПодсистемКонтекстноеМенюСнятьФлажки" id="78"> <Button name="ДеревоПодсистемКонтекстноеМенюСнятьФлажки" id="78">
@ -84,11 +59,6 @@
<CommandName>Form.Command.СнятьФлажки</CommandName> <CommandName>Form.Command.СнятьФлажки</CommandName>
<ExtendedTooltip name="ДеревоПодсистемКонтекстноеМенюСнятьФлажкиExtendedTooltip" id="83"/> <ExtendedTooltip name="ДеревоПодсистемКонтекстноеМенюСнятьФлажкиExtendedTooltip" id="83"/>
</Button> </Button>
<Button name="ДеревоПодсистемКонтекстноеМенюПеречитать" id="77">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.Перечитать</CommandName>
<ExtendedTooltip name="ДеревоПодсистемКонтекстноеМенюПеречитатьExtendedTooltip" id="84"/>
</Button>
</ChildItems> </ChildItems>
</ContextMenu> </ContextMenu>
<AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="9"> <AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="9">
@ -120,23 +90,17 @@
<ExtendedTooltip name="ДеревоПодсистемУправлениеПоискомРасширеннаяПодсказка" id="98"/> <ExtendedTooltip name="ДеревоПодсистемУправлениеПоискомРасширеннаяПодсказка" id="98"/>
</SearchControlAddition> </SearchControlAddition>
<ChildItems> <ChildItems>
<ColumnGroup name="ГруппаКолонок" id="73"> <ColumnGroup name="ГруппаКолонок" id="73" DisplayImportance="VeryHigh">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа колонок</v8:content> <v8:content>Колонок</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа колонок</v8:content>
</v8:item>
</ToolTip>
<Group>InCell</Group> <Group>InCell</Group>
<ExtendedTooltip name="ГруппаКолонокExtendedTooltip" id="86"/> <ExtendedTooltip name="ГруппаКолонокExtendedTooltip" id="86"/>
<ChildItems> <ChildItems>
<CheckBoxField name="ДеревоПодсистемИспользование" id="69"> <CheckBoxField name="ДеревоПодсистемИспользование" id="69" DisplayImportance="VeryHigh">
<DataPath>ДеревоПодсистем.Использование</DataPath> <DataPath>ДеревоПодсистем.Использование</DataPath>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<HorizontalAlign>Left</HorizontalAlign> <HorizontalAlign>Left</HorizontalAlign>
@ -148,7 +112,7 @@
<Event name="OnChange">ДеревоПодсистемИспользованиеПриИзменении</Event> <Event name="OnChange">ДеревоПодсистемИспользованиеПриИзменении</Event>
</Events> </Events>
</CheckBoxField> </CheckBoxField>
<InputField name="ДеревоПодсистемПредставление" id="61"> <InputField name="ДеревоПодсистемПредставление" id="61" DisplayImportance="VeryHigh">
<DataPath>ДеревоПодсистем.Представление</DataPath> <DataPath>ДеревоПодсистем.Представление</DataPath>
<ReadOnly>true</ReadOnly> <ReadOnly>true</ReadOnly>
<HorizontalAlign>Left</HorizontalAlign> <HorizontalAlign>Left</HorizontalAlign>
@ -179,36 +143,7 @@
</Table> </Table>
</ChildItems> </ChildItems>
<Attributes> <Attributes>
<Attribute name="ТолькоДляАвтора" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только для автора</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="Автор" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автор</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.ВнешниеПользователи</v8:Type>
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type>
</Type>
</Attribute>
<Attribute name="ИзменяемыеВарианты" id="1"> <Attribute name="ИзменяемыеВарианты" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Варианты отчетов</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>v8:ValueListType</v8:Type> <v8:Type>v8:ValueListType</v8:Type>
</Type> </Type>
@ -217,12 +152,6 @@
</Settings> </Settings>
</Attribute> </Attribute>
<Attribute name="КоличествоВариантов" id="5"> <Attribute name="КоличествоВариантов" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Количество вариантов</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:decimal</v8:Type> <v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers> <v8:NumberQualifiers>
@ -233,12 +162,6 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="СмешаннаяВажность" id="2"> <Attribute name="СмешаннаяВажность" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Смешанная важность</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -247,13 +170,7 @@
</v8:StringQualifiers> </v8:StringQualifiers>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="РезультатВыполнения" id="4"> <Attribute name="СообщенияОбОшибках" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Результат выполнения</v8:content>
</v8:item>
</Title>
<Type/> <Type/>
</Attribute> </Attribute>
<Attribute name="ДеревоПодсистем" id="3"> <Attribute name="ДеревоПодсистем" id="3">
@ -268,12 +185,6 @@
</Type> </Type>
<Columns> <Columns>
<Column name="Ссылка" id="1"> <Column name="Ссылка" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
@ -295,12 +206,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Имя" id="3"> <Column name="Имя" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -310,12 +215,6 @@
</Type> </Type>
</Column> </Column>
<Column name="ПолноеИмя" id="4"> <Column name="ПолноеИмя" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полное имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -325,12 +224,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Приоритет" id="5"> <Column name="Приоритет" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Приоритет</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -371,12 +264,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Модифицированность" id="10"> <Column name="Модифицированность" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Модифицированность</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -426,26 +313,10 @@
<Representation>TextPicture</Representation> <Representation>TextPicture</Representation>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
<Command name="Перечитать" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Перечитать</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Перечитать</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.Reread</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>Перечитать</Action>
<Representation>TextPicture</Representation>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands> </Commands>
<Parameters>
<Parameter name="Варианты">
<Type/>
</Parameter>
</Parameters>
</Form> </Form>

View File

@ -1,48 +1,41 @@
#Область ОбработчикиСобытийФормы ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УстановитьУсловноеОформление(); УстановитьУсловноеОформление();
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
СмешаннаяВажность = НСтр("ru = 'Различная'"); СмешаннаяВажность = НСтр("ru = 'Различная'");
// Контроль количества вариантов осуществляется до открытия формы. // Контроль количества вариантов осуществляется до открытия формы.
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.МассивВариантов); ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.Варианты);
КоличествоВариантов = ИзменяемыеВарианты.Количество();
ЗаполнитьРазделы();
ПерезаполнитьДерево(Ложь);
ВариантыОтчетов.ДеревоПодсистемДобавитьУсловноеОформление(ЭтотОбъект);
ТекущийЭлемент = Элементы.ДеревоПодсистем;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
Если РезультатВыполнения <> Неопределено Тогда Если СообщенияОбОшибках <> Неопределено Тогда
Если РезультатВыполнения.Свойство("Отказ") И РезультатВыполнения.Отказ = Истина Тогда Отказ = Истина;
Отказ = Истина; ОчиститьСообщения();
ПоказатьРезультатВыполнения(); СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(Неопределено,
Иначе СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1
ПодключитьОбработчикОжидания("ПоказатьРезультатВыполнения", 0.2, Истина); |Подробности:
КонецЕсли; |%2'"), СообщенияОбОшибках.Текст, СообщенияОбОшибках.Подробно), РежимДиалогаВопрос.ОК);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ИзменяемыеВариантыПриИзменении(Элемент)
ПерезаполнитьДерево(Ложь);
ПоказатьРезультатВыполнения();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПодсистем #Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПодсистем
&НаКлиенте &НаКлиенте
@ -61,32 +54,18 @@
&НаКлиенте &НаКлиенте
Процедура Разместить(Команда) Процедура Разместить(Команда)
Если ПроверитьКоличествоВариантов() Тогда ЗаписатьНаСервере();
ЗаписатьНаСервере(); ТекстОповещения = НСтр("ru = 'Изменены настройки вариантов отчетов (%1 шт.).'");
ТекстОповещения = НСтр("ru = 'Изменены настройки вариантов отчетов (%1 шт.).'"); ТекстОповещения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОповещения, Формат(ИзменяемыеВарианты.Количество(), "ЧН=0; ЧГ=0"));
ТекстОповещения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОповещения, Формат(ИзменяемыеВарианты.Количество(), "ЧН=0; ЧГ=0")); ПоказатьОповещениеПользователя(, , ТекстОповещения);
ПоказатьОповещениеПользователя(, , ТекстОповещения); ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы();
ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(); Закрыть();
Закрыть();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Перечитать(Команда)
Если ПроверитьКоличествоВариантов() Тогда
ПерезаполнитьДерево(Ложь);
Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина);
ПоказатьРезультатВыполнения();
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура СнятьФлажки(Команда) Процедура СнятьФлажки(Команда)
Если ПроверитьКоличествоВариантов() Тогда СнятьФлажкиРазделов();
ПерезаполнитьДерево(Истина); Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина);
Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина);
ПоказатьРезультатВыполнения();
КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -95,68 +74,46 @@
&НаСервере &НаСервере
Процедура УстановитьУсловноеОформление() Процедура УстановитьУсловноеОформление()
Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления();
Инструкция.Поля = "ДеревоПодсистемВажность"; УсловноеОформление.Элементы.Очистить();
Инструкция.Отборы.Вставить("ДеревоПодсистем.Важность", Новый ПолеКомпоновкиДанных("СмешаннаяВажность"));
Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ЗаблокированныйРеквизитЦвет); Элемент = УсловноеОформление.Элементы.Добавить();
СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДеревоПодсистемВажность.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоПодсистем.Важность");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Новый ПолеКомпоновкиДанных("СмешаннаяВажность");
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЗаблокированныйРеквизитЦвет);
ВариантыОтчетов.УстановитьУсловноеОформлениеДереваПодсистем(ЭтотОбъект);
КонецПроцедуры КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Клиент
&НаКлиенте
Функция ПроверитьКоличествоВариантов()
ОчиститьСообщения();
Если КоличествоВариантов = 0 Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Необходимо заполнить список ""Варианты отчетов""'"),
,
"ИзменяемыеВарианты");
Возврат Ложь;
КонецЕсли;
Возврат Истина;
КонецФункции
&НаКлиенте
Процедура ПоказатьРезультатВыполнения()
ОчиститьСообщения();
Если РезультатВыполнения <> Неопределено Тогда
СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, РезультатВыполнения);
РезультатВыполнения = Неопределено;
КонецЕсли;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Вызов сервера
&НаСервере &НаСервере
Процедура ПерезаполнитьДерево(ТолькоСнятьФлажки) Процедура СнятьФлажкиРазделов()
Если ТолькоСнятьФлажки = Истина Тогда ДеревоПриемник = РеквизитФормыВЗначение("ДеревоПодсистем", Тип("ДеревоЗначений"));
ДеревоПриемник = РеквизитФормыВЗначение("ДеревоПодсистем", Тип("ДеревоЗначений")); Найденные = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Использование", 1), Истина);
Найденные = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Использование", 1), Истина); Для Каждого СтрокаДерева Из Найденные Цикл
Для Каждого СтрокаДерева Из Найденные Цикл СтрокаДерева.Использование = 0;
СтрокаДерева.Использование = 0; СтрокаДерева.Модифицированность = Истина;
СтрокаДерева.Модифицированность = Истина; КонецЦикла;
КонецЦикла;
Найденные = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Использование", 2), Истина);
Для Каждого СтрокаДерева Из Найденные Цикл
СтрокаДерева.Использование = 0;
СтрокаДерева.Модифицированность = Истина;
КонецЦикла;
ЗначениеВРеквизитФормы(ДеревоПриемник, "ДеревоПодсистем");
Возврат;
КонецЕсли;
КоличествоВариантов = ИзменяемыеВарианты.Количество(); Найденные = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Использование", 2), Истина);
Если КоличествоВариантов = 0 Тогда Для Каждого СтрокаДерева Из Найденные Цикл
ТекстСообщения = НСтр("ru = 'Необходимо выбрать варианты отчетов'"); СтрокаДерева.Использование = 0;
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, , "ИзменяемыеВарианты"); СтрокаДерева.Модифицированность = Истина;
Возврат; КонецЦикла;
КонецЕсли;
ЗначениеВРеквизитФормы(ДеревоПриемник, "ДеревоПодсистем");
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьРазделы()
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
@ -272,8 +229,8 @@
Запрос.УстановитьПараметр("МассивВариантов", ИзменяемыеВарианты.ВыгрузитьЗначения()); Запрос.УстановитьПараметр("МассивВариантов", ИзменяемыеВарианты.ВыгрузитьЗначения());
Запрос.УстановитьПараметр("ОтчетыПользователя", ВариантыОтчетов.ОтчетыТекущегоПользователя()); Запрос.УстановитьПараметр("ОтчетыПользователя", ВариантыОтчетов.ОтчетыТекущегоПользователя());
Запрос.УстановитьПараметр("ОтключенныеВариантыПрограммы", ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы()); Запрос.УстановитьПараметр("ОтключенныеВариантыПрограммы", ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы());
Запрос.УстановитьПараметр("ПредставлениеВажный", ВариантыОтчетовКлиентСервер.ПредставлениеВажный()); Запрос.УстановитьПараметр("ПредставлениеВажный", ВариантыОтчетов.ПредставлениеВажный());
Запрос.УстановитьПараметр("ПредставлениеСмТакже", ВариантыОтчетовКлиентСервер.ПредставлениеСмТакже()); Запрос.УстановитьПараметр("ПредставлениеСмТакже", ВариантыОтчетов.ПредставлениеСмТакже());
Запрос.Текст = ТекстЗапроса; Запрос.Текст = ТекстЗапроса;
ВременныеТаблицы = Запрос.ВыполнитьПакет(); ВременныеТаблицы = Запрос.ВыполнитьПакет();
@ -282,45 +239,39 @@
КоличествоОшибок = ОтфильтрованныеВарианты.Количество(); КоличествоОшибок = ОтфильтрованныеВарианты.Количество();
Если КоличествоОшибок > 0 Тогда Если КоличествоОшибок > 0 Тогда
РезультатВыполнения = Новый Структура("Текст, Подробно"); СообщенияОбОшибках = Новый Структура("Текст, Подробно");
ТекущаяПричина = 0; ТекущаяПричина = 0;
ПрефиксЗаписи = Символы.ПС + " "; СообщенияОбОшибках.Подробно = "";
РезультатВыполнения.Подробно = "";
Для Каждого СтрокаТаблицы Из ОтфильтрованныеВарианты Цикл Для Каждого СтрокаТаблицы Из ОтфильтрованныеВарианты Цикл
Если ТекущаяПричина <> СтрокаТаблицы.Причина Тогда Если ТекущаяПричина <> СтрокаТаблицы.Причина Тогда
ТекущаяПричина = СтрокаТаблицы.Причина; ТекущаяПричина = СтрокаТаблицы.Причина;
РезультатВыполнения.Подробно = РезультатВыполнения.Подробно + Символы.ПС + Символы.ПС; СообщенияОбОшибках.Подробно = СообщенияОбОшибках.Подробно + Символы.ПС + Символы.ПС;
Если ТекущаяПричина = 1 Тогда Если ТекущаяПричина = 1 Тогда
РезультатВыполнения.Подробно = РезультатВыполнения.Подробно + НСтр("ru = 'Помеченные на удаление:'"); СообщенияОбОшибках.Подробно = СообщенияОбОшибках.Подробно + НСтр("ru = 'Помеченные на удаление:'");
ИначеЕсли ТекущаяПричина = 2 Тогда ИначеЕсли ТекущаяПричина = 2 Тогда
РезультатВыполнения.Подробно = РезультатВыполнения.Подробно + НСтр("ru = 'Недостаточно прав для изменения:'"); СообщенияОбОшибках.Подробно = СообщенияОбОшибках.Подробно + НСтр("ru = 'Недостаточно прав для изменения:'");
ИначеЕсли ТекущаяПричина = 3 Тогда ИначеЕсли ТекущаяПричина = 3 Тогда
РезультатВыполнения.Подробно = РезультатВыполнения.Подробно + НСтр("ru = 'Отчет отключен или недоступен по правам:'"); СообщенияОбОшибках.Подробно = СообщенияОбОшибках.Подробно + НСтр("ru = 'Отчет отключен или недоступен по правам:'");
ИначеЕсли ТекущаяПричина = 4 Тогда ИначеЕсли ТекущаяПричина = 4 Тогда
РезультатВыполнения.Подробно = РезультатВыполнения.Подробно + НСтр("ru = 'Вариант отчета отключен по функциональной опции:'"); СообщенияОбОшибках.Подробно = СообщенияОбОшибках.Подробно + НСтр("ru = 'Вариант отчета отключен по функциональной опции:'");
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
РезультатВыполнения.Подробно = СокрЛ(РезультатВыполнения.Подробно) + Символы.ПС + " - " + Строка(СтрокаТаблицы.Ссылка); СообщенияОбОшибках.Подробно = СокрЛ(СообщенияОбОшибках.Подробно) + Символы.ПС + " - " + Строка(СтрокаТаблицы.Ссылка);
ИзменяемыеВарианты.Удалить(ИзменяемыеВарианты.НайтиПоЗначению(СтрокаТаблицы.Ссылка)); ИзменяемыеВарианты.Удалить(ИзменяемыеВарианты.НайтиПоЗначению(СтрокаТаблицы.Ссылка));
КонецЦикла; КонецЦикла;
КоличествоВариантов = ИзменяемыеВарианты.Количество(); КоличествоВариантов = ИзменяемыеВарианты.Количество();
Если КоличествоВариантов = 0 Тогда Если КоличествоВариантов = 0 Тогда
РезультатВыполнения.Текст = НСтр("ru = 'Недостаточно прав для размещения в разделах выбранных вариантов отчетов.'"); СообщенияОбОшибках.Текст = НСтр("ru = 'Недостаточно прав для размещения в разделах выбранных вариантов отчетов.'");
Элементы.ДеревоПодсистем.Доступность = Ложь;
РезультатВыполнения.Вставить("Отказ", Истина);
Иначе Иначе
РезультатВыполнения.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СообщенияОбОшибках.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Недостаточно прав для размещения в разделах некоторых вариантов отчетов (%1).'"), НСтр("ru = 'Недостаточно прав для размещения в разделах некоторых вариантов отчетов (%1).'"),
Формат(КоличествоОшибок, "ЧГ=")); Формат(КоличествоОшибок, "ЧГ="));
Элементы.ДеревоПодсистем.Доступность = Истина;
КонецЕсли; КонецЕсли;
РезультатВыполнения = Новый ФиксированнаяСтруктура(РезультатВыполнения); СообщенияОбОшибках = Новый ФиксированнаяСтруктура(СообщенияОбОшибках);
Иначе
Элементы.ДеревоПодсистем.Доступность = Истина;
КонецЕсли; КонецЕсли;
ВхожденияПодсистем = ВременныеТаблицы[4].Выгрузить(); ВхожденияПодсистем = ВременныеТаблицы[4].Выгрузить();
@ -337,13 +288,22 @@
&НаСервере &НаСервере
Процедура ЗаписатьНаСервере() Процедура ЗаписатьНаСервере()
Кэш = Новый Структура;
ДеревоПриемник = РеквизитФормыВЗначение("ДеревоПодсистем", Тип("ДеревоЗначений"));
ИзмененныеРазделы = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Модифицированность", Истина), Истина);
НачатьТранзакцию(); НачатьТранзакцию();
Попытка Попытка
Для Каждого ЭлементСписка Из ИзменяемыеВарианты Цикл Блокировка = Новый БлокировкаДанных;
ВариантОбъект = ЭлементСписка.Значение.ПолучитьОбъект(); Для Каждого ВариантОтчета Из ИзменяемыеВарианты Цикл
ВариантыОтчетов.ДеревоПодсистемЗаписать(ЭтотОбъект, ВариантОбъект, Кэш); ЭлементБлокировки = Блокировка.Добавить(Метаданные.Справочники.ВариантыОтчетов.ПолноеИмя());
ЭлементБлокировки.УстановитьЗначение("Ссылка", ВариантОтчета.Значение);
КонецЦикла;
Блокировка.Заблокировать();
Для Каждого ВариантОтчета Из ИзменяемыеВарианты Цикл
ВариантОбъект = ВариантОтчета.Значение.ПолучитьОбъект();
ВариантыОтчетов.ДеревоПодсистемЗаписать(ВариантОбъект, ИзмененныеРазделы);
ВариантОбъект.Записать(); ВариантОбъект.Записать();
КонецЦикла; КонецЦикла;
ЗафиксироватьТранзакцию(); ЗафиксироватьТранзакцию();
@ -354,9 +314,6 @@
КонецПроцедуры КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Сервер
&НаСервере &НаСервере
Процедура ДобавитьПодсистемыВДерево(ПриемникРодитель, ИсточникРодитель, ВхожденияПодсистем) Процедура ДобавитьПодсистемыВДерево(ПриемникРодитель, ИсточникРодитель, ВхожденияПодсистем)
Для Каждого Источник Из ИсточникРодитель.Строки Цикл Для Каждого Источник Из ИсточникРодитель.Строки Цикл
@ -387,4 +344,4 @@
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -29,6 +29,7 @@
</Events> </Events>
<ChildItems> <ChildItems>
<LabelDecoration name="Надпись2" id="11"> <LabelDecoration name="Надпись2" id="11">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="true"> <Title formatted="true">
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -40,6 +41,7 @@
<ExtendedTooltip name="Надпись2РасширеннаяПодсказка" id="13"/> <ExtendedTooltip name="Надпись2РасширеннаяПодсказка" id="13"/>
</LabelDecoration> </LabelDecoration>
<LabelDecoration name="Надпись1" id="1"> <LabelDecoration name="Надпись1" id="1">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="true"> <Title formatted="true">
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -52,12 +54,6 @@
</ChildItems> </ChildItems>
<Attributes> <Attributes>
<Attribute name="ИзменяемыеВарианты" id="1"> <Attribute name="ИзменяемыеВарианты" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Варианты отчетов</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>v8:ValueListType</v8:Type> <v8:Type>v8:ValueListType</v8:Type>
</Type> </Type>
@ -66,12 +62,6 @@
</Settings> </Settings>
</Attribute> </Attribute>
<Attribute name="ТекстОшибки" id="2"> <Attribute name="ТекстОшибки" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текст ошибки</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>

View File

@ -1,18 +1,23 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
Если Не Параметры.Свойство("МассивВариантов") Или ТипЗнч(Параметры.МассивВариантов) <> Тип("Массив") Тогда Если Не Параметры.Свойство("Варианты") Или ТипЗнч(Параметры.Варианты) <> Тип("Массив") Тогда
ТекстОшибки = НСтр("ru = 'Не указаны варианты отчетов.'"); ТекстОшибки = НСтр("ru = 'Не указаны варианты отчетов.'");
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.МассивВариантов); ОпределитьПоведениеВМобильномКлиенте();
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.Варианты);
Отфильтровать(); Отфильтровать();
КонецПроцедуры КонецПроцедуры
@ -65,6 +70,13 @@
КоличествоВариантов = 0; КоличествоВариантов = 0;
НачатьТранзакцию(); НачатьТранзакцию();
Попытка Попытка
Блокировка = Новый БлокировкаДанных;
Для Каждого ЭлементСписка Из ИзменяемыеВарианты Цикл
ЭлементБлокировки = Блокировка.Добавить(Метаданные.Справочники.ВариантыОтчетов.ПолноеИмя());
ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлементСписка.Значение);
КонецЦикла;
Блокировка.Заблокировать();
Для Каждого ЭлементСписка Из ИзменяемыеВарианты Цикл Для Каждого ЭлементСписка Из ИзменяемыеВарианты Цикл
ВариантОбъект = ЭлементСписка.Значение.ПолучитьОбъект(); ВариантОбъект = ЭлементСписка.Значение.ПолучитьОбъект();
Если ВариантыОтчетов.СброситьНастройкиВариантаОтчета(ВариантОбъект) Тогда Если ВариантыОтчетов.СброситьНастройкиВариантаОтчета(ВариантОбъект) Тогда
@ -83,6 +95,15 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Сервер // Сервер
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецПроцедуры
&НаСервере &НаСервере
Процедура Отфильтровать() Процедура Отфильтровать()

View File

@ -29,6 +29,7 @@
</Events> </Events>
<ChildItems> <ChildItems>
<LabelDecoration name="Надпись2" id="11"> <LabelDecoration name="Надпись2" id="11">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="true"> <Title formatted="true">
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -40,6 +41,7 @@
<ExtendedTooltip name="Надпись2РасширеннаяПодсказка" id="13"/> <ExtendedTooltip name="Надпись2РасширеннаяПодсказка" id="13"/>
</LabelDecoration> </LabelDecoration>
<LabelDecoration name="Надпись1" id="1"> <LabelDecoration name="Надпись1" id="1">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="true"> <Title formatted="true">
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -52,12 +54,6 @@
</ChildItems> </ChildItems>
<Attributes> <Attributes>
<Attribute name="ИзменяемыеВарианты" id="1"> <Attribute name="ИзменяемыеВарианты" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Варианты отчетов</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>v8:ValueListType</v8:Type> <v8:Type>v8:ValueListType</v8:Type>
</Type> </Type>
@ -66,12 +62,6 @@
</Settings> </Settings>
</Attribute> </Attribute>
<Attribute name="ТекстОшибки" id="2"> <Attribute name="ТекстОшибки" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текст ошибки</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>

View File

@ -1,24 +1,29 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
Если Не Параметры.Свойство("МассивВариантов") Или ТипЗнч(Параметры.МассивВариантов) <> Тип("Массив") Тогда Если Не Параметры.Свойство("Варианты") Или ТипЗнч(Параметры.Варианты) <> Тип("Массив") Тогда
ТекстОшибки = НСтр("ru = 'Не указаны варианты отчетов.'"); ТекстОшибки = НСтр("ru = 'Не указаны варианты отчетов.'");
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Не ЕстьПользовательскиеНастройки(Параметры.МассивВариантов) Тогда Если Не ЕстьПользовательскиеНастройки(Параметры.Варианты) Тогда
ТекстОшибки = НСтр("ru = 'Пользовательские настройки выбранных вариантов отчетов (%1 шт) не заданы или уже сброшены.'"); ТекстОшибки = НСтр("ru = 'Пользовательские настройки выбранных вариантов отчетов (%1 шт) не заданы или уже сброшены.'");
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, Формат(Параметры.МассивВариантов.Количество(), "ЧН=0; ЧГ=0")); ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, Формат(Параметры.Варианты.Количество(), "ЧН=0; ЧГ=0"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.МассивВариантов); ОпределитьПоведениеВМобильномКлиенте();
ИзменяемыеВарианты.ЗагрузитьЗначения(Параметры.Варианты);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -65,27 +70,44 @@
// Вызов сервера // Вызов сервера
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция СброситьНастройкиПользователейСервер(Знач ИзменяемыеВарианты) Процедура СброситьНастройкиПользователейСервер(Знач ИзменяемыеВарианты)
НачатьТранзакцию(); НачатьТранзакцию();
Попытка Попытка
Блокировка = Новый БлокировкаДанных;
Для Каждого ЭлементСписка Из ИзменяемыеВарианты Цикл
ЭлементБлокировки = Блокировка.Добавить(Метаданные.Справочники.ВариантыОтчетов.ПолноеИмя());
ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлементСписка.Значение);
КонецЦикла;
Блокировка.Заблокировать();
РегистрыСведений.НастройкиВариантовОтчетов.СброситьНастройки(ИзменяемыеВарианты.ВыгрузитьЗначения()); РегистрыСведений.НастройкиВариантовОтчетов.СброситьНастройки(ИзменяемыеВарианты.ВыгрузитьЗначения());
ЗафиксироватьТранзакцию(); ЗафиксироватьТранзакцию();
Исключение Исключение
ОтменитьТранзакцию(); ОтменитьТранзакцию();
ВызватьИсключение; ВызватьИсключение;
КонецПопытки; КонецПопытки;
КонецФункции КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Сервер // Сервер
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецПроцедуры
&НаСервере &НаСервере
Функция ЕстьПользовательскиеНастройки(МассивВариантов) Функция ЕстьПользовательскиеНастройки(МассивВариантов)
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.УстановитьПараметр("МассивВариантов", МассивВариантов); Запрос.УстановитьПараметр("МассивВариантов", МассивВариантов);
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1 "ВЫБРАТЬ ПЕРВЫЕ 1
| ИСТИНА КАК Поле1 | ИСТИНА КАК ЕстьПользовательскиеНастройки
|ИЗ |ИЗ
| РегистрСведений.НастройкиВариантовОтчетов КАК Настройки | РегистрСведений.НастройкиВариантовОтчетов КАК Настройки
|ГДЕ |ГДЕ

View File

@ -1,6 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<CommandBarLocation>Top</CommandBarLocation> <CommandBarLocation>Top</CommandBarLocation>
<MobileDeviceCommandBarContent>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">Выбрать</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">Просмотр</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">Изменить</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">РазместитьВРазделах</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">Справка</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">СписокГруппа1</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">КомандыСписка</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">СброситьНастройкиРазмещения</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">СброситьНастройкиПользователей</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">УстановитьПометкуУдаления</xr:Value>
</xr:Item>
</MobileDeviceCommandBarContent>
<CommandSet> <CommandSet>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Create</ExcludedCommand> <ExcludedCommand>Create</ExcludedCommand>
@ -21,13 +73,6 @@
<v8:content>Быстрые отборы</v8:content> <v8:content>Быстрые отборы</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Быстрые отборы</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="БыстрыеОтборыExtendedTooltip" id="98"/> <ExtendedTooltip name="БыстрыеОтборыExtendedTooltip" id="98"/>
@ -105,12 +150,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -123,12 +162,6 @@
<v8:content>Командная панель</v8:content> <v8:content>Командная панель</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="КоманднаяПанельExtendedTooltip" id="102"/> <ExtendedTooltip name="КоманднаяПанельExtendedTooltip" id="102"/>
<ChildItems> <ChildItems>
<Button name="Выбрать" id="84"> <Button name="Выбрать" id="84">
@ -166,6 +199,12 @@
<ExtendedTooltip name="СправкаExtendedTooltip" id="108"/> <ExtendedTooltip name="СправкаExtendedTooltip" id="108"/>
</Button> </Button>
<ButtonGroup name="СписокГруппа1" id="188"> <ButtonGroup name="СписокГруппа1" id="188">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список группа 1</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СписокГруппа1РасширеннаяПодсказка" id="189"/> <ExtendedTooltip name="СписокГруппа1РасширеннаяПодсказка" id="189"/>
<ChildItems> <ChildItems>
<Button name="СписокНайти" id="190"> <Button name="СписокНайти" id="190">
@ -195,12 +234,6 @@
<v8:content>Команды списка</v8:content> <v8:content>Команды списка</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команды списка</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Item.Список</CommandSource> <CommandSource>Item.Список</CommandSource>
<ExtendedTooltip name="КомандыСпискаExtendedTooltip" id="109"/> <ExtendedTooltip name="КомандыСпискаExtendedTooltip" id="109"/>
</ButtonGroup> </ButtonGroup>
@ -230,37 +263,24 @@
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа горизонтальная</v8:content> <v8:content>Горизонтальная</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа горизонтальная</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаГоризонтальнаяExtendedTooltip" id="113"/> <ExtendedTooltip name="ГруппаГоризонтальнаяExtendedTooltip" id="113"/>
<ChildItems> <ChildItems>
<UsualGroup name="ЛеваяКолонка" id="92"> <UsualGroup name="ГруппаРазделы" id="92">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Левая колонка</v8:content> <v8:content>Все разделы</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Левая колонка</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ЛеваяКолонкаExtendedTooltip" id="114"/> <ExtendedTooltip name="ГруппаРазделыРасширеннаяПодсказка" id="114"/>
<ChildItems> <ChildItems>
<Table name="ДеревоПодсистем" id="65"> <Table name="ДеревоПодсистем" id="65">
<Representation>Tree</Representation> <Representation>Tree</Representation>
@ -274,6 +294,12 @@
<EnableDrag>true</EnableDrag> <EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>ДеревоПодсистем</DataPath> <DataPath>ДеревоПодсистем</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Разделы</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Add</ExcludedCommand> <ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>Change</ExcludedCommand> <ExcludedCommand>Change</ExcludedCommand>
@ -284,9 +310,6 @@
<ExcludedCommand>MoveDown</ExcludedCommand> <ExcludedCommand>MoveDown</ExcludedCommand>
<ExcludedCommand>MoveUp</ExcludedCommand> <ExcludedCommand>MoveUp</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="66"/> <ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="66"/>
<AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="67"> <AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="67">
<Autofill>false</Autofill> <Autofill>false</Autofill>
@ -349,11 +372,16 @@
<Representation>Tree</Representation> <Representation>Tree</Representation>
<CommandBarLocation>None</CommandBarLocation> <CommandBarLocation>None</CommandBarLocation>
<Width>60</Width> <Width>60</Width>
<ChoiceMode>true</ChoiceMode>
<UseAlternationRowColor>true</UseAlternationRowColor> <UseAlternationRowColor>true</UseAlternationRowColor>
<EnableStartDrag>true</EnableStartDrag> <EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.ИндексКартинки</RowPictureDataPath>
<RowsPicture>
<xr:Ref>CommonPicture.ПиктограммыЭлементов</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</RowsPicture>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -368,9 +396,6 @@
<ExcludedCommand>LevelUp</ExcludedCommand> <ExcludedCommand>LevelUp</ExcludedCommand>
<ExcludedCommand>MoveItem</ExcludedCommand> <ExcludedCommand>MoveItem</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -413,12 +438,6 @@
<v8:content>Команды списка</v8:content> <v8:content>Команды списка</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команды списка</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Item.Список</CommandSource> <CommandSource>Item.Список</CommandSource>
<ExtendedTooltip name="КомандыСпискаСписокExtendedTooltip" id="121"/> <ExtendedTooltip name="КомандыСпискаСписокExtendedTooltip" id="121"/>
</ButtonGroup> </ButtonGroup>
@ -468,12 +487,6 @@
<v8:content>Строки</v8:content> <v8:content>Строки</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Строки</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="СтрокиРасширеннаяПодсказка" id="138"/> <ExtendedTooltip name="СтрокиРасширеннаяПодсказка" id="138"/>
<ChildItems> <ChildItems>
<ColumnGroup name="КолонкиПервойСтроки" id="139"> <ColumnGroup name="КолонкиПервойСтроки" id="139">
@ -486,13 +499,19 @@
<Group>Horizontal</Group> <Group>Horizontal</Group>
<ExtendedTooltip name="КолонкиПервойСтрокиРасширеннаяПодсказка" id="140"/> <ExtendedTooltip name="КолонкиПервойСтрокиРасширеннаяПодсказка" id="140"/>
<ChildItems> <ChildItems>
<LabelField name="Наименование" id="4"> <LabelField name="Наименование" id="4" DisplayImportance="VeryHigh">
<DataPath>Список.Description</DataPath> <DataPath>Список.Наименование</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<Width>40</Width> <Width>40</Width>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="5"/> <ContextMenu name="НаименованиеКонтекстноеМеню" id="5"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="124"/> <ExtendedTooltip name="НаименованиеExtendedTooltip" id="124"/>
</LabelField> </LabelField>
<LabelField name="Автор" id="12"> <LabelField name="Автор" id="12" DisplayImportance="Low">
<DataPath>Список.Автор</DataPath> <DataPath>Список.Автор</DataPath>
<ContextMenu name="АвторКонтекстноеМеню" id="13"/> <ContextMenu name="АвторКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="125"/> <ExtendedTooltip name="АвторExtendedTooltip" id="125"/>
@ -502,6 +521,12 @@
<UserVisible> <UserVisible>
<xr:Common>false</xr:Common> <xr:Common>false</xr:Common>
</UserVisible> </UserVisible>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Доступен всем пользователям</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
@ -544,8 +569,14 @@
<Group>Horizontal</Group> <Group>Horizontal</Group>
<ExtendedTooltip name="КолонкиВторойСтрокиРасширеннаяПодсказка" id="142"/> <ExtendedTooltip name="КолонкиВторойСтрокиРасширеннаяПодсказка" id="142"/>
<ChildItems> <ChildItems>
<LabelField name="Описание" id="143"> <LabelField name="Описание" id="143" DisplayImportance="Low">
<DataPath>Список.Описание</DataPath> <DataPath>Список.Описание</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание</v8:content>
</v8:item>
</Title>
<AutoCellHeight>true</AutoCellHeight> <AutoCellHeight>true</AutoCellHeight>
<ContextMenu name="ОписаниеКонтекстноеМеню" id="144"/> <ContextMenu name="ОписаниеКонтекстноеМеню" id="144"/>
<ExtendedTooltip name="ОписаниеРасширеннаяПодсказка" id="145"/> <ExtendedTooltip name="ОписаниеРасширеннаяПодсказка" id="145"/>
@ -555,6 +586,9 @@
</ChildItems> </ChildItems>
</ColumnGroup> </ColumnGroup>
<ColumnGroup name="ТехническаяИнформация" id="148"> <ColumnGroup name="ТехническаяИнформация" id="148">
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@ -570,6 +604,12 @@
<UserVisible> <UserVisible>
<xr:Common>false</xr:Common> <xr:Common>false</xr:Common>
</UserVisible> </UserVisible>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя отчета</v8:content>
</v8:item>
</Title>
<ContextMenu name="ИмяОтчетаКонтекстноеМеню" id="74"/> <ContextMenu name="ИмяОтчетаКонтекстноеМеню" id="74"/>
<ExtendedTooltip name="ИмяОтчетаExtendedTooltip" id="128"/> <ExtendedTooltip name="ИмяОтчетаExtendedTooltip" id="128"/>
</LabelField> </LabelField>
@ -597,32 +637,16 @@
<ContextMenu name="КлючВариантаКонтекстноеМеню" id="76"/> <ContextMenu name="КлючВариантаКонтекстноеМеню" id="76"/>
<ExtendedTooltip name="КлючВариантаExtendedTooltip" id="131"/> <ExtendedTooltip name="КлючВариантаExtendedTooltip" id="131"/>
</LabelField> </LabelField>
<LabelField name="Ссылка" id="134">
<DataPath>Список.Ref</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="СсылкаКонтекстноеМеню" id="135"/>
<ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="136"/>
</LabelField>
<LabelField name="НаименованияПараметровИОтборов" id="150">
<DataPath>Список.НаименованияПараметровИОтборов</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="НаименованияПараметровИОтборовКонтекстноеМеню" id="151"/>
<ExtendedTooltip name="НаименованияПараметровИОтборовРасширеннаяПодсказка" id="152"/>
</LabelField>
<LabelField name="НаименованияПолей" id="153">
<DataPath>Список.НаименованияПолей</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="НаименованияПолейКонтекстноеМеню" id="154"/>
<ExtendedTooltip name="НаименованияПолейРасширеннаяПодсказка" id="155"/>
</LabelField>
</ChildItems> </ChildItems>
</ColumnGroup> </ColumnGroup>
<LabelField name="Ссылка" id="134">
<DataPath>Список.Ref</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="СсылкаКонтекстноеМеню" id="135"/>
<ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="136"/>
</LabelField>
</ChildItems> </ChildItems>
</Table> </Table>
</ChildItems> </ChildItems>
@ -635,12 +659,12 @@
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
<UseAlways> <UseAlways>
<Field>Список.Description</Field>
<Field>Список.Ref</Field> <Field>Список.Ref</Field>
<Field>Список.Автор</Field> <Field>Список.Автор</Field>
<Field>Список.ИмяОтчета</Field> <Field>Список.ИмяОтчета</Field>
<Field>Список.КлючВарианта</Field> <Field>Список.КлючВарианта</Field>
<Field>Список.КлючЗамеров</Field> <Field>Список.КлючЗамеров</Field>
<Field>Список.Наименование</Field>
<Field>Список.Отчет</Field> <Field>Список.Отчет</Field>
<Field>Список.ТипОтчета</Field> <Field>Список.ТипОтчета</Field>
</UseAlways> </UseAlways>
@ -648,59 +672,74 @@
<ManualQuery>true</ManualQuery> <ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead> <DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ РАЗРЕШЕННЫЕ <QueryText>ВЫБРАТЬ РАЗРЕШЕННЫЕ
Варианты.Ссылка, ВариантыОтчетов.Ссылка,
Варианты.ВерсияДанных, ВариантыОтчетов.ВерсияДанных,
Варианты.ПометкаУдаления, ВариантыОтчетов.ПометкаУдаления,
Предопределенные.КлючЗамеров, ЕСТЬNULL(ВариантыКонфигурации.КлючЗамеров, ВариантыРасширений.КлючЗамеров) КАК КлючЗамеров,
Варианты.Пользовательский, ВариантыОтчетов.Пользовательский,
НЕ Варианты.Пользовательский КАК Предопределенный, НЕ ВариантыОтчетов.Пользовательский КАК Предопределенный,
Варианты.Наименование,
НЕ Варианты.ТолькоДляАвтора КАК ДоступенВсемПользователям,
Варианты.Отчет,
Варианты.КлючВарианта,
Варианты.ТипОтчета,
Варианты.Автор,
ВЫБОР ВЫБОР
КОГДА ПОДСТРОКА(Варианты.НаименованияПараметровИОтборов, 1, 1) = "" КОГДА ВариантыОтчетов.Пользовательский
ТОГДА ВЫРАЗИТЬ(Предопределенные.НаименованияПараметровИОтборов КАК СТРОКА(1000)) ИЛИ ВариантыОтчетов.ПредопределенныйВариант В (
ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПараметровИОтборов КАК СТРОКА(1000)) НЕОПРЕДЕЛЕНО,
КОНЕЦ КАК НаименованияПараметровИОтборов, ЗНАЧЕНИЕ(Справочник.ПредопределенныеВариантыОтчетов.ПустаяСсылка),
ЗНАЧЕНИЕ(Справочник.ПредопределенныеВариантыОтчетовРасширений.ПустаяСсылка))
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияВариантов.Наименование, ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
КОГДА &amp;ЭтоОсновнойЯзык
ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ЕСТЬNULL(ВариантыКонфигурации.Наименование, ВариантыРасширений.Наименование), ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ЕСТЬNULL(ПредставленияИзКонфигурации.Наименование, ПредставленияИзРасширений.Наименование), ВариантыОтчетов.Наименование) КАК СТРОКА(1000))
КОНЕЦ КАК Наименование,
НЕ ВариантыОтчетов.ТолькоДляАвтора КАК ДоступенВсемПользователям,
ВариантыОтчетов.Отчет,
ВариантыОтчетов.КлючВарианта,
ВариантыОтчетов.ТипОтчета,
ВариантыОтчетов.Автор,
ВЫБОР ВЫБОР
КОГДА ПОДСТРОКА(Варианты.НаименованияПолей, 1, 1) = "" КОГДА &amp;ЭтоОсновнойЯзык
ТОГДА ВЫРАЗИТЬ(Предопределенные.НаименованияПолей КАК СТРОКА(1000)) И ПОДСТРОКА(ВариантыОтчетов.Описание, 1, 1) = ""
ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПолей КАК СТРОКА(1000)) ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ВариантыКонфигурации.Описание, ВариантыРасширений.Описание) КАК СТРОКА(1000))
КОНЕЦ КАК НаименованияПолей, КОГДА НЕ &amp;ЭтоОсновнойЯзык
ВЫБОР И ПОДСТРОКА(ВариантыОтчетов.Описание, 1, 1) = ""
КОГДА ПОДСТРОКА(Варианты.Описание, 1, 1) = "" ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияИзКонфигурации.Описание, ПредставленияИзРасширений.Описание) КАК СТРОКА(1000))
ТОГДА ВЫРАЗИТЬ(Предопределенные.Описание КАК СТРОКА(1000)) ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ПредставленияВариантов.Описание, ВариантыОтчетов.Описание) КАК СТРОКА(1000))
ИНАЧЕ ВЫРАЗИТЬ(Варианты.Описание КАК СТРОКА(1000))
КОНЕЦ КАК Описание, КОНЕЦ КАК Описание,
ВЫБОР ВЫБОР
КОГДА Варианты.ТипОтчета = &amp;ТипВнутренний КОГДА ВариантыОтчетов.ТипОтчета В (
ТОГДА Варианты.Отчет.Имя ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Внутренний),
КОГДА Варианты.ТипОтчета = &amp;ТипРасширение ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Расширение))
ТОГДА Варианты.Отчет.Имя ТОГДА ВариантыОтчетов.Отчет.Имя
КОГДА Варианты.ТипОтчета = &amp;ТипДополнительный КОГДА ВариантыОтчетов.ТипОтчета = ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Дополнительный)
ТОГДА Варианты.Отчет ТОГДА ВариантыОтчетов.Отчет
ИНАЧЕ ПОДСТРОКА(ВЫРАЗИТЬ(Варианты.Отчет КАК СТРОКА(150)), 14, 137) ИНАЧЕ ПОДСТРОКА(ВЫРАЗИТЬ(ВариантыОтчетов.Отчет КАК СТРОКА(150)), 14, 137)
КОНЕЦ КАК ИмяОтчета, КОНЕЦ КАК ИмяОтчета,
ВЫБОР ВЫБОР
КОГДА Варианты.ПометкаУдаления = ИСТИНА КОГДА ВариантыОтчетов.ПометкаУдаления = ИСТИНА
ТОГДА 4 ТОГДА 4
КОГДА Варианты.Пользовательский = ЛОЖЬ КОГДА ВариантыОтчетов.Пользовательский = ЛОЖЬ
ТОГДА 5 ТОГДА 5
ИНАЧЕ 3 ИНАЧЕ 3
КОНЕЦ КАК ИндексКартинки КОНЕЦ КАК ИндексКартинки
ИЗ ИЗ
Справочник.ВариантыОтчетов КАК Варианты Справочник.ВариантыОтчетов КАК ВариантыОтчетов
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК Предопределенные ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК ВариантыКонфигурации
ПО Варианты.ПредопределенныйВариант = Предопределенные.Ссылка ПО ВариантыОтчетов.ПредопределенныйВариант = ВариантыКонфигурации.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ВариантыРасширений
ПО ВариантыОтчетов.ПредопределенныйВариант = ВариантыРасширений.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыОтчетов.Представления КАК ПредставленияВариантов
ПО ВариантыОтчетов.Ссылка = ПредставленияВариантов.Ссылка
И (ПредставленияВариантов.КодЯзыка = &amp;КодЯзыка)
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов.Представления КАК ПредставленияИзКонфигурации
ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзКонфигурации.Ссылка
И (ПредставленияИзКонфигурации.КодЯзыка = &amp;КодЯзыка)
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений.Представления КАК ПредставленияИзРасширений
ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзРасширений.Ссылка
И (ПредставленияИзРасширений.КодЯзыка = &amp;КодЯзыка)
ГДЕ ГДЕ
Варианты.Отчет В(&amp;ДоступныеОтчеты) ВариантыОтчетов.Отчет В(&amp;ДоступныеОтчеты)
И ВЫБОР И ВЫБОР
КОГДА &amp;ВариантыПользователя ЕСТЬ NULL КОГДА Не &amp;ЕстьОтборПоВариантам
ТОГДА НЕ Варианты.ПредопределенныйВариант В (&amp;ОтключенныеВариантыПрограммы) ТОГДА НЕ ВариантыОтчетов.ПредопределенныйВариант В (&amp;ОтключенныеВариантыПрограммы)
ИНАЧЕ Варианты.Ссылка В (&amp;ВариантыПользователя) ИНАЧЕ ВариантыОтчетов.Ссылка В (&amp;ВариантыПользователя)
КОНЕЦ</QueryText> КОНЕЦ</QueryText>
<MainTable>Catalog.ВариантыОтчетов</MainTable> <MainTable>Catalog.ВариантыОтчетов</MainTable>
<ListSettings> <ListSettings>
@ -771,12 +810,6 @@
</Type> </Type>
<Columns> <Columns>
<Column name="Ссылка" id="1"> <Column name="Ссылка" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
@ -798,12 +831,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Имя" id="3"> <Column name="Имя" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -813,12 +840,6 @@
</Type> </Type>
</Column> </Column>
<Column name="ПолноеИмя" id="4"> <Column name="ПолноеИмя" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полное имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -828,12 +849,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Приоритет" id="5"> <Column name="Приоритет" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Приоритет</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -843,12 +858,6 @@
</Type> </Type>
</Column> </Column>
<Column name="ПолноеПредставление" id="6"> <Column name="ПолноеПредставление" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полное представление</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -860,12 +869,6 @@
</Columns> </Columns>
</Attribute> </Attribute>
<Attribute name="ДеревоПодсистемТекущаяСтрока" id="6"> <Attribute name="ДеревоПодсистемТекущаяСтрока" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дерево разделов текущая строка</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:decimal</v8:Type> <v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers> <v8:NumberQualifiers>
@ -876,12 +879,6 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="РежимРаботыФормы" id="9"> <Attribute name="РежимРаботыФормы" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Режим работы формы</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -904,43 +901,7 @@
<Field>ВключаяПодчиненные</Field> <Field>ВключаяПодчиненные</Field>
</Save> </Save>
</Attribute> </Attribute>
<Attribute name="ОтчетыПользователя" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отчеты пользователя</v8:content>
</v8:item>
</Title>
<Type/>
<View>
<xr:Common>false</xr:Common>
</View>
<Edit>
<xr:Common>false</xr:Common>
</Edit>
</Attribute>
<Attribute name="ОтключенныеВариантыПрограммы" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отключенные варианты программы</v8:content>
</v8:item>
</Title>
<Type/>
<View>
<xr:Common>false</xr:Common>
</View>
<Edit>
<xr:Common>false</xr:Common>
</Edit>
</Attribute>
<Attribute name="ПараметрыКлиента" id="12"> <Attribute name="ПараметрыКлиента" id="12">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры клиента</v8:content>
</v8:item>
</Title>
<Type/> <Type/>
</Attribute> </Attribute>
</Attributes> </Attributes>
@ -958,6 +919,10 @@
<v8:content>Найти</v8:content> <v8:content>Найти</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<Picture>
<xr:Ref>StdPicture.Find</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ВыполнитьПоиск</Action> <Action>ВыполнитьПоиск</Action>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
@ -983,4 +948,26 @@
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
</Commands> </Commands>
<Parameters>
<Parameter name="ТолькоВарианты">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Parameter>
<Parameter name="СтрокаПоиска">
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Parameter>
<Parameter name="РазделСсылка">
<Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
</Type>
</Parameter>
</Parameters>
</Form> </Form>

View File

@ -1,14 +1,20 @@
#Область ОбработчикиСобытийФормы ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УстановитьУсловноеОформление(); УстановитьУсловноеОформление();
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
ОпределитьПоведениеВМобильномКлиенте();
ПараметрыКлиента = ВариантыОтчетов.ПараметрыКлиента(); ПараметрыКлиента = ВариантыОтчетов.ПараметрыКлиента();
ВключаяПодчиненные = Истина; ВключаяПодчиненные = Истина;
ДеревоЗначений = ВариантыОтчетовПовтИсп.ПодсистемыТекущегоПользователя().Скопировать(); ДеревоЗначений = ВариантыОтчетовПовтИсп.ПодсистемыТекущегоПользователя().Скопировать();
@ -20,35 +26,27 @@
Если Параметры.РежимВыбора = Истина Тогда Если Параметры.РежимВыбора = Истина Тогда
РежимРаботыФормы = "Выбор"; РежимРаботыФормы = "Выбор";
РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
ИначеЕсли Параметры.Свойство("РазделСсылка") Или Параметры.Свойство("РазделСсылка") Тогда Элементы.Список.Отображение = ОтображениеТаблицы.Список;
ИначеЕсли Параметры.РазделСсылка <> Неопределено Тогда
РежимРаботыФормы = "ВсеОтчетыРаздела"; РежимРаботыФормы = "ВсеОтчетыРаздела";
МассивОбхода = Новый Массив; РодительскиеЭлементы = Новый Массив;
МассивОбхода.Добавить(ДеревоПодсистем.ПолучитьЭлементы()[0]); РодительскиеЭлементы.Добавить(ДеревоПодсистем.ПолучитьЭлементы()[0]);
Пока МассивОбхода.Количество() > 0 Цикл Пока РодительскиеЭлементы.Количество() > 0 Цикл
СтрокиРодителя = МассивОбхода[0].ПолучитьЭлементы(); РодительскийЭлемент = РодительскиеЭлементы[0].ПолучитьЭлементы();
МассивОбхода.Удалить(0); РодительскиеЭлементы.Удалить(0);
Для Каждого СтрокаДерева Из СтрокиРодителя Цикл Для Каждого ДочернийЭлемент Из РодительскийЭлемент Цикл
Если СтрокаДерева.Ссылка = Параметры.РазделСсылка Тогда Если ДочернийЭлемент.Ссылка = Параметры.РазделСсылка Тогда
Элементы.ДеревоПодсистем.ТекущаяСтрока = СтрокаДерева.ПолучитьИдентификатор(); Элементы.ДеревоПодсистем.ТекущаяСтрока = ДочернийЭлемент.ПолучитьИдентификатор();
МассивОбхода.Очистить(); РодительскиеЭлементы.Очистить();
Прервать; Прервать;
Иначе
МассивОбхода.Добавить(СтрокаДерева);
КонецЕсли; КонецЕсли;
РодительскиеЭлементы.Добавить(ДочернийЭлемент);
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
Иначе Иначе
РежимРаботыФормы = "Список"; РежимРаботыФормы = "Список";
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Изменить", "Отображение", ОтображениеКнопки.КартинкаИТекст);
Элементы, ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "РазместитьВРазделах", "ТолькоВоВсехДействиях", Ложь);
"Изменить",
"Отображение",
ОтображениеКнопки.КартинкаИТекст);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"РазместитьВРазделах",
"ТолькоВоВсехДействиях",
Ложь);
КонецЕсли; КонецЕсли;
ГлобальныеНастройки = ВариантыОтчетов.ГлобальныеНастройки(); ГлобальныеНастройки = ВариантыОтчетов.ГлобальныеНастройки();
@ -62,28 +60,9 @@
УстановитьСвойствоСпискаПоПараметруФормы("МножественныйВыбор"); УстановитьСвойствоСпискаПоПараметруФормы("МножественныйВыбор");
УстановитьСвойствоСпискаПоПараметруФормы("ТекущаяСтрока"); УстановитьСвойствоСпискаПоПараметруФормы("ТекущаяСтрока");
Если Параметры.РежимВыбора Тогда Элементы.Выбрать.КнопкаПоУмолчанию = Параметры.РежимВыбора;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( Элементы.Выбрать.Видимость = Параметры.РежимВыбора;
Элементы, Элементы.ОтборТипОтчета.Видимость = ВариантыОтчетов.ПолныеПраваНаВарианты();
"ВЫБРАТЬ",
"КнопкаПоУмолчанию",
Истина);
Иначе
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ВЫБРАТЬ",
"Видимость",
Ложь);
КонецЕсли;
ПолныеПраваНаВарианты = ВариантыОтчетов.ПолныеПраваНаВарианты();
Если Не ПолныеПраваНаВарианты Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ОтборТипОтчета",
"Видимость",
Ложь);
КонецЕсли;
СписокВыбора = Элементы.ОтборТипОтчета.СписокВыбора; СписокВыбора = Элементы.ОтборТипОтчета.СписокВыбора;
СписокВыбора.Добавить(1, НСтр("ru = 'Все, кроме внешних'")); СписокВыбора.Добавить(1, НСтр("ru = 'Все, кроме внешних'"));
@ -92,21 +71,14 @@
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Дополнительный, НСтр("ru = 'Дополнительные'")); СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Дополнительный, НСтр("ru = 'Дополнительные'"));
СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Внешний, НСтр("ru = 'Внешние'")); СписокВыбора.Добавить(Перечисления.ТипыОтчетов.Внешний, НСтр("ru = 'Внешние'"));
Параметры.Свойство("СтрокаПоиска", СтрокаПоиска); СтрокаПоиска = Параметры.СтрокаПоиска;
Если Параметры.Отбор.Свойство("ТипОтчета", ОтборТипОтчета) Тогда Если Параметры.Отбор.Свойство("ТипОтчета", ОтборТипОтчета) Тогда
Параметры.Отбор.Удалить("ТипОтчета"); Параметры.Отбор.Удалить("ТипОтчета");
КонецЕсли; КонецЕсли;
Если Параметры.Свойство("ТолькоВарианты") Тогда Если Параметры.ТолькоВарианты Тогда
Если Параметры.ТолькоВарианты Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список,
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( "КлючВарианта", "", ВидСравненияКомпоновкиДанных.НеРавно,,,
Список, РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный);
"КлючВарианта",
"",
ВидСравненияКомпоновкиДанных.НеРавно,
,
,
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный);
КонецЕсли;
КонецЕсли; КонецЕсли;
ПерсональныеНастройкиСписка = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( ПерсональныеНастройкиСписка = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(
@ -116,15 +88,14 @@
Элементы.СтрокаПоиска.СписокВыбора.ЗагрузитьЗначения(ПерсональныеНастройкиСписка.СтрокаПоискаСписокВыбора); Элементы.СтрокаПоиска.СписокВыбора.ЗагрузитьЗначения(ПерсональныеНастройкиСписка.СтрокаПоискаСписокВыбора);
КонецЕсли; КонецЕсли;
Список.Параметры.УстановитьЗначениеПараметра("ТипВнутренний", Перечисления.ТипыОтчетов.Внутренний); Список.Параметры.УстановитьЗначениеПараметра("ДоступныеОтчеты", ВариантыОтчетов.ОтчетыТекущегоПользователя());
Список.Параметры.УстановитьЗначениеПараметра("ТипРасширение", Перечисления.ТипыОтчетов.Расширение); Список.Параметры.УстановитьЗначениеПараметра("ОтключенныеВариантыПрограммы", Новый Массив(ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы()));
Список.Параметры.УстановитьЗначениеПараметра("ТипДополнительный", Перечисления.ТипыОтчетов.Дополнительный); Список.Параметры.УстановитьЗначениеПараметра("ЭтоОсновнойЯзык", ТекущийЯзык() = Метаданные.ОсновнойЯзык);
Список.Параметры.УстановитьЗначениеПараметра("ДоступныеОтчеты", ВариантыОтчетовПовтИсп.ДоступныеОтчеты()); Список.Параметры.УстановитьЗначениеПараметра("КодЯзыка", ТекущийЯзык().КодЯзыка);
Список.Параметры.УстановитьЗначениеПараметра("ОтключенныеВариантыПрограммы", ВариантыОтчетовПовтИсп.ОтключенныеВариантыПрограммы());
ТекущийЭлемент = Элементы.Список; ТекущийЭлемент = Элементы.Список;
СтандартныеПодсистемыСервер.ДополнитьОтборыИзСтруктуры(Список.КомпоновщикНастроек.Настройки.Отбор, Параметры.Отбор); ВариантыОтчетов.ДополнитьОтборыИзСтруктуры(Список.КомпоновщикНастроек.Настройки.Отбор, Параметры.Отбор);
Параметры.Отбор.Очистить(); Параметры.Отбор.Очистить();
ОбновитьСодержимоеСписка("ПриСозданииНаСервере"); ОбновитьСодержимоеСписка("ПриСозданииНаСервере");
@ -139,7 +110,7 @@
&НаКлиенте &НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта() Если ИмяСобытия = ВариантыОтчетовКлиент.ИмяСобытияИзменениеВарианта()
Или ИмяСобытия = "Запись_НаборКонстант" Тогда Или ИмяСобытия = "Запись_НаборКонстант" Тогда
ДеревоПодсистемТекущаяСтрока = -1; ДеревоПодсистемТекущаяСтрока = -1;
ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина); ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина);
@ -195,6 +166,11 @@
&НаКлиенте &НаКлиенте
Процедура ДеревоПодсистемПриАктивизацииСтроки(Элемент) Процедура ДеревоПодсистемПриАктивизацииСтроки(Элемент)
ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина); ПодключитьОбработчикОжидания("ДеревоПодсистемОбработчикАктивизацииСтроки", 0.1, Истина);
#Если МобильныйКлиент Тогда
ПодключитьОбработчикОжидания("УстановитьЗаголовокДереваПодсистем", 0.1, Истина);
ТекущийЭлемент = Элементы.Список;
#КонецЕсли
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -318,6 +294,19 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ОпределитьПоведениеВМобильномКлиенте()
Если Не ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Возврат;
КонецЕсли;
Элементы.СтрокаПоиска.Ширина = 0;
Элементы.СтрокаПоиска.РастягиватьПоГоризонтали = Неопределено;
Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элементы.СтрокаПоиска.КнопкаВыпадающегоСписка = Ложь;
Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка;
КонецПроцедуры
&НаСервере &НаСервере
Процедура ДеревоПодсистемЗаполнитьПолноеПредставление(НаборСтрок, ПредставлениеРодителя = "") Процедура ДеревоПодсистемЗаполнитьПолноеПредставление(НаборСтрок, ПредставлениеРодителя = "")
Для Каждого СтрокаДерева Из НаборСтрок Цикл Для Каждого СтрокаДерева Из НаборСтрок Цикл
@ -334,11 +323,20 @@
&НаСервере &НаСервере
Процедура УстановитьУсловноеОформление() Процедура УстановитьУсловноеОформление()
Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления();
Инструкция.Поля = "Описание"; УсловноеОформление.Элементы.Очистить();
Инструкция.Отборы.Вставить("Список.Описание", ВидСравненияКомпоновкиДанных.Заполнено);
Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ПоясняющийТекст); Элемент = УсловноеОформление.Элементы.Добавить();
СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция);
ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Описание.Имя);
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Описание");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено;
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ПоясняющийТекст);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -348,10 +346,57 @@
КонецЕсли; КонецЕсли;
РезультатВыполнения = РазместитьВариантыВПодсистеме(ПараметрыРазмещения); РезультатВыполнения = РазместитьВариантыВПодсистеме(ПараметрыРазмещения);
ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(); ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы();
СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатВыполнения); Если ПараметрыРазмещения.Варианты.Всего = РезультатВыполнения.Размещено Тогда
Если ПараметрыРазмещения.Варианты.Всего = 1 Тогда
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Успешно перемещен в ""%1"".'");
Иначе
Шаблон = НСтр("ru = 'Успешно размещен в ""%1"".'");
КонецЕсли;
Текст = ПараметрыРазмещения.Варианты.Представление;
Ссылка = ПолучитьНавигационнуюСсылку(ПараметрыРазмещения.Варианты.Массив[0]);
Иначе
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Успешно перемещены в ""%1"".'");
Иначе
Шаблон = НСтр("ru = 'Успешно размещены в ""%1"".'");
КонецЕсли;
Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Варианты отчетов (%1).'"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0"));
Ссылка = Неопределено;
КонецЕсли;
Шаблон = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, ПараметрыРазмещения.Приемник.ПолноеПредставление);
ПоказатьОповещениеПользователя(Шаблон, Ссылка, Текст);
Иначе
ТекстОшибок = "";
Если Не ПустаяСтрока(РезультатВыполнения.НеМогутРазмещаться) Тогда
ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС)
+ НСтр("ru = 'Не могут размещаться в командном интерфейсе:'")
+ Символы.ПС
+ РезультатВыполнения.НеМогутРазмещаться;
КонецЕсли;
Если Не ПустаяСтрока(РезультатВыполнения.УжеРазмещены) Тогда
ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС)
+ НСтр("ru = 'Уже размещены в этом разделе:'")
+ Символы.ПС
+ РезультатВыполнения.УжеРазмещены;
КонецЕсли;
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Перемещено вариантов отчетов: %1 из %2.
|Подробности:
|%3'");
Иначе
Шаблон = НСтр("ru = 'Размещено вариантов отчетов: %1 из %2.
|Подробности:
|%3'");
КонецЕсли;
СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(Неопределено,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, РезультатВыполнения.Размещено,
ПараметрыРазмещения.Варианты.Всего, ТекстОшибок), РежимДиалогаВопрос.ОК);
КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -402,7 +447,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ВсеПодсистемы = НЕ ЗначениеЗаполнено(СтрокаДерева.ПолноеИмя); ВсеПодсистемы = Не ЗначениеЗаполнено(СтрокаДерева.ПолноеИмя);
ПараметрыПоиска = Новый Структура; ПараметрыПоиска = Новый Структура;
Если ЗначениеЗаполнено(СтрокаПоиска) Тогда Если ЗначениеЗаполнено(СтрокаПоиска) Тогда
@ -411,29 +456,35 @@
Иначе Иначе
Элементы.Список.НачальноеОтображениеДерева = НачальноеОтображениеДерева.НеРаскрывать; Элементы.Список.НачальноеОтображениеДерева = НачальноеОтображениеДерева.НеРаскрывать;
КонецЕсли; КонецЕсли;
Если Не ВсеПодсистемы Тогда Если Не ВсеПодсистемы Или ЗначениеЗаполнено(СтрокаПоиска) Тогда
МассивПодсистем = Новый Массив; ПодсистемыОтчетов = Новый Массив;
МассивПодсистем.Добавить(СтрокаДерева.Ссылка); Если Не ВсеПодсистемы Тогда
Если ВключаяПодчиненные Тогда ПодсистемыОтчетов.Добавить(СтрокаДерева.Ссылка);
ДобавитьРекурсивно(МассивПодсистем, СтрокаДерева.ПолучитьЭлементы());
КонецЕсли; КонецЕсли;
ПараметрыПоиска.Вставить("Подсистемы", МассивПодсистем); Если ВсеПодсистемы Или ВключаяПодчиненные Тогда
ДобавитьРекурсивно(ПодсистемыОтчетов, СтрокаДерева.ПолучитьЭлементы());
КонецЕсли;
ПараметрыПоиска.Вставить("Подсистемы", ПодсистемыОтчетов);
КонецЕсли; КонецЕсли;
Если ЗначениеЗаполнено(ОтборТипОтчета) Тогда Если ЗначениеЗаполнено(ОтборТипОтчета) Тогда
МассивТиповОтчетов = Новый Массив; ТипыОтчетов = Новый Массив;
Если ОтборТипОтчета = 1 Тогда Если ОтборТипОтчета = 1 Тогда
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Внутренний); ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Внутренний);
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Расширение); ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Расширение);
МассивТиповОтчетов.Добавить(Перечисления.ТипыОтчетов.Дополнительный); ТипыОтчетов.Добавить(Перечисления.ТипыОтчетов.Дополнительный);
Иначе Иначе
МассивТиповОтчетов.Добавить(ОтборТипОтчета); ТипыОтчетов.Добавить(ОтборТипОтчета);
КонецЕсли; КонецЕсли;
ПараметрыПоиска.Вставить("ТипыОтчетов", МассивТиповОтчетов); ПараметрыПоиска.Вставить("ТипыОтчетов", ТипыОтчетов);
КонецЕсли; КонецЕсли;
РезультатПоиска = ВариантыОтчетов.НайтиСсылки(ПараметрыПоиска); ЕстьОтборПоВариантам = ПараметрыПоиска.Количество() > 0;
ВариантыПользователя = ?(РезультатПоиска = Неопределено, Null, РезультатПоиска.Ссылки); ПараметрыПоиска.Вставить("ПометкаУдаления", Ложь);
Список.Параметры.УстановитьЗначениеПараметра("ВариантыПользователя", ВариантыПользователя); ПараметрыПоиска.Вставить("ЖесткийОтборПоПодсистемам", Не ВсеПодсистемы);
РезультатПоиска = ВариантыОтчетов.НайтиВариантыОтчетов(ПараметрыПоиска);
Список.Параметры.УстановитьЗначениеПараметра("ЕстьОтборПоВариантам", ЕстьОтборПоВариантам);
Список.Параметры.УстановитьЗначениеПараметра("ВариантыПользователя", РезультатПоиска.Ссылки);
КонецПроцедуры КонецПроцедуры
@ -444,6 +495,13 @@
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура УстановитьЗаголовокДереваПодсистем()
Элементы.ГруппаРазделы.Заголовок = ?(Элементы.ДеревоПодсистем.ТекущиеДанные = Неопределено,
НСтр("ru = 'Все разделы'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка()),
Элементы.ДеревоПодсистем.ТекущиеДанные.Представление);
КонецПроцедуры
&НаСервере &НаСервере
Процедура ДобавитьРекурсивно(МассивПодсистем, КоллекцияСтрокДерева) Процедура ДобавитьРекурсивно(МассивПодсистем, КоллекцияСтрокДерева)
Для Каждого СтрокаДерева Из КоллекцияСтрокДерева Цикл Для Каждого СтрокаДерева Из КоллекцияСтрокДерева Цикл
@ -470,9 +528,9 @@
КонецЕсли; КонецЕсли;
Размещено = 0; Размещено = 0;
НачатьТранзакцию();
УжеРазмещены = ""; УжеРазмещены = "";
НеМогутРазмещаться = ""; НеМогутРазмещаться = "";
НачатьТранзакцию();
Попытка Попытка
Для Каждого ВариантСсылка Из ПараметрыРазмещения.Варианты.Массив Цикл Для Каждого ВариантСсылка Из ПараметрыРазмещения.Варианты.Массив Цикл
Если ВариантСсылка.ТипОтчета = Перечисления.ТипыОтчетов.Внешний Тогда Если ВариантСсылка.ТипОтчета = Перечисления.ТипыОтчетов.Внешний Тогда
@ -547,59 +605,12 @@
ВызватьИсключение; ВызватьИсключение;
КонецПопытки; КонецПопытки;
РезультатВыполнения = Новый Структура;
Если ПараметрыРазмещения.Варианты.Всего = Размещено Тогда
Если ПараметрыРазмещения.Варианты.Всего = 1 Тогда
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Успешно перемещен в ""%1"".'");
Иначе
Шаблон = НСтр("ru = 'Успешно размещен в ""%1"".'");
КонецЕсли;
Текст = ПараметрыРазмещения.Варианты.Представление;
Ссылка = ПолучитьНавигационнуюСсылку(ПараметрыРазмещения.Варианты.Массив[0]);
Иначе
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Успешно перемещены в ""%1"".'");
Иначе
Шаблон = НСтр("ru = 'Успешно размещены в ""%1"".'");
КонецЕсли;
Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Варианты отчетов (%1).'"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0"));
Ссылка = Неопределено;
КонецЕсли;
Шаблон = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, ПараметрыРазмещения.Приемник.ПолноеПредставление);
СтандартныеПодсистемыКлиентСервер.ВывестиОповещение(РезультатВыполнения, Шаблон, Текст, , Ссылка);
Иначе
ТекстОшибок = "";
Если Не ПустаяСтрока(НеМогутРазмещаться) Тогда
ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС)
+ НСтр("ru = 'Не могут размещаться в командном интерфейсе:'")
+ Символы.ПС
+ НеМогутРазмещаться;
КонецЕсли;
Если Не ПустаяСтрока(УжеРазмещены) Тогда
ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС)
+ НСтр("ru = 'Уже размещены в этом разделе:'")
+ Символы.ПС
+ УжеРазмещены;
КонецЕсли;
Если ПараметрыРазмещения.Действие = "Перемещение" Тогда
Шаблон = НСтр("ru = 'Перемещено вариантов отчетов: %1 из %2.'");
Иначе
Шаблон = НСтр("ru = 'Размещено вариантов отчетов: %1 из %2.'");
КонецЕсли;
СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(РезультатВыполнения,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, Формат(Размещено, "ЧН=0; ЧГ=0"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0")),
ТекстОшибок);
КонецЕсли;
Если ПараметрыРазмещения.Действие = "Перемещение" И Размещено > 0 Тогда Если ПараметрыРазмещения.Действие = "Перемещение" И Размещено > 0 Тогда
Элементы.ДеревоПодсистем.ТекущаяСтрока = ПараметрыРазмещения.Приемник.Идентификатор; Элементы.ДеревоПодсистем.ТекущаяСтрока = ПараметрыРазмещения.Приемник.Идентификатор;
ОбновитьСодержимоеСписка(); ОбновитьСодержимоеСписка();
КонецЕсли; КонецЕсли;
Возврат РезультатВыполнения; Возврат Новый Структура("Размещено,УжеРазмещены,НеМогутРазмещаться", Размещено, УжеРазмещены, НеМогутРазмещаться);
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
@ -631,17 +642,17 @@
Комментарий = Комментарий + "; " + НСтр("ru = 'Без поиска'"); Комментарий = Комментарий + "; " + НСтр("ru = 'Без поиска'");
КонецЕсли; КонецЕсли;
Замер = Новый Структура("МодульОценкаПроизводительностиКлиентСервер, Идентификатор"); Замер = Новый Структура("МодульОценкаПроизводительностиКлиент, Идентификатор");
Замер.Идентификатор = Новый УникальныйИдентификатор; Замер.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент");
Замер.МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); Замер.Идентификатор = Замер.МодульОценкаПроизводительностиКлиент.ЗамерВремени(Имя, Ложь, Ложь);
Замер.МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени(Имя, Замер.Идентификатор, Комментарий); Замер.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(Замер.Идентификатор, Комментарий);
Возврат Замер; Возврат Замер;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Процедура ЗакончитьЗамер(Замер) Процедура ЗакончитьЗамер(Замер)
Если Замер <> Неопределено Тогда Если Замер <> Неопределено Тогда
Замер.МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(Замер.Идентификатор); Замер.МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(Замер.Идентификатор);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры

View File

@ -37,12 +37,6 @@
<v8:content>Сброс настроек</v8:content> <v8:content>Сброс настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сброс настроек</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="СбросНастроекExtendedTooltip" id="154"/> <ExtendedTooltip name="СбросНастроекExtendedTooltip" id="154"/>
<ChildItems> <ChildItems>
<Button name="ФормаСброситьНастройкиРазмещения" id="119"> <Button name="ФормаСброситьНастройкиРазмещения" id="119">
@ -89,6 +83,7 @@
<Event name="AfterWrite">ПослеЗаписи</Event> <Event name="AfterWrite">ПослеЗаписи</Event>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event> <Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="NotificationProcessing">ОбработкаОповещения</Event> <Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event> <Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
@ -98,6 +93,9 @@
<DataPath>Объект.Description</DataPath> <DataPath>Объект.Description</DataPath>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/> <ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="161"/> <ExtendedTooltip name="НаименованиеExtendedTooltip" id="161"/>
<Events>
<Event name="Opening">НаименованиеОткрытие</Event>
</Events>
</InputField> </InputField>
<InputField name="Описание" id="3"> <InputField name="Описание" id="3">
<DataPath>Объект.Описание</DataPath> <DataPath>Объект.Описание</DataPath>
@ -115,108 +113,97 @@
<ExtendedTooltip name="ОписаниеExtendedTooltip" id="162"/> <ExtendedTooltip name="ОписаниеExtendedTooltip" id="162"/>
<Events> <Events>
<Event name="StartChoice">ОписаниеНачалоВыбора</Event> <Event name="StartChoice">ОписаниеНачалоВыбора</Event>
<Event name="Opening">ОписаниеОткрытие</Event>
</Events> </Events>
</InputField> </InputField>
<UsualGroup name="ГруппаДоступен" id="106"> <InputField name="Автор" id="115">
<DataPath>Объект.Автор</DataPath>
<ContextMenu name="АвторКонтекстноеМеню" id="116"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="167"/>
</InputField>
<RadioButtonField name="Доступен" id="109">
<DataPath>Доступен</DataPath>
<TitleLocation>Left</TitleLocation>
<RadioButtonType>Auto</RadioButtonType>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только для автора</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">1</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Всем пользователям</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">2</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ДоступенКонтекстноеМеню" id="110"/>
<ExtendedTooltip name="ДоступенExtendedTooltip" id="164"/>
<Events>
<Event name="OnChange">ДоступенПриИзменении</Event>
</Events>
</RadioButtonField>
<UsualGroup name="ДеревоПодсистемЗаголовокИВидимостьПоУмолчанию" id="236">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа доступен</v8:content> <v8:content>Дерево подсистем заголовок и видимость по умолчанию</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа доступен</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаДоступенExtendedTooltip" id="163"/> <ExtendedTooltip name="ДеревоПодсистемЗаголовокИВидимостьПоУмолчаниюРасширеннаяПодсказка" id="237"/>
<ChildItems> <ChildItems>
<RadioButtonField name="Доступен" id="109"> <LabelDecoration name="ДеревоПодсистемЗаголовок" id="238">
<DataPath>Доступен</DataPath> <AutoMaxWidth>false</AutoMaxWidth>
<TitleLocation>Left</TitleLocation> <Title formatted="false">
<RadioButtonType>Auto</RadioButtonType>
<ColumnsCount>1</ColumnsCount>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только для автора:</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">1</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Всем пользователям</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">2</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ДоступенКонтекстноеМеню" id="110"/>
<ExtendedTooltip name="ДоступенExtendedTooltip" id="164"/>
<Events>
<Event name="OnChange">ДоступенПриИзменении</Event>
</Events>
</RadioButtonField>
<UsualGroup name="ГруппаАвторИВидимостьПоУмолчанию" id="108">
<Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа автор и видимость по умолчанию</v8:content> <v8:content>Размещение в панелях отчетов: </v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <GroupHorizontalAlign>Left</GroupHorizontalAlign>
<v8:item> <ContextMenu name="ДеревоПодсистемЗаголовокКонтекстноеМеню" id="239"/>
<v8:lang>ru</v8:lang> <ExtendedTooltip name="ДеревоПодсистемЗаголовокРасширеннаяПодсказка" id="240"/>
<v8:content>Группа автор и видимость по умолчанию</v8:content> </LabelDecoration>
</v8:item> <CheckBoxField name="ВидимостьПоУмолчанию" id="203">
</ToolTip> <DataPath>Объект.ВидимостьПоУмолчанию</DataPath>
<Group>Vertical</Group> <TitleLocation>Right</TitleLocation>
<Representation>None</Representation> <CheckBoxType>Auto</CheckBoxType>
<ShowTitle>false</ShowTitle> <ContextMenu name="ВидимостьПоУмолчаниюКонтекстноеМеню" id="204"/>
<ExtendedTooltip name="ГруппаАвторИВидимостьПоУмолчаниюExtendedTooltip" id="165"/> <ExtendedTooltip name="ВидимостьПоУмолчаниюРасширеннаяПодсказка" id="205"/>
<ChildItems> </CheckBoxField>
<InputField name="Автор" id="115">
<DataPath>Объект.Автор</DataPath>
<TitleLocation>None</TitleLocation>
<ContextMenu name="АвторКонтекстноеМеню" id="116"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="167"/>
</InputField>
<CheckBoxField name="ВидимостьПоУмолчанию" id="203">
<DataPath>Объект.ВидимостьПоУмолчанию</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ВидимостьПоУмолчаниюКонтекстноеМеню" id="204"/>
<ExtendedTooltip name="ВидимостьПоУмолчаниюРасширеннаяПодсказка" id="205"/>
</CheckBoxField>
</ChildItems>
</UsualGroup>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<Table name="ДеревоПодсистем" id="80"> <Table name="ДеревоПодсистем" id="80">
<Representation>Tree</Representation> <Representation>Tree</Representation>
<TitleLocation>Top</TitleLocation>
<ChangeRowOrder>false</ChangeRowOrder> <ChangeRowOrder>false</ChangeRowOrder>
<AutoInsertNewRow>true</AutoInsertNewRow> <AutoInsertNewRow>true</AutoInsertNewRow>
<InitialTreeView>ExpandAllLevels</InitialTreeView> <InitialTreeView>ExpandAllLevels</InitialTreeView>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>ДеревоПодсистем</DataPath> <DataPath>ДеревоПодсистем</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дерево подсистем</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Add</ExcludedCommand> <ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
@ -229,9 +216,7 @@
<ExcludedCommand>SortListDesc</ExcludedCommand> <ExcludedCommand>SortListDesc</ExcludedCommand>
<ExcludedCommand>Tree</ExcludedCommand> <ExcludedCommand>Tree</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation> <CurrentRowUse>SelectionPresentationAndChoice</CurrentRowUse>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="81"/> <ContextMenu name="ДеревоПодсистемКонтекстноеМеню" id="81"/>
<AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="82"> <AutoCommandBar name="ДеревоПодсистемКоманднаяПанель" id="82">
<Autofill>false</Autofill> <Autofill>false</Autofill>
@ -262,23 +247,17 @@
<ExtendedTooltip name="ДеревоПодсистемSearchControlExtendedTooltip" id="214"/> <ExtendedTooltip name="ДеревоПодсистемSearchControlExtendedTooltip" id="214"/>
</SearchControlAddition> </SearchControlAddition>
<ChildItems> <ChildItems>
<ColumnGroup name="ГруппаКолонок" id="83"> <ColumnGroup name="ГруппаКолонок" id="83" DisplayImportance="VeryHigh">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа колонок</v8:content> <v8:content>Колонок</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа колонок</v8:content>
</v8:item>
</ToolTip>
<Group>InCell</Group> <Group>InCell</Group>
<ExtendedTooltip name="ГруппаКолонокExtendedTooltip" id="170"/> <ExtendedTooltip name="ГруппаКолонокExtendedTooltip" id="170"/>
<ChildItems> <ChildItems>
<CheckBoxField name="ДеревоПодсистемИспользование" id="104"> <CheckBoxField name="ДеревоПодсистемИспользование" id="104" DisplayImportance="VeryHigh">
<DataPath>ДеревоПодсистем.Использование</DataPath> <DataPath>ДеревоПодсистем.Использование</DataPath>
<TitleLocation>None</TitleLocation> <TitleLocation>None</TitleLocation>
<HorizontalAlign>Left</HorizontalAlign> <HorizontalAlign>Left</HorizontalAlign>
@ -290,7 +269,7 @@
<Event name="OnChange">ДеревоПодсистемИспользованиеПриИзменении</Event> <Event name="OnChange">ДеревоПодсистемИспользованиеПриИзменении</Event>
</Events> </Events>
</CheckBoxField> </CheckBoxField>
<InputField name="ДеревоПодсистемПредставление" id="86"> <InputField name="ДеревоПодсистемПредставление" id="86" DisplayImportance="VeryHigh">
<DataPath>ДеревоПодсистем.Представление</DataPath> <DataPath>ДеревоПодсистем.Представление</DataPath>
<ReadOnly>true</ReadOnly> <ReadOnly>true</ReadOnly>
<HorizontalAlign>Left</HorizontalAlign> <HorizontalAlign>Left</HorizontalAlign>
@ -304,10 +283,7 @@
<DataPath>ДеревоПодсистем.Важность</DataPath> <DataPath>ДеревоПодсистем.Важность</DataPath>
<EditMode>EnterOnInput</EditMode> <EditMode>EnterOnInput</EditMode>
<Width>8</Width> <Width>8</Width>
<ChoiceButton>true</ChoiceButton>
<ClearButton>true</ClearButton> <ClearButton>true</ClearButton>
<SpinButton>false</SpinButton>
<OpenButton>false</OpenButton>
<ListChoiceMode>true</ListChoiceMode> <ListChoiceMode>true</ListChoiceMode>
<ChooseType>false</ChooseType> <ChooseType>false</ChooseType>
<ChoiceListButton>false</ChoiceListButton> <ChoiceListButton>false</ChoiceListButton>
@ -340,17 +316,11 @@
<v8:content>Техническая информация</v8:content> <v8:content>Техническая информация</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Техническая информация</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Behavior>Collapsible</Behavior> <Behavior>Collapsible</Behavior>
<Collapsed>true</Collapsed> <Collapsed>true</Collapsed>
<ControlRepresentation>Picture</ControlRepresentation> <ControlRepresentation>Picture</ControlRepresentation>
<Representation>StrongSeparation</Representation> <Representation>NormalSeparation</Representation>
<ExtendedTooltip name="ТехническаяИнформацияExtendedTooltip" id="174"/> <ExtendedTooltip name="ТехническаяИнформацияExtendedTooltip" id="174"/>
<ChildItems> <ChildItems>
<InputField name="Отчет" id="136"> <InputField name="Отчет" id="136">
@ -371,6 +341,7 @@
<ExtendedTooltip name="ПредопределенныйВариантExtendedTooltip" id="176"/> <ExtendedTooltip name="ПредопределенныйВариантExtendedTooltip" id="176"/>
</InputField> </InputField>
<Table name="Размещение" id="122"> <Table name="Размещение" id="122">
<Visible>false</Visible>
<ReadOnly>true</ReadOnly> <ReadOnly>true</ReadOnly>
<AutoInsertNewRow>true</AutoInsertNewRow> <AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag> <EnableStartDrag>true</EnableStartDrag>
@ -399,9 +370,6 @@
<ExcludedCommand>SortListAsc</ExcludedCommand> <ExcludedCommand>SortListAsc</ExcludedCommand>
<ExcludedCommand>SortListDesc</ExcludedCommand> <ExcludedCommand>SortListDesc</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<RowFilter xsi:nil="true"/> <RowFilter xsi:nil="true"/>
<ContextMenu name="РазмещениеКонтекстноеМеню" id="123"/> <ContextMenu name="РазмещениеКонтекстноеМеню" id="123"/>
<AutoCommandBar name="РазмещениеКоманднаяПанель" id="124"/> <AutoCommandBar name="РазмещениеКоманднаяПанель" id="124"/>
@ -460,11 +428,16 @@
</CheckBoxField> </CheckBoxField>
</ChildItems> </ChildItems>
</Table> </Table>
<UsualGroup name="Группа2" id="190"> <UsualGroup name="НаименованияПолейИПараметров" id="190">
<Group>Horizontal</Group> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименования полей и параметров</v8:content>
</v8:item>
</Title>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="Группа2РасширеннаяПодсказка" id="191"/> <ExtendedTooltip name="НаименованияПолейИПараметровРасширеннаяПодсказка" id="191"/>
<ChildItems> <ChildItems>
<InputField name="НаименованияПолей" id="182"> <InputField name="НаименованияПолей" id="182">
<DataPath>Объект.НаименованияПолей</DataPath> <DataPath>Объект.НаименованияПолей</DataPath>
@ -484,6 +457,82 @@
</InputField> </InputField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<Table name="Представления" id="244">
<ReadOnly>true</ReadOnly>
<HeightInTableRows>3</HeightInTableRows>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>Объект.Представления</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Представления</v8:content>
</v8:item>
</Title>
<RowFilter xsi:nil="true"/>
<ContextMenu name="ПредставленияКонтекстноеМеню" id="245"/>
<AutoCommandBar name="ПредставленияКоманднаяПанель" id="246"/>
<ExtendedTooltip name="ПредставленияРасширеннаяПодсказка" id="247"/>
<SearchStringAddition name="ПредставленияСтрокаПоиска" id="248">
<AdditionSource>
<Item>Представления</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ПредставленияСтрокаПоискаКонтекстноеМеню" id="249"/>
<ExtendedTooltip name="ПредставленияСтрокаПоискаРасширеннаяПодсказка" id="250"/>
</SearchStringAddition>
<ViewStatusAddition name="ПредставленияСостояниеПросмотра" id="251">
<AdditionSource>
<Item>Представления</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="ПредставленияСостояниеПросмотраКонтекстноеМеню" id="252"/>
<ExtendedTooltip name="ПредставленияСостояниеПросмотраРасширеннаяПодсказка" id="253"/>
</ViewStatusAddition>
<SearchControlAddition name="ПредставленияУправлениеПоиском" id="254">
<AdditionSource>
<Item>Представления</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ПредставленияУправлениеПоискомКонтекстноеМеню" id="255"/>
<ExtendedTooltip name="ПредставленияУправлениеПоискомРасширеннаяПодсказка" id="256"/>
</SearchControlAddition>
<ChildItems>
<LabelField name="ПредставленияНомерСтроки" id="257">
<DataPath>Объект.Представления.LineNumber</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ПредставленияНомерСтрокиКонтекстноеМеню" id="258"/>
<ExtendedTooltip name="ПредставленияНомерСтрокиРасширеннаяПодсказка" id="259"/>
</LabelField>
<InputField name="ПредставленияКодЯзыка" id="260">
<DataPath>Объект.Представления.КодЯзыка</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ПредставленияКодЯзыкаКонтекстноеМеню" id="261"/>
<ExtendedTooltip name="ПредставленияКодЯзыкаРасширеннаяПодсказка" id="262"/>
</InputField>
<InputField name="ПредставленияНаименование" id="263">
<DataPath>Объект.Представления.Наименование</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ПредставленияНаименованиеКонтекстноеМеню" id="264"/>
<ExtendedTooltip name="ПредставленияНаименованиеРасширеннаяПодсказка" id="265"/>
</InputField>
<InputField name="ПредставленияОписание" id="266">
<DataPath>Объект.Представления.Описание</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ПредставленияОписаниеКонтекстноеМеню" id="267"/>
<ExtendedTooltip name="ПредставленияОписаниеРасширеннаяПодсказка" id="268"/>
</InputField>
</ChildItems>
</Table>
<CheckBoxField name="ИнтерактивнаяПометкаУдаления" id="241">
<DataPath>Объект.ИнтерактивнаяПометкаУдаления</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ИнтерактивнаяПометкаУдаленияКонтекстноеМеню" id="242"/>
<ExtendedTooltip name="ИнтерактивнаяПометкаУдаленияРасширеннаяПодсказка" id="243"/>
</CheckBoxField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
@ -496,31 +545,10 @@
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="ПолныеПраваНаВарианты" id="4"> <Attribute name="ПолныеПраваНаВарианты" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полные права на варианты</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ОшибкаОткрытия" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ошибка открытия</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ДеревоПодсистем" id="2"> <Attribute name="ДеревоПодсистем" id="2">
<Title> <Title>
<v8:item> <v8:item>
@ -531,14 +559,9 @@
<Type> <Type>
<v8:Type>v8:ValueTree</v8:Type> <v8:Type>v8:ValueTree</v8:Type>
</Type> </Type>
<SavedData>true</SavedData>
<Columns> <Columns>
<Column name="Ссылка" id="1"> <Column name="Ссылка" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовРасширений</v8:Type>
<v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type> <v8:Type>cfg:CatalogRef.ИдентификаторыОбъектовМетаданных</v8:Type>
@ -560,12 +583,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Имя" id="3"> <Column name="Имя" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -575,12 +592,6 @@
</Type> </Type>
</Column> </Column>
<Column name="ПолноеИмя" id="4"> <Column name="ПолноеИмя" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полное имя</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -590,12 +601,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Приоритет" id="5"> <Column name="Приоритет" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Приоритет</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -636,12 +641,6 @@
</Type> </Type>
</Column> </Column>
<Column name="Модифицированность" id="10"> <Column name="Модифицированность" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Модифицированность</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -649,12 +648,6 @@
</Columns> </Columns>
</Attribute> </Attribute>
<Attribute name="ИмяОтчета" id="6"> <Attribute name="ИмяОтчета" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя отчета</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:string</v8:Type> <v8:Type>xs:string</v8:Type>
<v8:StringQualifiers> <v8:StringQualifiers>
@ -664,12 +657,6 @@
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ЭтоВнешний" id="7"> <Attribute name="ЭтоВнешний" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Это внешний</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:boolean</v8:Type> <v8:Type>xs:boolean</v8:Type>
</Type> </Type>
@ -688,30 +675,20 @@
<v8:AllowedLength>Variable</v8:AllowedLength> <v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers> </v8:StringQualifiers>
</Type> </Type>
</Attribute> <SavedData>true</SavedData>
<Attribute name="СвойстваПредопределенного" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойства предопределенного</v8:content>
</v8:item>
</Title>
<Type/>
<View>
<xr:Common>false</xr:Common>
</View>
<Edit>
<xr:Common>false</xr:Common>
</Edit>
</Attribute> </Attribute>
<Attribute name="ПараметрыОткрытияФормыОтчета" id="11"> <Attribute name="ПараметрыОткрытияФормыОтчета" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры открытия формы отчета</v8:content>
</v8:item>
</Title>
<Type/> <Type/>
</Attribute> </Attribute>
<Attribute name="ДоступенВсемПользователям" id="12">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ЭтоПредопределенный" id="15">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes> </Attributes>
</Form> </Form>

View File

@ -1,23 +1,24 @@
#Область ОбработчикиСобытийФормы ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат; УстановитьУсловноеОформление();
КонецЕсли;
Если Объект.Ссылка.Пустая() Тогда
ОшибкаОткрытия = НСтр("ru = 'Новый вариант отчета можно создать только из формы отчета'");
Возврат;
КонецЕсли;
Если Параметры.Свойство("ПараметрыОткрытияФормыОтчета", ПараметрыОткрытияФормыОтчета) Тогда Если Параметры.Свойство("ПараметрыОткрытияФормыОтчета", ПараметрыОткрытияФормыОтчета) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Доступен = ?(Объект.ТолькоДляАвтора, "1", "2"); ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(Объект, ЭтотОбъект);
// Чтение свойств предопределенного; Доступен = ?(Объект.ТолькоДляАвтора, "1", "2");
// Заполнение реквизитов, связанных с предопределенным объектом при открытии.
ПрочитатьСвойстваПредопределенного(Истина);
ПолныеПраваНаВарианты = ВариантыОтчетов.ПолныеПраваНаВарианты(); ПолныеПраваНаВарианты = ВариантыОтчетов.ПолныеПраваНаВарианты();
ПравоНаЭтотВариант = ПолныеПраваНаВарианты Или Объект.Автор = Пользователи.АвторизованныйПользователь(); ПравоНаЭтотВариант = ПолныеПраваНаВарианты Или Объект.Автор = Пользователи.АвторизованныйПользователь();
@ -44,6 +45,7 @@
Элементы.Доступен.ТолькоПросмотр = Не ПолныеПраваНаВарианты; Элементы.Доступен.ТолькоПросмотр = Не ПолныеПраваНаВарианты;
Элементы.Автор.ТолькоПросмотр = Не ПолныеПраваНаВарианты; Элементы.Автор.ТолькоПросмотр = Не ПолныеПраваНаВарианты;
Элементы.ВидимостьПоУмолчанию.ТолькоПросмотр = Не ПолныеПраваНаВарианты;
Элементы.ТехническаяИнформация.Видимость = ПолныеПраваНаВарианты; Элементы.ТехническаяИнформация.Видимость = ПолныеПраваНаВарианты;
// Заполнение имени отчета для команды "Просмотр". // Заполнение имени отчета для команды "Просмотр".
@ -58,19 +60,16 @@
ПерезаполнитьДерево(Ложь); ПерезаполнитьДерево(Ложь);
ВариантыОтчетов.ДеревоПодсистемДобавитьУсловноеОформление(ЭтотОбъект); ЛокализуемыеЭлементы = Новый Массив;
ЛокализуемыеЭлементы.Добавить(Элементы.Наименование);
ЛокализуемыеЭлементы.Добавить(Элементы.Описание);
ЛокализацияСервер.ПриСозданииНаСервере(ЛокализуемыеЭлементы);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
Если Не ПустаяСтрока(ОшибкаОткрытия) Тогда Если ПараметрыОткрытияФормыОтчета <> Неопределено Тогда
Если Объект.Ссылка.Пустая() Тогда
Отказ = Истина;
Иначе
ТолькоПросмотр = Истина;
КонецЕсли;
ПоказатьПредупреждение(, ОшибкаОткрытия);
ИначеЕсли ПараметрыОткрытияФормыОтчета <> Неопределено Тогда
Отказ = Истина; Отказ = Истина;
ВариантыОтчетовКлиент.ОткрытьФормуОтчета(Неопределено, ПараметрыОткрытияФормыОтчета); ВариантыОтчетовКлиент.ОткрытьФормуОтчета(Неопределено, ПараметрыОткрытияФормыОтчета);
КонецЕсли; КонецЕсли;
@ -79,7 +78,7 @@
&НаКлиенте &НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если Источник <> ЭтотОбъект Если Источник <> ЭтотОбъект
И (ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта() И (ИмяСобытия = ВариантыОтчетовКлиент.ИмяСобытияИзменениеВарианта()
Или ИмяСобытия = "Запись_НаборКонстант") Тогда Или ИмяСобытия = "Запись_НаборКонстант") Тогда
ПерезаполнитьДерево(Истина); ПерезаполнитьДерево(Истина);
Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина); Элементы.ДеревоПодсистем.Развернуть(ДеревоПодсистем.ПолучитьЭлементы()[0].ПолучитьИдентификатор(), Истина);
@ -89,35 +88,73 @@
&НаСервере &НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
// Запись свойств, связанных с предопределенным вариантом отчета. // Запись свойств, связанных с предопределенным вариантом отчета.
Если ТипЗнч(СвойстваПредопределенного) = Тип("ФиксированнаяСтруктура") Тогда ОписаниеИзменено = Ложь;
ТекущийОбъект.ВидимостьПоУмолчаниюПереопределена = Если ЭтоПредопределенный Тогда
Объект.ВидимостьПоУмолчанию <> СвойстваПредопределенного.ВидимостьПоУмолчанию;
Если Не ПустаяСтрока(Объект.Описание) И НРег(СокрЛП(Объект.Описание)) = НРег(СокрЛП(СвойстваПредопределенного.Описание)) Тогда ПредопределенныйВариант = ТекущийОбъект.ПредопределенныйВариант.ПолучитьОбъект();
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ПредопределенныйВариант);
ТекущийОбъект.ВидимостьПоУмолчаниюПереопределена =
Объект.ВидимостьПоУмолчанию <> ПредопределенныйВариант.ВидимостьПоУмолчанию;
ОписаниеИзменено = Не ПустаяСтрока(Объект.Описание) И НРег(СокрЛП(Объект.Описание)) <> НРег(СокрЛП(ПредопределенныйВариант.Описание));
Если Не ОписаниеИзменено Тогда
ТекущийОбъект.Описание = ""; ТекущийОбъект.Описание = "";
Для каждого ПредставлениеВарианта Из ТекущийОбъект.Представления Цикл
ПредставлениеВарианта.Описание = "";
КонецЦикла;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
// Запись дерева подсистем. // Запись дерева подсистем.
ВариантыОтчетов.ДеревоПодсистемЗаписать(ЭтотОбъект, ТекущийОбъект); ДеревоПриемник = РеквизитФормыВЗначение("ДеревоПодсистем", Тип("ДеревоЗначений"));
Если ТекущийОбъект.ЭтоНовый() Тогда
ИзмененныеРазделы = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Использование", 1), Истина);
Иначе
ИзмененныеРазделы = ДеревоПриемник.Строки.НайтиСтроки(Новый Структура("Модифицированность", Истина), Истина);
КонецЕсли;
ВариантыОтчетов.ДеревоПодсистемЗаписать(ТекущийОбъект, ИзмененныеРазделы);
ЛокализацияСервер.ПередЗаписьюНаСервере(ТекущийОбъект);
Если ЭтоПредопределенный И Не ОписаниеИзменено Тогда
ТекущийОбъект.Представления.Очистить();
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
// СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
ПерезаполнитьДерево(Ложь); ПерезаполнитьДерево(Ложь);
ПрочитатьСвойстваПредопределенного(Ложь); ЗаполнитьИзПредопределенного(ТекущийОбъект);
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи) Процедура ПослеЗаписи(ПараметрыЗаписи)
ПараметрОповещения = Новый Структура("Ссылка, Наименование, Автор, Описание"); ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(Объект.Ссылка, ЭтотОбъект);
ЗаполнитьЗначенияСвойств(ПараметрОповещения, Объект); СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "ДеревоПодсистем", "*", Истина);
Оповестить(ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта(), ПараметрОповещения, ЭтотОбъект); КонецПроцедуры
РазворачиваемыйУзел = Новый Структура("ИмяТаблицы, Идентификатор, СПодчиненными");
РазворачиваемыйУзел.ИмяТаблицы = "ДеревоПодсистем"; &НаСервере
РазворачиваемыйУзел.Идентификатор = "*"; Процедура ПриЧтенииНаСервере(ТекущийОбъект)
РазворачиваемыйУзел.СПодчиненными = Истина;
СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, РазворачиваемыйУзел); // СтандартныеПодсистемы.УправлениеДоступом
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.УправлениеДоступом
ЗаполнитьИзПредопределенного(ТекущийОбъект);
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -135,6 +172,16 @@
Объект.ТолькоДляАвтора = (ЭтотОбъект.Доступен = "1"); Объект.ТолькоДляАвтора = (ЭтотОбъект.Доступен = "1");
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура НаименованиеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Наименование", СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура ОписаниеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Описание", СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПодсистем #Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПодсистем
@ -153,6 +200,14 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура УстановитьУсловноеОформление()
УсловноеОформление.Элементы.Очистить();
ВариантыОтчетов.УстановитьУсловноеОформлениеДереваПодсистем(ЭтотОбъект);
КонецПроцедуры
&НаСервере &НаСервере
Функция ПерезаполнитьДерево(Прочитать) Функция ПерезаполнитьДерево(Прочитать)
ВыделенныеСтроки = ОтчетыСервер.ЗапомнитьВыделенныеСтроки(ЭтотОбъект, "ДеревоПодсистем", "Ссылка"); ВыделенныеСтроки = ОтчетыСервер.ЗапомнитьВыделенныеСтроки(ЭтотОбъект, "ДеревоПодсистем", "Ссылка");
@ -166,29 +221,36 @@
КонецФункции КонецФункции
&НаСервере &НаСервере
Процедура ПрочитатьСвойстваПредопределенного(ПервоеЧтение) Процедура ЗаполнитьИзПредопределенного(ВариантОбъект)
Если ПервоеЧтение Тогда
Если Не Объект.Пользовательский ЭтоПредопределенный = Не ВариантОбъект.Пользовательский
И (Объект.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний И (ВариантОбъект.ТипОтчета = Перечисления.ТипыОтчетов.Внутренний
Или Объект.ТипОтчета = Перечисления.ТипыОтчетов.Расширение) Или ВариантОбъект.ТипОтчета = Перечисления.ТипыОтчетов.Расширение)
И ЗначениеЗаполнено(Объект.ПредопределенныйВариант) Тогда // Чтение настроек предопределенного. И ЗначениеЗаполнено(ВариантОбъект.ПредопределенныйВариант);
Сведения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.ПредопределенныйВариант, "ВидимостьПоУмолчанию, Описание"); Если Не ЭтоПредопределенный Тогда
СвойстваПредопределенного = Новый ФиксированнаяСтруктура(Сведения); Возврат;
Иначе КонецЕсли;
Возврат; // Не предопределенный.
КонецЕсли; ПредопределенныйВариант = ВариантОбъект.ПредопределенныйВариант.ПолучитьОбъект();
Если ВариантОбъект.ВидимостьПоУмолчаниюПереопределена = Ложь Тогда
ВариантОбъект.ВидимостьПоУмолчанию = ПредопределенныйВариант.ВидимостьПоУмолчанию;
КонецЕсли;
ВариантОбъект.Наименование = ПредопределенныйВариант.Наименование;
ПредставленияВарианта = ВариантОбъект.Представления.Выгрузить();
ВариантОбъект.Представления.Очистить();
ВариантОбъект.Представления.Загрузить(ПредопределенныйВариант.Представления.Выгрузить());
Если ПустаяСтрока(ВариантОбъект.Описание) Тогда
ВариантОбъект.Описание = ПредопределенныйВариант.Описание;
Иначе Иначе
Если ТипЗнч(СвойстваПредопределенного) <> Тип("ФиксированнаяСтруктура") Тогда ВариантОбъект.Представления.Сортировать("КодЯзыка");
Возврат; // Не предопределенный. ПредставленияВарианта.Сортировать("КодЯзыка");
КонецЕсли; Для каждого ПредставлениеВарианта Из ВариантОбъект.Представления Цикл
КонецЕсли; ОписаниеВарианта = ПредставленияВарианта.Найти(ПредставлениеВарианта.КодЯзыка, "КодЯзыка");
ПредставлениеВарианта.Описание = ОписаниеВарианта.Описание;
Если Объект.ВидимостьПоУмолчаниюПереопределена = Ложь Тогда КонецЦикла;
Объект.ВидимостьПоУмолчанию = СвойстваПредопределенного.ВидимостьПоУмолчанию;
КонецЕсли;
Если ПустаяСтрока(Объект.Описание) Тогда
Объект.Описание = СвойстваПредопределенного.Описание;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры

View File

@ -9,7 +9,7 @@
<ul><li><strong>По умолчанию виден в панели отчетов</strong> - включите флажок, чтобы отчет был всегда виден всем пользователям в <a href="CommonForm.ПанельОтчетов/Help">панели отчетов</a>.</li></ul></li></ul></li></ul><p></p> <ul><li><strong>По умолчанию виден в панели отчетов</strong> - включите флажок, чтобы отчет был всегда виден всем пользователям в <a href="CommonForm.ПанельОтчетов/Help">панели отчетов</a>.</li></ul></li></ul></li></ul><p></p>
<h3><a name="Размещение">Размещение в панелях отчетов</a></h3> <h3><a name="Размещение">Размещение в панелях отчетов</a></h3>
<p>Размещение вариантов отчетов могут менять администраторы вариантов отчетов и авторы.</p> <p>Размещение вариантов отчетов могут менять администраторы вариантов отчетов и авторы.</p>
<ul><li>Включите один или несколько флажков в колонке <strong>Раздел, группа</strong> для размещения варианта отчетов в соответствующих разделах или группах программы. При размещении в разделе вариант отчета будет выводиться в верхней части панели отчетов раздела, без размещения в группах. <ul><li>Включите один или несколько флажков в колонке <strong>Раздел, группа</strong> для размещения варианта отчетов в разделах или группах программы. При размещении в разделе вариант отчета будет выводиться в верхней части панели отчетов раздела, без размещения в группах.
</li><li> </li><li>
<div>В колонке <strong>Важность</strong> выберите способ выделения варианта отчета в группе: </div> <div>В колонке <strong>Важность</strong> выберите способ выделения варианта отчета в группе: </div>
<ul><li> <ul><li>

View File

@ -367,8 +367,7 @@
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Строки вида: <v8:content>Строки вида:
&lt;Имя расширения&gt; (&lt;Версия расширения&gt;) &lt;Хеш расширения&gt; &lt;Имя расширения&gt; (&lt;Версия расширения&gt;) &lt;Хеш расширения&gt;
... ...</v8:content>
#&lt;Имя конфигурации&gt; (&lt;Версия конфигурации&gt;)</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>

View File

@ -1,138 +1,154 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныйПрограммныйИнтерфейс #Область СлужебныйПрограммныйИнтерфейс
// Возвращает текущую версию расширений. // См. ОбщегоНазначенияПереопределяемый.ПриДобавленииОбработчиковУстановкиПараметровСеанса.
// Для поиска версии используется описание установленных расширений, Процедура УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры) Экспорт
// дополненное описанием конфигурации, которое обеспечивает соответствие уникального
// идентификатора "слепку" метаданных из конфигурации и подключенных расширений.
//
Функция ВерсияРасширений() Экспорт
Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Если ИменаПараметровСеанса = Неопределено
И ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда Или ИменаПараметровСеанса.Найти("УстановленныеРасширения") <> Неопределено Тогда
ВызватьИсключение
НСтр("ru = 'Расширения недоступны в неразделенном режиме. ПараметрыСеанса.УстановленныеРасширения = УстановленныеРасширения(Истина);
|Удалите все расширения через конфигуратор.'"); УстановленныеПараметры.Добавить("УстановленныеРасширения");
КонецЕсли; КонецЕсли;
Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда Если ИменаПараметровСеанса = Неопределено
Возврат ПустаяСсылка(); Или ИменаПараметровСеанса.Найти("ПодключенныеРасширения") <> Неопределено Тогда
Расширения = РасширенияКонфигурации.Получить(, ИсточникРасширенийКонфигурации.СеансАктивные);
ПараметрыСеанса.ПодключенныеРасширения = КонтрольныеСуммыРасширений(Расширения, "БезопасныйРежим");
УстановленныеПараметры.Добавить("ПодключенныеРасширения");
КонецЕсли; КонецЕсли;
Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда Если ИменаПараметровСеанса <> Неопределено
ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений(); И ИменаПараметровСеанса.Найти("ВерсияРасширений") <> Неопределено Тогда
Возврат ПустаяСсылка();
ПараметрыСеанса.ВерсияРасширений = ВерсияРасширений();
УстановленныеПараметры.Добавить("ВерсияРасширений");
КонецЕсли; КонецЕсли;
ВерсияРасширений = ВерсияРасширенийБезУчетаКонтрольнойСуммы(); Если ИменаПараметровСеанса = Неопределено
Если ЗначениеЗаполнено(ВерсияРасширений) Тогда И ТекущийРежимЗапуска() <> Неопределено Тогда
Возврат ВерсияРасширений;
КонецЕсли;
// Описание расширений включено описание метаданных конфигурации,
// так как состав подключенных расширений зависит от изменения конфигурации.
ОписаниеРасширений = ПараметрыСеанса.УстановленныеРасширения + Символы.ПС
+ "#" + Метаданные.Имя + " (" + Метаданные.Версия + ")";
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ОписаниеРасширений", ОписаниеРасширений);
Запрос.Текст =
"ВЫБРАТЬ
| ВерсииРасширений.Ссылка КАК Ссылка
|ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ
| ВерсииРасширений.ОписаниеМетаданных ПОДОБНО &ОписаниеРасширений";
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
НачатьТранзакцию();
Попытка
Выборка = Запрос.Выполнить().Выбрать();
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Если Выборка.Следующий() Тогда
ВерсияРасширений = Выборка.Ссылка;
Иначе
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
НачатьТранзакцию();
Попытка
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
ВерсияРасширений = Выборка.Ссылка;
Иначе
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВерсииРасширений.Ссылка КАК Ссылка
|ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений";
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() И Выборка.Количество() = 1 Тогда
Объект = Выборка.Ссылка.ПолучитьОбъект();
// Тут должна быть именно ТекущаяДата(), так как
// именно она устанавливается в поле НачалоСеанса.
Объект.ПоследняяДатаДобавленияВторойВерсии = ТекущаяДата();
Объект.Записать();
ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Истина);
КонецЕсли;
Объект = СоздатьЭлемент();
Объект.ОписаниеМетаданных = ОписаниеРасширений;
Объект.Записать();
ВерсияРасширений = Объект.Ссылка;
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецЕсли;
Возврат ВерсияРасширений;
КонецФункции
// При запуске в режиме отладки без обновления информационной базы допустимо
// использовать старый кэш метаданных расширений.
//
Процедура ПеререгистрироватьВерсиюРасширенийВРежимеОтладки() Экспорт
Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда
Возврат;
КонецЕсли;
ВерсияРасширений = ВерсияРасширенийБезУчетаКонтрольнойСуммы();
Если Не ЗначениеЗаполнено(ВерсияРасширений) Тогда
Возврат;
КонецЕсли;
Если ПараметрыСеанса.ВерсияРасширений <> ВерсияРасширений Тогда
ПараметрыСеанса.ВерсияРасширений = ВерсияРасширений;
ЗарегистрироватьИспользованиеВерсииРасширений(); ЗарегистрироватьИспользованиеВерсииРасширений();
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
// Возвращает отдельные контрольные суммы для основных расширений и
// исправлений для установки параметра сеанса УстановленныеРасширения и
// дальнейшей проверки изменений.
//
// Вызывается при запуске для установки параметра сеанса УстановленныеРасширения,
// который требуется для анализа наличия расширений и контроля динамического обновления,
// а также из формы установки расширений конфигурации в режиме 1С:Предприятия.
//
// Для сеанса запущенного без разделителей возвращается только состав неразделенных (общих)
// расширений, независимо от установленных разделителей.
//
// Возвращаемое значение:
// ФиксированнаяСтруктура - со свойствами:
// * Основные - Строка - контрольная сумма всех расширений, кроме исправительных расширений.
// * Исправления - Строка - контрольная сумма всех исправительных расширений.
//
Функция УстановленныеРасширения(ПриЗапуске = Ложь) Экспорт
Если ОбщегоНазначения.РазделениеВключено()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда
МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса");
Неразделенные = МодульРаботаВМоделиСервиса.СеансЗапущенБезРазделителей();
Иначе
Неразделенные = Ложь;
КонецЕсли;
РасширенияБазыДанных = РасширенияКонфигурации.Получить();
Если ПриЗапуске Тогда
РасширенияПриЗапуске = Новый Соответствие;
АктивныеРасширения = РасширенияКонфигурации.Получить(, ИсточникРасширенийКонфигурации.СеансАктивные);
Для Каждого Расширение Из АктивныеРасширения Цикл
РасширенияПриЗапуске.Вставить(КонтрольнаяСуммаРасширения(Расширение), Расширение);
КонецЦикла;
НеподключенныеРасширения = РасширенияКонфигурации.Получить(, ИсточникРасширенийКонфигурации.СеансОтключенные);
Для Каждого Расширение Из НеподключенныеРасширения Цикл
РасширенияПриЗапуске.Вставить(КонтрольнаяСуммаРасширения(Расширение), Расширение);
КонецЦикла;
ДобавленныеРасширения = Новый Соответствие;
Расширения = Новый Массив;
Для Каждого Расширение Из РасширенияБазыДанных Цикл
КонтрольнаяСумма = КонтрольнаяСуммаРасширения(Расширение);
РасширениеПриЗапуске = РасширенияПриЗапуске.Получить(КонтрольнаяСумма);
Если РасширениеПриЗапуске <> Неопределено Тогда
ДобавленныеРасширения.Вставить(КонтрольнаяСумма, Истина);
Расширения.Добавить(РасширениеПриЗапуске);
КонецЕсли;
КонецЦикла;
Для Каждого ОписаниеРасширения Из РасширенияПриЗапуске Цикл
Если ДобавленныеРасширения.Получить(ОписаниеРасширения.Ключ) = Неопределено Тогда
Расширения.Добавить(ОписаниеРасширения.Значение);
КонецЕсли;
КонецЦикла;
Иначе
Расширения = РасширенияБазыДанных;
КонецЕсли;
Основные = Новый Массив;
Исправления = Новый Массив;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда
МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации");
Иначе
МодульОбновлениеКонфигурации = Неопределено;
КонецЕсли;
Для Каждого Расширение Из Расширения Цикл
Если Неразделенные И Расширение.ОбластьДействия = ОбластьДействияРасширенияКонфигурации.РазделениеДанных Тогда
Продолжить;
КонецЕсли;
Если МодульОбновлениеКонфигурации <> Неопределено И МодульОбновлениеКонфигурации.ЭтоИсправление(Расширение) Тогда
Исправления.Добавить(Расширение);
Иначе
Основные.Добавить(Расширение);
КонецЕсли;
КонецЦикла;
УстановленныеРасширения = Новый Структура;
УстановленныеРасширения.Вставить("Основные", КонтрольныеСуммыРасширений(Основные));
УстановленныеРасширения.Вставить("Исправления", КонтрольныеСуммыРасширений(Исправления));
УстановленныеРасширения.Вставить("ОсновныеСостояние", КонтрольныеСуммыРасширений(Основные, "Все"));
УстановленныеРасширения.Вставить("ИсправленияСостояние", КонтрольныеСуммыРасширений(Исправления, "Все"));
Возврат Новый ФиксированнаяСтруктура(УстановленныеРасширения);
КонецФункции
// Возвращает признак изменения состава расширений после запуска сеанса.
Функция РасширенияИзмененыДинамически() Экспорт
УстановитьПривилегированныйРежим(Истина);
УстановленныеРасширения = УстановленныеРасширения();
Возврат ПараметрыСеанса.УстановленныеРасширения.ОсновныеСостояние <> УстановленныеРасширения.ОсновныеСостояние
Или ПараметрыСеанса.УстановленныеРасширения.ИсправленияСостояние <> УстановленныеРасширения.ИсправленияСостояние;
КонецФункции
// Добавляет сведения, что сеанс начал использование версии метаданных. // Добавляет сведения, что сеанс начал использование версии метаданных.
Процедура ЗарегистрироватьИспользованиеВерсииРасширений() Экспорт Процедура ЗарегистрироватьИспользованиеВерсииРасширений() Экспорт
Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда Если Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений;
Возврат; Возврат;
КонецЕсли; КонецЕсли;
// Тут должна быть именно ТекущаяДата(), так как
// именно она устанавливается в поле НачалоСеанса.
НачалоСеанса = ТекущаяДата();
НомерСеанса = НомерСеансаИнформационнойБазы();
ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений; ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений;
Если Не ЗначениеЗаполнено(ВерсияРасширений) Тогда Если Не ЗначениеЗаполнено(ВерсияРасширений) Тогда
@ -144,8 +160,11 @@
"ВЫБРАТЬ ПЕРВЫЕ 2 "ВЫБРАТЬ ПЕРВЫЕ 2
| ИСТИНА КАК ЗначениеИстина | ИСТИНА КАК ЗначениеИстина
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений"; | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ
| НЕ ВерсииРасширений.ПометкаУдаления";
// Если справочник изменяется в другом сеансе, тогда нужно дождаться окончания изменений.
Блокировка = Новый БлокировкаДанных; Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый; ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
@ -161,9 +180,14 @@
КонецПопытки; КонецПопытки;
Если РезультатыЗапроса[0].Выбрать().Количество() < 2 Тогда Если РезультатыЗапроса[0].Выбрать().Количество() < 2 Тогда
ОбновитьПоследнююВерсиюРасширений(ВерсияРасширений);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ТекущийСеанс = ПолучитьТекущийСеансИнформационнойБазы();
НачалоСеанса = ТекущийСеанс.НачалоСеанса;
НомерСеанса = ТекущийСеанс.НомерСеанса;
НаборЗаписей = РегистрыСведений.СеансыВерсийРасширений.СоздатьНаборЗаписей(); НаборЗаписей = РегистрыСведений.СеансыВерсийРасширений.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.НомерСеанса.Установить(НомерСеанса); НаборЗаписей.Отбор.НомерСеанса.Установить(НомерСеанса);
НаборЗаписей.Отбор.НачалоСеанса.Установить(НачалоСеанса); НаборЗаписей.Отбор.НачалоСеанса.Установить(НачалоСеанса);
@ -174,10 +198,30 @@
НоваяЗапись.НачалоСеанса = НачалоСеанса; НоваяЗапись.НачалоСеанса = НачалоСеанса;
НоваяЗапись.ВерсияРасширений = ВерсияРасширений; НоваяЗапись.ВерсияРасширений = ВерсияРасширений;
НаборЗаписей.ОбменДанными.Загрузка = Истина;
НаборЗаписей.Записать(); НаборЗаписей.Записать();
ОбновитьПоследнююВерсиюРасширений(ВерсияРасширений);
КонецПроцедуры КонецПроцедуры
Функция ПоследняяВерсияРасширений() Экспорт
ИмяПараметра = "СтандартныеПодсистемы.БазоваяФункциональность.ПоследняяВерсияРасширений";
ХранимыеСвойства = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ИмяПараметра, Истина);
Если ХранимыеСвойства = Неопределено
Или ТипЗнч(ХранимыеСвойства) <> Тип("Структура")
Или Не ХранимыеСвойства.Свойство("ВерсияРасширений")
Или Не ХранимыеСвойства.Свойство("ДатаОбновления") Тогда
ХранимыеСвойства = Новый Структура("ВерсияРасширений, ДатаОбновления", , '00010101');
КонецЕсли;
Возврат ХранимыеСвойства;
КонецФункции
// Удаляет устаревшие версии метаданных. // Удаляет устаревшие версии метаданных.
Процедура УдалитьУстаревшиеВерсииПараметров() Экспорт Процедура УдалитьУстаревшиеВерсииПараметров() Экспорт
@ -194,6 +238,7 @@
| ПО (СеансыВерсийРасширений.ВерсияРасширений = ВерсииРасширений.Ссылка) | ПО (СеансыВерсийРасширений.ВерсияРасширений = ВерсииРасширений.Ссылка)
|ГДЕ |ГДЕ
| ВерсииРасширений.Ссылка <> &ТекущаяВерсияРасширений | ВерсииРасширений.Ссылка <> &ТекущаяВерсияРасширений
| И НЕ ВерсииРасширений.ПометкаУдаления
|ИТОГИ ПО |ИТОГИ ПО
| ВерсияРасширений | ВерсияРасширений
|; |;
@ -201,22 +246,26 @@
|//////////////////////////////////////////////////////////////////////////////// |////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ ПЕРВЫЕ 1 |ВЫБРАТЬ ПЕРВЫЕ 1
| ВерсииРасширений.Ссылка КАК ВерсияРасширений, | ВерсииРасширений.Ссылка КАК ВерсияРасширений,
| ВерсииРасширений.ПоследняяДатаДобавленияВторойВерсии | ВерсииРасширений.ПоследняяДатаДобавленияВторойВерсии КАК ПоследняяДатаДобавленияВторойВерсии
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ |ГДЕ
| ВерсииРасширений.ПоследняяДатаДобавленияВторойВерсии <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) | ВерсииРасширений.ПоследняяДатаДобавленияВторойВерсии <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| И НЕ ВерсииРасширений.ПометкаУдаления
|; |;
| |
|//////////////////////////////////////////////////////////////////////////////// |////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ ПЕРВЫЕ 1 |ВЫБРАТЬ ПЕРВЫЕ 1
| ВерсииРасширений.Ссылка КАК ВерсияРасширений, | ВерсииРасширений.Ссылка КАК ВерсияРасширений,
| ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений | ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений КАК ДатаПервогоВходаПослеУдаленияВсехРасширений
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ |ГДЕ
| ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)"; | ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| И НЕ ВерсииРасширений.ПометкаУдаления";
// Если справочник ВерсииРасширений или регистр сведений СеансыВерсийРасширений изменяются в другом сеансе,
// тогда нужно дождаться окончания изменений.
Блокировка = Новый БлокировкаДанных; Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый; ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
@ -242,7 +291,10 @@
// использоваться сеансами, которые были открыты до этого события. // использоваться сеансами, которые были открыты до этого события.
ВерсияИспользуемаяВНезарегистрированныхСеансах = Неопределено; ВерсияИспользуемаяВНезарегистрированныхСеансах = Неопределено;
ДатаОкончанияСеансовИспользующихРасширенияБезРегистрации = '00010101'; ДатаОкончанияСеансовИспользующихРасширенияБезРегистрации = '00010101';
Если ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда
Если ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Основные)
Или ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Исправления) Тогда
Если Не РезультатыЗапроса[1].Пустой() Тогда Если Не РезультатыЗапроса[1].Пустой() Тогда
Свойства = РезультатыЗапроса[1].Выгрузить()[0]; Свойства = РезультатыЗапроса[1].Выгрузить()[0];
ДатаОкончанияСеансовИспользующихРасширенияБезРегистрации ДатаОкончанияСеансовИспользующихРасширенияБезРегистрации
@ -293,12 +345,33 @@
Или ТекущаяВерсия = ВерсияИспользуемаяВНезарегистрированныхСеансах Тогда Или ТекущаяВерсия = ВерсияИспользуемаяВНезарегистрированныхСеансах Тогда
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
Объект = ТекущаяВерсия.ПолучитьОбъект();
Объект.Удалить(); Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.УстановитьЗначение("Ссылка", ТекущаяВерсия);
НачатьТранзакцию();
Попытка
Блокировка.Заблокировать();
Объект = ТекущаяВерсия.ПолучитьОбъект();
Объект.ПометкаУдаления = Истина;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(Объект);
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
ВерсииУдалялись = Истина; ВерсииУдалялись = Истина;
КонецЦикла; КонецЦикла;
// Отключение регламентного задания, если осталась только одна версия расширений. // Отключение регламентного задания, если осталась только одна версия расширений.
// Достаточно полной разделяемой блокировки справочника ВерсииРасширений и
// регистра сведений СеансыВерсийРасширений (исключительную ставить избыточно и
// крайне плохо, так как это задержит вход в другие сеансы).
// Взаимоблокировки исключены использованием разделяемых блокировок на всю таблицу в целом,
// что допустимо и необходимо для механизма регистрации использования версий.
Блокировка = Новый БлокировкаДанных; Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый; ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
@ -307,9 +380,11 @@
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 2 "ВЫБРАТЬ ПЕРВЫЕ 2
| ВерсииРасширений.Ссылка КАК Ссылка, | ВерсииРасширений.Ссылка КАК Ссылка,
| ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений | ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений КАК ДатаПервогоВходаПослеУдаленияВсехРасширений
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений"; | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ
| НЕ ВерсииРасширений.ПометкаУдаления";
НачатьТранзакцию(); НачатьТранзакцию();
Попытка Попытка
@ -322,7 +397,10 @@
// Удаление всех регистраций использования метаданных. // Удаление всех регистраций использования метаданных.
ВсеЗаписи = РегистрыСведений.СеансыВерсийРасширений.СоздатьНаборЗаписей(); ВсеЗаписи = РегистрыСведений.СеансыВерсийРасширений.СоздатьНаборЗаписей();
ВсеЗаписи.Записать(); ВсеЗаписи.Записать();
Если ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда
Если ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Основные)
Или ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Исправления) Тогда
ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Ложь); ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Ложь);
КонецЕсли; КонецЕсли;
Если ВерсииУдалялись Если ВерсииУдалялись
@ -357,7 +435,7 @@
КонецПроцедуры КонецПроцедуры
// Вызывается из формы УстановленныеРасширения. // Вызывается из формы Расширения.
Процедура ПриУдаленииВсехРасширений() Экспорт Процедура ПриУдаленииВсехРасширений() Экспорт
ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений(); ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений();
@ -368,7 +446,7 @@
// Включает/Отключает регламентное задание УдалениеУстаревшихПараметровРаботыВерсийРасширений. // Включает/Отключает регламентное задание УдалениеУстаревшихПараметровРаботыВерсийРасширений.
Процедура ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Включить) Экспорт Процедура ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Включить) Экспорт
СтандартныеПодсистемыСервер.УстановитьИспользованиеПредопределенногоРегламентногоЗадания( РегламентныеЗаданияСервер.УстановитьИспользованиеПредопределенногоРегламентногоЗадания(
Метаданные.РегламентныеЗадания.УдалениеУстаревшихПараметровРаботыВерсийРасширений, Включить); Метаданные.РегламентныеЗадания.УдалениеУстаревшихПараметровРаботыВерсийРасширений, Включить);
КонецПроцедуры КонецПроцедуры
@ -377,65 +455,162 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
// Для функции ВерсияРасширений и процедуры ПеререгистрироватьВерсиюРасширенийВРежимеОтладки. // Возвращает контрольные суммы указанных расширений.
Функция ВерсияРасширенийБезУчетаКонтрольнойСуммы() //
// Параметры:
// Расширения - Массив - получить контрольные суммы указанных расширений.
// УчитыватьСостояниеРасширений - Булево - учитывать признаки Активно и БезопасныйРежим.
//
// Возвращаемое значение:
// Строка - строки вида "<Имя расширения> (<Версия расширения>) <Контрольная сумма>".
//
Функция КонтрольныеСуммыРасширений(Расширения, СвойстваПодключения = "")
Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда Список = Новый СписокЗначений;
Возврат Неопределено;
КонецЕсли;
Если Не ОбщегоНазначенияКлиентСервер.РежимОтладки() Для Каждого Расширение Из Расширения Цикл
Или Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Список.Добавить(КонтрольнаяСуммаРасширения(Расширение, СвойстваПодключения));
Или ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы() Тогда
Возврат Неопределено;
КонецЕсли;
УстановленныеРасширения = ПараметрыСеанса.УстановленныеРасширения;
ОписаниеРасширений = Новый Массив;
ЧислоСтрок = СтрЧислоСтрок(УстановленныеРасширения);
Для НомерСтроки = 1 По ЧислоСтрок Цикл
ТекущаяСтрока = СтрПолучитьСтроку(УстановленныеРасширения, НомерСтроки);
Позиция = СтрНайти(ТекущаяСтрока, ")");
ОписаниеРасширений.Добавить(Лев(ТекущаяСтрока, Позиция));
КонецЦикла; КонецЦикла;
ОписаниеРасширений.Добавить("#" + Метаданные.Имя + " (" + Метаданные.Версия + ")");
Если Список.Количество() <> 0 Тогда
КонтрольнаяСумма = "#" + Метаданные.Имя + " (" + Метаданные.Версия + ")";
Список.Добавить(КонтрольнаяСумма);
КонецЕсли;
КонтрольныеСуммы = "";
Для Каждого Элемент Из Список Цикл
КонтрольныеСуммы = КонтрольныеСуммы + Символы.ПС + Элемент.Значение;
КонецЦикла;
Возврат СокрЛ(КонтрольныеСуммы);
КонецФункции
// Для функций КонтрольныеСуммыРасширений и УстановленныеРасширения.
Функция КонтрольнаяСуммаРасширения(Расширение, СвойстваПодключения = "")
КонтрольнаяСумма = Расширение.Имя + " (" + Расширение.Версия + ") " + Base64Строка(Расширение.ХешСумма);
Если ЗначениеЗаполнено(СвойстваПодключения) Тогда
КонтрольнаяСумма = КонтрольнаяСумма + " БезопасныйРежим:" + Расширение.БезопасныйРежим;
КонецЕсли;
Если СвойстваПодключения = "Все" Тогда
КонтрольнаяСумма = КонтрольнаяСумма
+ " ПередаватьВПодчиненныеУзлыРИБ:" + Расширение.ИспользуетсяВРаспределеннойИнформационнойБазе
+ " Активно:" + Расширение.Активно;
КонецЕсли;
Возврат КонтрольнаяСумма;
КонецФункции
// Возвращает текущую версию расширений.
// Для поиска версии используется описание подключенных расширений.
//
Функция ВерсияРасширений()
Если Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
Возврат ПустаяСсылка();
КонецЕсли;
Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Основные)
И Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения.Исправления) Тогда
ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений();
КонецЕсли;
ОписаниеРасширений = ПараметрыСеанса.ПодключенныеРасширения;
Если Не ЗначениеЗаполнено(ОписаниеРасширений) Тогда
Возврат ПустаяСсылка();
КонецЕсли;
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ "ВЫБРАТЬ
| ВерсииРасширений.Ссылка КАК Ссылка, | ВерсииРасширений.Ссылка КАК Ссылка,
| ВерсииРасширений.ОписаниеМетаданных | ВерсииРасширений.ОписаниеМетаданных КАК ОписаниеРасширений
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ |ГДЕ
| ИСТИНА В | НЕ ВерсииРасширений.ПометкаУдаления";
| (ВЫБРАТЬ ПЕРВЫЕ 1
| ИСТИНА // Если справочник изменяется в другом сеансе, тогда нужно дождаться окончания изменений.
| ИЗ Блокировка = Новый БлокировкаДанных;
| РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
| ГДЕ ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
| ВерсииИдентификаторов.ВерсияРасширений = ВерсииРасширений.Ссылка) НачатьТранзакцию();
| Попытка
|УПОРЯДОЧИТЬ ПО Блокировка.Заблокировать();
| ВерсииРасширений.Код УБЫВ"; Выборка = Запрос.Выполнить().Выбрать();
Выборка = Запрос.Выполнить().Выбрать(); ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Если ВерсияНайдена(Выборка, ОписаниеРасширений) Тогда
ВерсияРасширений = Выборка.Ссылка;
Иначе
// Создание новой версии расширений.
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
НачатьТранзакцию();
Попытка
// Повторная проверка, что версия еще не создана,
// что маловероятно, но возможно между транзакциями.
// Сразу исключительная блокировка недопустима, так как это
// замедлит вход пользователей в другие сеансы.
Выборка = Запрос.Выполнить().Выбрать();
Если ВерсияНайдена(Выборка, ОписаниеРасширений) Тогда
ВерсияРасширений = Выборка.Ссылка;
Иначе
Блокировка.Заблокировать();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВерсииРасширений.Ссылка КАК Ссылка
|ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ
| НЕ ВерсииРасширений.ПометкаУдаления";
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() И Выборка.Количество() = 1 Тогда
Объект = Выборка.Ссылка.ПолучитьОбъект();
// Тут должна быть именно ТекущаяДата(), так как
// именно она устанавливается в поле НачалоСеанса.
Объект.ПоследняяДатаДобавленияВторойВерсии = ТекущаяДата();
Объект.ОбменДанными.Загрузка = Истина;
Объект.Записать();
ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Истина);
КонецЕсли;
Объект = СоздатьЭлемент();
Объект.ОписаниеМетаданных = ОписаниеРасширений;
Объект.ОбменДанными.Загрузка = Истина;
Объект.Записать();
ВерсияРасширений = Объект.Ссылка;
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецЕсли;
Возврат ВерсияРасширений;
КонецФункции
// Для функции ВерсияРасширений.
Функция ВерсияНайдена(Выборка, ОписаниеРасширений)
Пока Выборка.Следующий() Цикл Пока Выборка.Следующий() Цикл
ВерсияРасширений = Выборка.Ссылка; Если Выборка.ОписаниеРасширений = ОписаниеРасширений Тогда
Для Каждого ОписаниеРасширения Из ОписаниеРасширений Цикл Возврат Истина;
НомерСтроки = ОписаниеРасширений.Найти(ОписаниеРасширения) + 1;
ТекущаяСтрока = СтрПолучитьСтроку(Выборка.ОписаниеМетаданных, НомерСтроки);
Если Не СтрНачинаетсяС(ТекущаяСтрока, ОписаниеРасширения) Тогда
ВерсияРасширений = Неопределено;
Прервать;
КонецЕсли;
КонецЦикла;
Если ЗначениеЗаполнено(ВерсияРасширений) Тогда
Прервать;
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
Возврат ВерсияРасширений; Возврат Ложь;
КонецФункции КонецФункции
@ -457,19 +632,66 @@
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 2 "ВЫБРАТЬ ПЕРВЫЕ 2
| ВерсииРасширений.Ссылка КАК Ссылка, | ВерсииРасширений.Ссылка КАК Ссылка,
| ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений | ВерсииРасширений.ДатаПервогоВходаПослеУдаленияВсехРасширений КАК ДатаПервогоВходаПослеУдаленияВсехРасширений
|ИЗ |ИЗ
| Справочник.ВерсииРасширений КАК ВерсииРасширений"; | Справочник.ВерсииРасширений КАК ВерсииРасширений
|ГДЕ
| НЕ ВерсииРасширений.ПометкаУдаления";
Выгрузка = Запрос.Выполнить().Выгрузить(); Выгрузка = Запрос.Выполнить().Выгрузить();
Если Выгрузка.Количество() = 1 Если Выгрузка.Количество() = 1
И Не ЗначениеЗаполнено(Выгрузка[0].ДатаПервогоВходаПослеУдаленияВсехРасширений) Тогда И Не ЗначениеЗаполнено(Выгрузка[0].ДатаПервогоВходаПослеУдаленияВсехРасширений) Тогда
Объект = Выгрузка[0].Ссылка.ПолучитьОбъект(); ВерсияРасширенийСсылка = Выгрузка[0].Ссылка;
// Тут должна быть именно ТекущаяДата(), так как НачатьТранзакцию();
// именно она устанавливается в поле НачалоСеанса. Попытка
Объект.ДатаПервогоВходаПослеУдаленияВсехРасширений = ТекущаяДата(); Блокировка = Новый БлокировкаДанных;
Объект.Записать(); ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений");
ЭлементБлокировки.УстановитьЗначение("Ссылка", ВерсияРасширенийСсылка);
Блокировка.Заблокировать();
Объект = ВерсияРасширенийСсылка.ПолучитьОбъект();
Если Не ЗначениеЗаполнено(Объект.ДатаПервогоВходаПослеУдаленияВсехРасширений) Тогда
// АПК:143-выкл. См. 643.2.1. Требуется ТекущаяДата сервера, а не ТекущаяДатаСеанса,
// так как именно ТекущаяДата устанавливается в поле НачалоСеанса.
Объект.ДатаПервогоВходаПослеУдаленияВсехРасширений = ТекущаяДата();
// АПК:143-вкл.
Объект.Записать();
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецЕсли;
КонецПроцедуры
// Для процедуры ЗарегистрироватьИспользованиеВерсииРасширений.
Процедура ОбновитьПоследнююВерсиюРасширений(ВерсияРасширений)
Если КонфигурацияБазыДанныхИзмененаДинамически()
Или РасширенияИзмененыДинамически() Тогда
Возврат;
КонецЕсли;
ХранимыеСвойства = ПоследняяВерсияРасширений();
Если ХранимыеСвойства.ВерсияРасширений = ВерсияРасширений Тогда
Возврат;
КонецЕсли;
ХранимыеСвойства.ВерсияРасширений = ВерсияРасширений;
ХранимыеСвойства.ДатаОбновления = ТекущаяДатаСеанса();
ИмяПараметра = "СтандартныеПодсистемы.БазоваяФункциональность.ПоследняяВерсияРасширений";
СтандартныеПодсистемыСервер.УстановитьПараметрРаботыРасширения(ИмяПараметра, ХранимыеСвойства, Истина);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный");
МодульУправлениеДоступомСлужебный.ЗапланироватьОбновлениеПараметровОграниченияДоступа(
"ОбновитьПоследнююВерсиюРасширений");
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры

View File

@ -1,8 +1,19 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОписаниеПеременных
Перем НовыйОбъект; Перем НовыйОбъект;
#КонецОбласти
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ) Процедура ПередЗаписью(Отказ)
@ -29,4 +40,6 @@
#КонецОбласти #КонецОбласти
#КонецЕсли #Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли

View File

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Width>70</Width>
<Height>10</Height>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<ChildItems> <ChildItems>
<Button name="ФормаВключитьВозможностьРедактирования" id="22"> <Button name="ФормаВключитьВозможностьРедактирования" id="22">
@ -23,7 +21,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<VerticalStretch>false</VerticalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="2"/> <ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="2"/>
@ -38,9 +35,12 @@
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<SearchStringLocation>None</SearchStringLocation> <Title>
<ViewStatusLocation>None</ViewStatusLocation> <v8:item>
<SearchControlLocation>None</SearchControlLocation> <v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>

View File

@ -1,4 +1,11 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере

View File

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Width>50</Width>
<Height>7</Height>
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode> <WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
<UseForFoldersAndItems>Items</UseForFoldersAndItems> <UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
@ -18,20 +16,21 @@
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<InputField name="ОписаниеМетаданных" id="4">
<DataPath>Объект.ОписаниеМетаданных</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<ContextMenu name="ОписаниеМетаданныхКонтекстноеМеню" id="5"/>
<ExtendedTooltip name="ОписаниеМетаданныхРасширеннаяПодсказка" id="6"/>
</InputField>
<InputField name="Код" id="1"> <InputField name="Код" id="1">
<DataPath>Объект.Code</DataPath> <DataPath>Объект.Code</DataPath>
<EditMode>EnterOnInput</EditMode> <EditMode>EnterOnInput</EditMode>
<ContextMenu name="КодКонтекстноеМеню" id="2"/> <ContextMenu name="КодКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="КодРасширеннаяПодсказка" id="3"/> <ExtendedTooltip name="КодРасширеннаяПодсказка" id="3"/>
</InputField> </InputField>
<InputField name="ОписаниеМетаданных" id="4">
<DataPath>Объект.ОписаниеМетаданных</DataPath>
<EditMode>EnterOnInput</EditMode>
<MultiLine>true</MultiLine>
<ExtendedEdit>true</ExtendedEdit>
<ContextMenu name="ОписаниеМетаданныхКонтекстноеМеню" id="5"/>
<ExtendedTooltip name="ОписаниеМетаданныхРасширеннаяПодсказка" id="6"/>
</InputField>
<InputField name="ПоследняяДатаДобавленияВторойВерсии" id="9"> <InputField name="ПоследняяДатаДобавленияВторойВерсии" id="9">
<DataPath>Объект.ПоследняяДатаДобавленияВторойВерсии</DataPath> <DataPath>Объект.ПоследняяДатаДобавленияВторойВерсии</DataPath>
<ContextMenu name="ПоследняяДатаДобавленияВторойВерсииКонтекстноеМеню" id="10"/> <ContextMenu name="ПоследняяДатаДобавленияВторойВерсииКонтекстноеМеню" id="10"/>

View File

@ -1,4 +1,11 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере

View File

@ -322,7 +322,7 @@
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString> <SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString> <FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString> <ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.ВерсииФайлов.Form.ФормаЭлемента</DefaultObjectForm> <DefaultObjectForm/>
<DefaultFolderForm/> <DefaultFolderForm/>
<DefaultListForm>Catalog.ВерсииФайлов.Form.ФормаСписка</DefaultListForm> <DefaultListForm>Catalog.ВерсииФайлов.Form.ФормаСписка</DefaultListForm>
<DefaultChoiceForm>Catalog.ВерсииФайлов.Form.ФормаВыбора</DefaultChoiceForm> <DefaultChoiceForm>Catalog.ВерсииФайлов.Form.ФормаВыбора</DefaultChoiceForm>
@ -365,6 +365,7 @@
</Synonym> </Synonym>
<Comment/> <Comment/>
<Type> <Type>
<v8:Type>cfg:CatalogRef.ВнешниеПользователи</v8:Type>
<v8:Type>cfg:CatalogRef.УчетныеЗаписиСинхронизацииФайлов</v8:Type> <v8:Type>cfg:CatalogRef.УчетныеЗаписиСинхронизацииФайлов</v8:Type>
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type> <v8:Type>cfg:CatalogRef.Пользователи</v8:Type>
</Type> </Type>
@ -546,11 +547,11 @@
</Attribute> </Attribute>
<Attribute uuid="f8ab477c-8e78-48c0-9f99-27748b109706"> <Attribute uuid="f8ab477c-8e78-48c0-9f99-27748b109706">
<Properties> <Properties>
<Name>Зашифрован</Name> <Name>УдалитьЗашифрован</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Зашифрована</v8:content> <v8:content>(не используется) Зашифрована</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -740,11 +741,11 @@
</Attribute> </Attribute>
<Attribute uuid="2d51aae9-650d-4719-a94d-2609b69a2d36"> <Attribute uuid="2d51aae9-650d-4719-a94d-2609b69a2d36">
<Properties> <Properties>
<Name>ПодписанЭП</Name> <Name>УдалитьПодписанЭП</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Подписана электронно</v8:content> <v8:content>(не используется) Подписана электронно</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -1252,21 +1253,21 @@
</Attribute> </Attribute>
<TabularSection uuid="ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d"> <TabularSection uuid="ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.ВерсииФайлов.ЭлектронныеПодписи" category="TabularSection"> <xr:GeneratedType name="CatalogTabularSection.ВерсииФайлов.УдалитьЭлектронныеПодписи" category="TabularSection">
<xr:TypeId>5da3d5eb-b33d-49ee-a0c7-e7bce043d7d7</xr:TypeId> <xr:TypeId>5da3d5eb-b33d-49ee-a0c7-e7bce043d7d7</xr:TypeId>
<xr:ValueId>1349a0c3-4a9d-460c-8f72-0d86cc51d6f4</xr:ValueId> <xr:ValueId>1349a0c3-4a9d-460c-8f72-0d86cc51d6f4</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.ВерсииФайлов.ЭлектронныеПодписи" category="TabularSectionRow"> <xr:GeneratedType name="CatalogTabularSectionRow.ВерсииФайлов.УдалитьЭлектронныеПодписи" category="TabularSectionRow">
<xr:TypeId>204f0716-62ac-492f-ac0f-9b6e774a82f7</xr:TypeId> <xr:TypeId>204f0716-62ac-492f-ac0f-9b6e774a82f7</xr:TypeId>
<xr:ValueId>9239b454-c752-4814-943c-3d448fdcce59</xr:ValueId> <xr:ValueId>9239b454-c752-4814-943c-3d448fdcce59</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
</InternalInfo> </InternalInfo>
<Properties> <Properties>
<Name>ЭлектронныеПодписи</Name> <Name>УдалитьЭлектронныеПодписи</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>электронные подписи</v8:content> <v8:content>(не используется) Электронные подписи</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -1747,34 +1748,9 @@
</Attribute> </Attribute>
</ChildObjects> </ChildObjects>
</TabularSection> </TabularSection>
<Form>ФормаЭлемента</Form>
<Form>ФормаСписка</Form> <Form>ФормаСписка</Form>
<Form>ФормаВыбора</Form> <Form>ФормаВыбора</Form>
<Form>ВерсииФайла</Form> <Form>ВерсииФайла</Form>
<Form>ВыборСпособаСравненияВерсий</Form>
<Command uuid="346cb8b7-a20e-4a06-823e-26dfb2e3e741">
<Properties>
<Name>ОткрытьВерсииФайла</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Версии файла</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>FormNavigationPanelGoTo</Group>
<CommandParameterType>
<v8:Type>cfg:CatalogRef.Файлы</v8:Type>
</CommandParameterType>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<Representation>Auto</Representation>
<ToolTip/>
<Picture/>
<Shortcut/>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</Command>
</ChildObjects> </ChildObjects>
</Catalog> </Catalog>
</MetaDataObject> </MetaDataObject>

View File

@ -1,20 +0,0 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Файл", ПараметрКоманды);
ПараметрыФормы.Вставить("УникальныйИдентификаторКарточкиФайла",
ПараметрыВыполненияКоманды.Источник.УникальныйИдентификатор);
ОткрытьФорму(
"Справочник.ВерсииФайлов.Форма.ВерсииФайла",
ПараметрыФормы,
ПараметрыВыполненияКоманды.Источник,
ПараметрыВыполненияКоманды.Уникальность,
ПараметрыВыполненияКоманды.Окно);
КонецПроцедуры
#КонецОбласти

View File

@ -2,7 +2,7 @@
<p>Предназначен для просмотра и управления версиями файла.</p> <p>Предназначен для просмотра и управления версиями файла.</p>
<p>Для просмотра списка всех версий <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">файла</a> откройте его карточку (в <a href="Catalog.Файлы/Help">списке файлов</a> нажмите <strong>F2</strong> или <strong>Еще -</strong> <strong>Открыть карточку</strong>) и нажмите <strong>Версии файла</strong> на панели навигации.</p> <p>Для просмотра списка всех версий <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">файла</a> откройте его карточку (в <a href="Catalog.Файлы/Help">списке файлов</a> нажмите <strong>F2</strong> или <strong>Еще -</strong> <strong>Открыть карточку</strong>) и нажмите <strong>Версии файла</strong> на панели навигации.</p>
<p>Список версий является иерархическим, для удобства просмотра отображается в виде дерева. В этом случае легко проследить историю редактирования файла. Более поздние версии отображаются подчиненными более ранним. При этом первую версию файла удалить из списка невозможно.</p> <p>Список версий является иерархическим, для удобства просмотра отображается в виде дерева. В этом случае легко проследить историю редактирования файла. Более поздние версии отображаются подчиненными более ранним. При этом первую версию файла удалить из списка невозможно.</p>
<p>По окончании редактирования файла программа рекомендует сохранить версию файла и ввести информацию о данной версии. По умолчанию эта возможность включена (рекомендуется использовать сохранение версий, так как в случае серьезных ошибок, которые привели к порче файла, можно вернуться к более ранней, неиспорченной версии). Хранение версий можно включить с помощью соответствующего флажка в <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">карточке файла</a> или при <a href="Catalog.Файлы.Form.ФормаИмпортаФайлов/Help">загрузке файлов</a> (<a href="Catalog.Файлы.Form.ФормаИмпортаПапки/Help">папок</a>). Впоследствии можно изменить некоторые <a href="Catalog.Файлы.Form.ФормаВозвратаФайла/Help">сведения о версии</a>, например, комментарий.</p> <p>По окончании редактирования файла программа рекомендует сохранить версию файла и ввести информацию о данной версии. По умолчанию эта возможность включена (рекомендуется использовать сохранение версий, так как в случае серьезных ошибок, которые привели к порче файла, можно вернуться к более ранней, неиспорченной версии). Хранение версий можно включить с помощью соответствующего флажка в <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">карточке файла</a> или при <a href="DataProcessor.РаботаСФайлами.Form.ФормаИмпортаФайлов/Help">загрузке файлов</a> (<a href="DataProcessor.РаботаСФайлами.Form.ФормаИмпортаПапки/Help">папок</a>). Впоследствии можно изменить некоторые <a href="DataProcessor.РаботаСФайлами.Form.ВерсияПрисоединенногоФайла/Help">сведения о версии</a>, например, комментарий.</p>
<p>В списке выводится:</p> <p>В списке выводится:</p>
<ul><li> <ul><li>
<div><strong>Автор</strong> - пользователь, который добавил версию файла. Также в этой колонке в виде картинки отображается тип файла.</div> <div><strong>Автор</strong> - пользователь, который добавил версию файла. Также в этой колонке в виде картинки отображается тип файла.</div>
@ -21,8 +21,8 @@
</li><li> </li><li>
<div><strong>Расширение</strong> - формат файла, и некоторые другие поля.</div></li></ul><h3>Просмотр версии файла</h3> <div><strong>Расширение</strong> - формат файла, и некоторые другие поля.</div></li></ul><h3>Просмотр версии файла</h3>
<ul><li>Нажмите <strong>Просмотреть</strong>, для того чтобы открыть выбранную версию файла соответствующим приложением для просмотра или редактирования (также можно открыть версию файла двойным щелчком мыши по нужной строке или с помощью команды <strong>Еще - Просмотреть</strong>). </li></ul><h3>Просмотр сведений о версии файла</h3> <ul><li>Нажмите <strong>Просмотреть</strong>, для того чтобы открыть выбранную версию файла соответствующим приложением для просмотра или редактирования (также можно открыть версию файла двойным щелчком мыши по нужной строке или с помощью команды <strong>Еще - Просмотреть</strong>). </li></ul><h3>Просмотр сведений о версии файла</h3>
<ul><li>Нажмите <strong>Открыть карточку</strong>, для того чтобы открыть <a href="Catalog.ВерсииФайлов.Form.ФормаЭлемента/Help">сведения</a> о выбранной версии. В карточке версии можно изменить <strong>Комментарий</strong>.</li></ul><h3>Замена текущей версии файла</h3> <ul><li>Нажмите <strong>Открыть карточку</strong>, для того чтобы открыть <a href="DataProcessor.РаботаСФайлами.Form.ВерсияПрисоединенногоФайла/Help">сведения</a> о выбранной версии. В карточке версии можно изменить <strong>Комментарий</strong>.</li></ul><h3>Замена текущей версии файла</h3>
<ul><li>Выберите нужную версию файла в списке, нажмите <strong>Сделать активной</strong>, для того чтобы изменить активную (текущую) версию. При этом нумерация версий остается прежней, меняется только порядок версий в списке. </li></ul><h3>Сравнение двух версий файла</h3> <ul><li>Выберите нужную версию файла в списке, нажмите <strong>Сделать активной</strong>, для того чтобы изменить активную (текущую) версию. При этом нумерация версий остается прежней, меняется только порядок версий в списке. </li></ul><h3>Сравнение двух версий файла</h3>
<ul><li>Выделите две версии в списке и нажмите <strong>Показать отличия </strong>для их сравнения. Сравнение версий поддерживается для следующих типов файлов:  HTML, TXT, RTF, DOC, DOCX, ODT. </li></ul><h3>Сохранение версии файла на диск</h3> <ul><li>Выделите две версии в списке и нажмите <strong>Показать отличия </strong>для их сравнения. Сравнение версий поддерживается для следующих типов файлов:HTML, TXT, RTF, DOC, DOCX, ODT. </li></ul><h3>Сохранение версии файла на диск</h3>
<ul><li>Для того чтобы сохранить файл версии на диск или другое устройство,  нажмите <strong>Еще - Сохранить как</strong>. Выберите каталог для сохранения файла.</li></ul><h3>См. также: </h3> <ul><li>Для того чтобы сохранить файл версии на диск или другое устройство,нажмите <strong>Еще - Сохранить как</strong>. Выберите каталог для сохранения файла.</li></ul><h3>См. также: </h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>

View File

@ -1,7 +1,19 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые разрешается редактировать // Возвращает реквизиты объекта, которые разрешается редактировать
// с помощью обработки группового изменения реквизитов. // с помощью обработки группового изменения реквизитов.
// //
@ -16,6 +28,41 @@
КонецФункции КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// СтандартныеПодсистемы.УправлениеДоступом
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Ограничение.Текст =
"РазрешитьЧтение
|ГДЕ
| ЧтениеОбъектаРазрешено(Владелец.ВладелецФайла)
|;
|РазрешитьИзменениеЕслиРазрешеноЧтение
|ГДЕ
| ИзменениеОбъектаРазрешено(Владелец.ВладелецФайла)";
Ограничение.ТекстДляВнешнихПользователей = Ограничение.Текст;
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
#КонецОбласти
#КонецОбласти
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
Если ВидФормы = "ФормаОбъекта" Тогда
СтандартнаяОбработка = Ложь;
ВыбраннаяФорма = "Обработка.РаботаСФайлами.Форма.ВерсияПрисоединенногоФайла";
КонецЕсли;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли

View File

@ -1,10 +1,18 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ) Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда Если ОбменДанными.Загрузка Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@ -20,33 +28,8 @@
РодительскаяВерсия = Владелец.ТекущаяВерсия; РодительскаяВерсия = Владелец.ТекущаяВерсия;
КонецЕсли; КонецЕсли;
Если НЕ ЭтоНовый() Тогда
УстановленаПометкаУдаления = ПометкаУдаления И Не ПометкаУдаленияВИБ();
ЗаписьПодписанногоОбъекта = Ложь;
Если ДополнительныеСвойства.Свойство("ЗаписьПодписанногоОбъекта") Тогда
ЗаписьПодписанногоОбъекта = ДополнительныеСвойства.ЗаписьПодписанногоОбъекта;
КонецЕсли;
Если ЗаписьПодписанногоОбъекта <> Истина Тогда
СтруктураРеквизитов = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка,
"ПодписанЭП, Зашифрован");
СсылкаПодписан = СтруктураРеквизитов.ПодписанЭП;
СсылкаЗашифрован = СтруктураРеквизитов.Зашифрован;
Если Зашифрован И СсылкаЗашифрован И ПодписанЭП И НЕ СсылкаПодписан Тогда
ВызватьИсключение НСтр("ru = 'Зашифрованную версию файла нельзя подписывать.'");
КонецЕсли;
КонецЕсли;
КонецЕсли;
// Выполним установку индекса пиктограммы при записи объекта. // Выполним установку индекса пиктограммы при записи объекта.
ИндексКартинки = ФайловыеФункцииСлужебныйКлиентСервер.ПолучитьИндексПиктограммыФайла(Расширение); ИндексКартинки = РаботаСФайламиСлужебныйКлиентСервер.ПолучитьИндексПиктограммыФайла(Расширение);
Если СтатусИзвлеченияТекста.Пустая() Тогда Если СтатусИзвлеченияТекста.Пустая() Тогда
СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен; СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен;
@ -72,23 +55,35 @@
"ВЫБРАТЬ "ВЫБРАТЬ
| ВерсииФайлов.Ссылка КАК Ссылка | ВерсииФайлов.Ссылка КАК Ссылка
|ИЗ |ИЗ
| Справочник.ВерсииФайлов КАК ВерсииФайлов | Справочник." + Метаданные.НайтиПоТипу(ТипЗнч(Ссылка)).Имя + " КАК ВерсииФайлов
|ГДЕ |ГДЕ
| ВерсииФайлов.РодительскаяВерсия = &РодительскаяВерсия"; | ВерсииФайлов.РодительскаяВерсия = &РодительскаяВерсия";
Запрос.УстановитьПараметр("РодительскаяВерсия", Ссылка); Запрос.УстановитьПараметр("РодительскаяВерсия", Ссылка);
Результат = Запрос.Выполнить(); Результат = Запрос.Выполнить();
НачатьТранзакцию();
Если Не Результат.Пустой() Тогда Попытка
Выборка = Результат.Выбрать(); Если Не Результат.Пустой() Тогда
Выборка.Следующий(); Выборка = Результат.Выбрать();
Выборка.Следующий();
Объект = Выборка.Ссылка.ПолучитьОбъект();
ЗаблокироватьДанныеДляРедактирования(Объект.Ссылка); БлокировкаДанных = Новый БлокировкаДанных;
Объект.РодительскаяВерсия = РодительскаяВерсия; ЭлементБлокировкиДанных = БлокировкаДанных.Добавить(Метаданные.НайтиПоТипу(ТипЗнч(Выборка.Ссылка)).ПолноеИмя());
Объект.Записать(); ЭлементБлокировкиДанных.УстановитьЗначение("Ссылка", Выборка.Ссылка);
КонецЕсли; БлокировкаДанных.Заблокировать();
Объект = Выборка.Ссылка.ПолучитьОбъект();
ЗаблокироватьДанныеДляРедактирования(Объект.Ссылка);
Объект.РодительскаяВерсия = РодительскаяВерсия;
Объект.Записать();
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -96,59 +91,41 @@
Процедура ПередУдалением(Отказ) Процедура ПередУдалением(Отказ)
Если ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда Если ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда
Если НЕ Том.Пустая() Тогда Если НЕ Том.Пустая() И ОбщегоНазначения.СсылкаСуществует(Том) Тогда
ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(Том) + ПутьКФайлу; ПолныйПуть = РаботаСФайламиСлужебный.ПолныйПутьТома(Том) + ПутьКФайлу;
Попытка Попытка
Файл = Новый Файл(ПолныйПуть); Файл = Новый Файл(ПолныйПуть);
Файл.УстановитьТолькоЧтение(Ложь); Файл.УстановитьТолькоЧтение(Ложь);
УдалитьФайлы(ПолныйПуть); УдалитьФайлы(ПолныйПуть);
ПутьСПодкаталогом = Файл.Путь; ПутьСПодкаталогом = Файл.Путь;
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, "*.*"); МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() = 0 Тогда Если МассивФайловВКаталоге.Количество() = 0 Тогда
УдалитьФайлы(ПутьСПодкаталогом); УдалитьФайлы(ПутьСПодкаталогом);
КонецЕсли; КонецЕсли;
Исключение Исключение
// Обработка исключения не требуется
ЗаписьЖурналаРегистрации(НСтр("ru = 'Файлы.Ошибка удаления файла.'",
ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,
Файл, ОписаниеОшибки());
КонецПопытки; КонецПопытки;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
// Проверку ОбменДанными.Загрузка следует выполнять начиная с этой строки. // Проверку ОбменДанными.Загрузка следует выполнять начиная с этой строки.
// Сначала требуется физически удалить файл, а потом уже сведения о нем в информационной базе.
// Иначе данные о расположении файла будут недоступны.
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
// Возвращает текущее значение пометки удаления в информационной базе.
Функция ПометкаУдаленияВИБ()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВерсииФайлов.ПометкаУдаления
|ИЗ
| Справочник.ВерсииФайлов КАК ВерсииФайлов
|ГДЕ
| ВерсииФайлов.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Выборка.Следующий();
Возврат Выборка.ПометкаУдаления;
КонецЕсли;
Возврат Неопределено;
КонецФункции
#КонецОбласти
#КонецЕсли #КонецЕсли

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Form uuid="98edcd6b-1c50-45c6-9a4c-390827a4ba52"> <Form uuid="aa299fc6-051f-487c-ada4-451e08c4763c">
<Properties> <Properties>
<Name>ВерсииФайла</Name> <Name>ВерсииФайла</Name>
<Synonym> <Synonym>

View File

@ -30,13 +30,6 @@
<CommandName>Form.Command.Сравнить</CommandName> <CommandName>Form.Command.Сравнить</CommandName>
<ExtendedTooltip name="ФормаСравнитьExtendedTooltip" id="78"/> <ExtendedTooltip name="ФормаСравнитьExtendedTooltip" id="78"/>
</Button> </Button>
<Button name="ФормаУстановитьПометкуУдаления" id="42">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ПометитьНаУдаление</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="ФормаУстановитьПометкуУдаленияРасширеннаяПодсказка" id="77"/>
</Button>
<Button name="ФормаСохранитьКак" id="70"> <Button name="ФормаСохранитьКак" id="70">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<CommandName>Form.Command.СохранитьКак</CommandName> <CommandName>Form.Command.СохранитьКак</CommandName>
@ -50,14 +43,19 @@
<v8:content>Форма стандартные команды</v8:content> <v8:content>Форма стандартные команды</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма стандартные команды</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource>
<ExtendedTooltip name="ФормаСтандартныеКомандыExtendedTooltip" id="80"/> <ExtendedTooltip name="ФормаСтандартныеКомандыExtendedTooltip" id="80"/>
<ChildItems>
<Button name="ФормаУстановитьПометкуУдаления" id="108">
<Type>CommandBarButton</Type>
<CommandName>Form.Item.Список.StandardCommand.SetDeletionMark</CommandName>
<ExtendedTooltip name="ФормаУстановитьПометкуУдаленияРасширеннаяПодсказка" id="109"/>
</Button>
<Button name="ФормаИзменитьФорму" id="110">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.CustomizeForm</CommandName>
<ExtendedTooltip name="ФормаИзменитьФормуРасширеннаяПодсказка" id="111"/>
</Button>
</ChildItems>
</ButtonGroup> </ButtonGroup>
<Button name="ФормаСправка" id="73"> <Button name="ФормаСправка" id="73">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
@ -72,33 +70,49 @@
</Events> </Events>
<ChildItems> <ChildItems>
<Table name="Список" id="2"> <Table name="Список" id="2">
<Representation>Tree</Representation> <Representation>List</Representation>
<CommandBarLocation>None</CommandBarLocation> <CommandBarLocation>None</CommandBarLocation>
<SkipOnInput>false</SkipOnInput> <SkipOnInput>false</SkipOnInput>
<DefaultItem>true</DefaultItem> <DefaultItem>true</DefaultItem>
<Width>40</Width> <HeightInTableRows>7</HeightInTableRows>
<HeightInTableRows>10</HeightInTableRows>
<AutoInsertNewRow>true</AutoInsertNewRow> <AutoInsertNewRow>true</AutoInsertNewRow>
<InitialListView>Beginning</InitialListView> <InitialListView>Beginning</InitialListView>
<EnableStartDrag>true</EnableStartDrag> <EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag> <EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.ИндексКартинки</RowPictureDataPath>
<RowsPicture>
<xr:Ref>CommonPicture.КоллекцияПиктограммФайлов</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</RowsPicture>
<BorderColor>style:BorderColor</BorderColor> <BorderColor>style:BorderColor</BorderColor>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>HierarchicalList</ExcludedCommand>
<ExcludedCommand>List</ExcludedCommand>
<ExcludedCommand>MoveDown</ExcludedCommand>
<ExcludedCommand>MoveUp</ExcludedCommand>
<ExcludedCommand>SortListAsc</ExcludedCommand>
<ExcludedCommand>SortListDesc</ExcludedCommand>
<ExcludedCommand>Tree</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation> <SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation> <ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation> <SearchControlLocation>None</SearchControlLocation>
<CurrentRowUse>SelectionPresentationAndChoice</CurrentRowUse>
<AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period>
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</Period>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<RestoreCurrentRow>false</RestoreCurrentRow>
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true</ShowRoot>
<AllowRootChoice>false</AllowRootChoice>
<UpdateOnDataChange>Auto</UpdateOnDataChange>
<ContextMenu name="СписокКонтекстноеМеню" id="13"> <ContextMenu name="СписокКонтекстноеМеню" id="13">
<Autofill>false</Autofill> <Autofill>false</Autofill>
<ChildItems> <ChildItems>
@ -126,17 +140,16 @@
<CommandName>Form.Command.Сравнить</CommandName> <CommandName>Form.Command.Сравнить</CommandName>
<ExtendedTooltip name="КонтекстноеМенюСписокСравнитьExtendedTooltip" id="85"/> <ExtendedTooltip name="КонтекстноеМенюСписокСравнитьExtendedTooltip" id="85"/>
</Button> </Button>
<Button name="КонтекстноеМенюСписокУстановитьПометкуУдаления" id="45">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ПометитьНаУдаление</CommandName>
<ExtendedTooltip name="КонтекстноеМенюСписокУстановитьПометкуУдаленияРасширеннаяПодсказка" id="87"/>
</Button>
<Button name="КонтекстноеМенюСписокСохранитьКак" id="71"> <Button name="КонтекстноеМенюСписокСохранитьКак" id="71">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<CommandName>Form.Command.СохранитьКак</CommandName> <CommandName>Form.Command.СохранитьКак</CommandName>
<ExtendedTooltip name="КонтекстноеМенюСписокСохранитьКакExtendedTooltip" id="86"/> <ExtendedTooltip name="КонтекстноеМенюСписокСохранитьКакExtendedTooltip" id="86"/>
</Button> </Button>
<Button name="СписокКонтекстноеМенюУстановитьПометкуУдаления" id="112">
<Type>CommandBarButton</Type>
<CommandName>Form.Item.Список.StandardCommand.SetDeletionMark</CommandName>
<ExtendedTooltip name="СписокКонтекстноеМенюУстановитьПометкуУдаленияРасширеннаяПодсказка" id="113"/>
</Button>
<Button name="КонтекстноеМенюСписокКопировать" id="46"> <Button name="КонтекстноеМенюСписокКопировать" id="46">
<Type>CommandBarButton</Type> <Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput> <SkipOnInput>false</SkipOnInput>
@ -175,107 +188,107 @@
<Event name="Selection">СписокВыбор</Event> <Event name="Selection">СписокВыбор</Event>
<Event name="BeforeAddRow">СписокПередНачаломДобавления</Event> <Event name="BeforeAddRow">СписокПередНачаломДобавления</Event>
<Event name="BeforeDeleteRow">СписокПередУдалением</Event> <Event name="BeforeDeleteRow">СписокПередУдалением</Event>
<Event name="OnActivateRow">СписокПриАктивизацииСтроки</Event>
<Event name="BeforeRowChange">СписокПередНачаломИзменения</Event> <Event name="BeforeRowChange">СписокПередНачаломИзменения</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<ColumnGroup name="КартинкаИНаименование" id="67"> <ColumnGroup name="ГруппаВертикально" id="114">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Картинка и наименование</v8:content> <v8:content>Вертикально</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Group>InCell</Group> <ExtendedTooltip name="ГруппаВертикальноРасширеннаяПодсказка" id="115"/>
<ExtendedTooltip name="КартинкаИНаименованиеExtendedTooltip" id="90"/>
<ChildItems> <ChildItems>
<PictureField name="СписокИндексКартинкиТекущий" id="68"> <ColumnGroup name="ГруппаОсновное" id="116">
<DataPath>Список.ИндексКартинкиТекущий</DataPath> <Title>
<EditMode>EnterOnInput</EditMode> <v8:item>
<ShowInHeader>false</ShowInHeader> <v8:lang>ru</v8:lang>
<Width>15</Width> <v8:content>Основное</v8:content>
<ValuesPicture> </v8:item>
<xr:Ref>CommonPicture.КоллекцияПиктограммФайлов</xr:Ref> </Title>
<xr:LoadTransparent>false</xr:LoadTransparent> <Group>Horizontal</Group>
</ValuesPicture> <ExtendedTooltip name="ГруппаОсновноеРасширеннаяПодсказка" id="117"/>
<FileDragMode>AsFile</FileDragMode> <ChildItems>
<ContextMenu name="СписокИндексКартинкиТекущийКонтекстноеМеню" id="69"/> <InputField name="СписокАвтор" id="49" DisplayImportance="VeryHigh">
<ExtendedTooltip name="СписокИндексКартинкиТекущийРасширеннаяПодсказка" id="91"/> <DataPath>Список.Автор</DataPath>
</PictureField> <ToolTip>
<InputField name="СписокАвтор" id="49"> <v8:item>
<DataPath>Список.Автор</DataPath> <v8:lang>ru</v8:lang>
<v8:content>Пользователь, который добавил версию файла в список</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокАвторКонтекстноеМеню" id="50"/>
<ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="92"/>
</InputField>
<InputField name="СписокВладелец" id="47" DisplayImportance="Usual">
<DataPath>Список.Владелец</DataPath>
<Visible>false</Visible>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокВладелецКонтекстноеМеню" id="48"/>
<ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="93"/>
</InputField>
<InputField name="СписокНомерВерсии" id="57" DisplayImportance="Usual">
<DataPath>Список.НомерВерсии</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер версии файла</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<Width>12</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="58"/>
<ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="94"/>
</InputField>
<InputField name="СписокДатаСоздания" id="53" DisplayImportance="Usual">
<DataPath>Список.ДатаСоздания</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата добавления версии файла в список</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<Width>15</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="54"/>
<ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="96"/>
</InputField>
<InputField name="СписокРазмер" id="55" DisplayImportance="Usual">
<DataPath>Список.Размер</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Размер версии файла в байтах</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокРазмерКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="97"/>
</InputField>
</ChildItems>
</ColumnGroup>
<InputField name="СписокКомментарий" id="51" DisplayImportance="VeryLow">
<DataPath>Список.Комментарий</DataPath>
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Пользователь, который добавил версию файла в список</v8:content> <v8:content>Комментарий к версии файла</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<EditMode>EnterOnInput</EditMode> <EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокАвторКонтекстноеМеню" id="50"/> <AutoCellHeight>true</AutoCellHeight>
<ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="92"/> <ShowInHeader>false</ShowInHeader>
<TextColor>style:ПоясняющийТекст</TextColor>
<ContextMenu name="СписокКомментарийКонтекстноеМеню" id="52"/>
<ExtendedTooltip name="СписокКомментарийРасширеннаяПодсказка" id="95"/>
</InputField> </InputField>
</ChildItems> </ChildItems>
</ColumnGroup> </ColumnGroup>
<InputField name="СписокВладелец" id="47"> <InputField name="СписокСсылка" id="59" DisplayImportance="VeryLow">
<DataPath>Список.Владелец</DataPath>
<Visible>false</Visible>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокВладелецКонтекстноеМеню" id="48"/>
<ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="93"/>
</InputField>
<InputField name="СписокНомерВерсии" id="57">
<DataPath>Список.НомерВерсии</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер версии файла</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<Width>12</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="58"/>
<ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="94"/>
</InputField>
<InputField name="СписокКомментарий" id="51">
<DataPath>Список.Комментарий</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Комментарий к версии файла</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокКомментарийКонтекстноеМеню" id="52"/>
<ExtendedTooltip name="СписокКомментарийРасширеннаяПодсказка" id="95"/>
</InputField>
<InputField name="СписокДатаСоздания" id="53">
<DataPath>Список.ДатаСоздания</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата добавления версии файла в список</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<Width>15</Width>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="54"/>
<ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="96"/>
</InputField>
<InputField name="СписокРазмер" id="55">
<DataPath>Список.Размер</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Размер версии файла в байтах</v8:content>
</v8:item>
</ToolTip>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="СписокРазмерКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="97"/>
</InputField>
<InputField name="СписокСсылка" id="59">
<DataPath>Список.Ссылка</DataPath> <DataPath>Список.Ссылка</DataPath>
<UserVisible> <UserVisible>
<xr:Common>false</xr:Common> <xr:Common>false</xr:Common>
@ -297,197 +310,91 @@
</v8:item> </v8:item>
</Title> </Title>
<Type> <Type>
<v8:Type>v8:ValueTree</v8:Type> <v8:Type>cfg:DynamicList</v8:Type>
</Type> </Type>
<Columns> <MainAttribute>true</MainAttribute>
<Column name="Владелец" id="1"> <UseAlways>
<Title> <Field>~Список.ИндексКартинкиТекущий</Field>
<v8:item> <Field>Список.Владелец</Field>
<v8:lang>ru</v8:lang> <Field>Список.ДатаСоздания</Field>
<v8:content>Владелец</v8:content> <Field>Список.ИндексКартинки</Field>
</v8:item> <Field>Список.Код</Field>
</Title> <Field>Список.Комментарий</Field>
<Type> <Field>Список.НомерВерсии</Field>
<v8:Type>cfg:CatalogRef.Файлы</v8:Type> <Field>Список.ПолноеНаименование</Field>
</Type> <Field>Список.ПометкаУдаления</Field>
</Column> <Field>Список.Размер</Field>
<Column name="Автор" id="2"> <Field>Список.Расширение</Field>
<Title> <Field>Список.РодительскаяВерсия</Field>
<v8:item> <Field>Список.Ссылка</Field>
<v8:lang>ru</v8:lang> <Field>Список.ЭтоТекущая</Field>
<v8:content>Автор</v8:content> </UseAlways>
</v8:item> <Settings xsi:type="DynamicList">
</Title> <ManualQuery>true</ManualQuery>
<Type> <DynamicDataRead>true</DynamicDataRead>
<v8:Type>cfg:CatalogRef.УчетныеЗаписиСинхронизацииФайлов</v8:Type> <QueryText>ВЫБРАТЬ РАЗРЕШЕННЫЕ
<v8:Type>cfg:CatalogRef.Пользователи</v8:Type> ВерсииФайловПереопределяемый.Код КАК Код,
</Type> ВерсииФайловПереопределяемый.Размер КАК Размер,
</Column> ВерсииФайловПереопределяемый.Комментарий КАК Комментарий,
<Column name="Комментарий" id="3"> ВерсииФайловПереопределяемый.Автор КАК Автор,
<Title> ВерсииФайловПереопределяемый.ДатаСоздания КАК ДатаСоздания,
<v8:item> ВерсииФайловПереопределяемый.ПолноеНаименование КАК ПолноеНаименование,
<v8:lang>ru</v8:lang> ВерсииФайловПереопределяемый.РодительскаяВерсия КАК РодительскаяВерсия,
<v8:content>Комментарий</v8:content> ВЫБОР
</v8:item> КОГДА ВерсииФайловПереопределяемый.ПометкаУдаления
</Title> ТОГДА ВерсииФайловПереопределяемый.ИндексКартинки + 1
<Type> ИНАЧЕ ВерсииФайловПереопределяемый.ИндексКартинки
<v8:Type>xs:string</v8:Type> КОНЕЦ КАК ИндексКартинки,
<v8:StringQualifiers> ВерсииФайловПереопределяемый.ПометкаУдаления КАК ПометкаУдаления,
<v8:Length>0</v8:Length> ВерсииФайловПереопределяемый.Владелец КАК Владелец,
<v8:AllowedLength>Variable</v8:AllowedLength> ВерсииФайловПереопределяемый.Ссылка КАК Ссылка,
</v8:StringQualifiers> ВЫБОР
</Type> КОГДА ВерсииФайловПереопределяемый.Владелец.ТекущаяВерсия = ВерсииФайловПереопределяемый.Ссылка
</Column> ТОГДА ИСТИНА
<Column name="ДатаСоздания" id="4"> ИНАЧЕ ЛОЖЬ
<Title> КОНЕЦ КАК ЭтоТекущая,
<v8:item> ВерсииФайловПереопределяемый.Расширение КАК Расширение,
<v8:lang>ru</v8:lang> ВерсииФайловПереопределяемый.НомерВерсии КАК НомерВерсии
<v8:content>Дата создания</v8:content> ИЗ
</v8:item> Справочник.ВерсииФайлов КАК ВерсииФайловПереопределяемый
</Title> ГДЕ
<Type> ВерсииФайловПереопределяемый.Владелец = &amp;Владелец</QueryText>
<v8:Type>xs:dateTime</v8:Type> <MainTable>Catalog.ВерсииФайлов</MainTable>
<v8:DateQualifiers> <ListSettings>
<v8:DateFractions>DateTime</v8:DateFractions> <dcsset:filter>
</v8:DateQualifiers> <dcsset:viewMode>Normal</dcsset:viewMode>
</Type> <dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
</Column> </dcsset:filter>
<Column name="Размер" id="5"> <dcsset:order>
<Title> <dcsset:item xsi:type="dcsset:OrderItemField">
<v8:item> <dcsset:field>ЭтоТекущая</dcsset:field>
<v8:lang>ru</v8:lang> <dcsset:orderType>Desc</dcsset:orderType>
<v8:content>Размер (байт)</v8:content> </dcsset:item>
</v8:item> <dcsset:item xsi:type="dcsset:OrderItemField">
</Title> <dcsset:field>НомерВерсии</dcsset:field>
<Type> <dcsset:orderType>Desc</dcsset:orderType>
<v8:Type>xs:decimal</v8:Type> </dcsset:item>
<v8:NumberQualifiers> <dcsset:viewMode>Normal</dcsset:viewMode>
<v8:Digits>10</v8:Digits> </dcsset:order>
<v8:FractionDigits>0</v8:FractionDigits> <dcsset:conditionalAppearance>
<v8:AllowedSign>Any</v8:AllowedSign> <dcsset:viewMode>Normal</dcsset:viewMode>
</v8:NumberQualifiers> <dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
</Type> </dcsset:conditionalAppearance>
</Column> <dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
<Column name="НомерВерсии" id="6"> <dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID>
<Title> </ListSettings>
<v8:item> </Settings>
<v8:lang>ru</v8:lang>
<v8:content>Номер версии</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>5</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
<Column name="Ссылка" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылка</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.ВерсииФайлов</v8:Type>
</Type>
</Column>
<Column name="ИндексКартинкиТекущий" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Индекс картинки текущий</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>0</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
<Column name="ЭтоТекущая" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Это текущая</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Column>
<Column name="РодительскаяВерсия" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Родительская версия</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.ВерсииФайлов</v8:Type>
</Type>
</Column>
<Column name="Расширение" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Расширение</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>10</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="ПометкаУдаления" id="12">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пометка удаления</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Column>
<Column name="ИндексКартинки" id="13">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Индекс картинки</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>0</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
</Columns>
</Attribute> </Attribute>
<Attribute name="УникальныйИдентификаторКарточкиФайла" id="3"> <Attribute name="УникальныйИдентификаторКарточкиФайла" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Уникальный идентификатор карточки файла</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>v8:UUID</v8:Type> <v8:Type>v8:UUID</v8:Type>
</Type> </Type>
</Attribute> </Attribute>
<Attribute name="ВладелецВерсии" id="1">
<Type>
<v8:TypeSet>cfg:CatalogRef</v8:TypeSet>
</Type>
</Attribute>
</Attributes> </Attributes>
<Commands> <Commands>
<Command name="СделатьАктивной" id="1"> <Command name="СделатьАктивной" id="1">
@ -523,7 +430,6 @@
<xr:Ref>StdPicture.MarkToDelete</xr:Ref> <xr:Ref>StdPicture.MarkToDelete</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent> <xr:LoadTransparent>true</xr:LoadTransparent>
</Picture> </Picture>
<Action>ПометитьНаУдаление</Action>
<Representation>Picture</Representation> <Representation>Picture</Representation>
<CurrentRowUse>DontUse</CurrentRowUse> <CurrentRowUse>DontUse</CurrentRowUse>
</Command> </Command>
@ -608,10 +514,15 @@
<Parameters> <Parameters>
<Parameter name="Файл"> <Parameter name="Файл">
<Type> <Type>
<v8:Type>cfg:CatalogRef.Файлы</v8:Type> <v8:TypeSet>cfg:AnyRef</v8:TypeSet>
</Type> </Type>
<KeyParameter>true</KeyParameter> <KeyParameter>true</KeyParameter>
</Parameter> </Parameter>
<Parameter name="УникальныйИдентификаторКарточкиФайла">
<Type>
<v8:Type>v8:UUID</v8:Type>
</Type>
</Parameter>
</Parameters> </Parameters>
<CommandInterface> <CommandInterface>
<CommandBar> <CommandBar>

View File

@ -1,26 +1,43 @@
&НаКлиенте ///////////////////////////////////////////////////////////////////////////////////////////////////////
Перем Ссылка1; // Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
&НаКлиенте // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
Перем Ссылка2; // Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. ЗаголовокОшибки = НСтр("ru = 'Ошибка при настройке динамического списка присоединенных файлов.'");
Возврат; ОкончаниеОшибки = НСтр("ru = 'В этом случае настройка динамического списка невозможна.'");
ИмяСправочникаХранилищаВерсийФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияВерсийФайлов(
Параметры.Файл.ВладелецФайла, "", ЗаголовокОшибки, ОкончаниеОшибки);
Если Не ПустаяСтрока(ИмяСправочникаХранилищаВерсийФайлов) Тогда
НастроитьДинамическийСписок(ИмяСправочникаХранилищаВерсийФайлов);
КонецЕсли; КонецЕсли;
ВидимостьКомандыСравнить = ВидимостьКомандыСравнить =
Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент(); Не ОбщегоНазначения.ЭтоLinuxКлиент() И Не ОбщегоНазначения.ЭтоВебКлиент();
Элементы.ФормаСравнить.Видимость = ВидимостьКомандыСравнить; Элементы.ФормаСравнить.Видимость = ВидимостьКомандыСравнить;
Элементы.КонтекстноеМенюСписокСравнить.Видимость = ВидимостьКомандыСравнить; Элементы.КонтекстноеМенюСписокСравнить.Видимость = ВидимостьКомандыСравнить;
УникальныйИдентификаторКарточкиФайла = Параметры.УникальныйИдентификаторКарточкиФайла; УникальныйИдентификаторКарточкиФайла = Параметры.УникальныйИдентификаторКарточкиФайла;
ЗаполнитьСписок(); Список.Параметры.УстановитьЗначениеПараметра("Владелец", Параметры.Файл);
ВладелецВерсии = Параметры.Файл;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ФормаОткрытьВерсию.Картинка = БиблиотекаКартинок.Лупа;
Элементы.ФормаОткрытьВерсию.Отображение = ОтображениеКнопки.Картинка;
Элементы.СписокКомментарий.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -35,51 +52,33 @@
Если ТекущиеДанные = Неопределено Тогда Если ТекущиеДанные = Неопределено Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайла(ТекущиеДанные.Ссылка);
Если Не ЗначениеЗаполнено(ДанныеФайла.Редактирует) Тогда НоваяАктивнаяВерсия = ТекущиеДанные.Ссылка;
СменитьАктивнуюВерсиюФайла(ТекущиеДанные.Ссылка);
ЗаполнитьСписок(); ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайла(ТекущиеДанные.Владелец, ТекущиеДанные.Ссылка);
Оповестить("Запись_Файл", Новый Структура("Событие", "АктивнаяВерсияИзменена"), Параметры.Файл);
Иначе Если ЗначениеЗаполнено(ДанныеФайла.Редактирует) Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Смена активной версии разрешена только для незанятых файлов.'")); ПоказатьПредупреждение(, НСтр("ru = 'Смена активной версии разрешена только для незанятых файлов.'"));
ИначеЕсли ДанныеФайла.ПодписанЭП Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Смена активной версии разрешена только для неподписанных файлов.'"));
Иначе
СменитьАктивнуюВерсиюФайла(НоваяАктивнаяВерсия);
Оповестить("Запись_Файл", Новый Структура("Событие", "АктивнаяВерсияИзменена"), Параметры.Файл);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Функция ОбойтиВсеУзлыДерева(Элементы, ТекущаяВерсия)
Для Каждого Версия Из Элементы Цикл
Если Версия.Ссылка = ТекущаяВерсия Тогда
Идентификатор = Версия.ПолучитьИдентификатор();
Возврат Идентификатор;
КонецЕсли;
КодВозврата = ОбойтиВсеУзлыДерева(Версия.ПолучитьЭлементы(), ТекущаяВерсия);
Если КодВозврата <> -1 Тогда
Возврат КодВозврата;
КонецЕсли;
КонецЦикла;
Возврат -1;
КонецФункции
&НаКлиенте &НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "Запись_Файл" И (Параметр.Событие = "ЗаконченоРедактирование" Или Параметр.Событие = "ВерсияСохранена") Тогда Если ИмяСобытия = "Запись_Файл"
И Параметр.Свойство("Событие")
И ( Параметр.Событие = "ЗаконченоРедактирование"
Или Параметр.Событие = "ВерсияСохранена") Тогда
Если Параметры.Файл = Источник Тогда Если Параметры.Файл = Источник Тогда
ТекущаяВерсия = Элементы.Список.ТекущиеДанные.Ссылка; Элементы.Список.Обновить();
ЗаполнитьСписок();
КодВозврата = ОбойтиВсеУзлыДерева(Список.ПолучитьЭлементы(), ТекущаяВерсия);
Если КодВозврата <> -1 Тогда
Элементы.Список.ТекущаяСтрока = КодВозврата;
КонецЕсли;
КонецЕсли; КонецЕсли;
@ -96,7 +95,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ТекущиеДанные.Ссылка, УникальныйИдентификатор); ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ТекущиеДанные.Владелец, ТекущиеДанные.Ссылка, УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры КонецПроцедуры
@ -110,9 +109,9 @@
Версия = ТекущиеДанные.Ссылка; Версия = ТекущиеДанные.Ссылка;
ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия); ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия);
ОткрытьФорму("Справочник.ВерсииФайлов.ФормаОбъекта", ПараметрыОткрытияФормы); ОткрытьФорму("Обработка.РаботаСФайлами.Форма.ВерсияПрисоединенногоФайла", ПараметрыОткрытияФормы);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -120,14 +119,6 @@
Процедура СписокПередУдалением(Элемент, Отказ) Процедура СписокПередУдалением(Элемент, Отказ)
Отказ = Истина; Отказ = Истина;
ПометитьНаУдалениеСнятьПометку();
КонецПроцедуры
&НаКлиенте
Процедура ПометитьНаУдаление(Команда)
ПометитьНаУдалениеСнятьПометку();
КонецПроцедуры КонецПроцедуры
@ -142,7 +133,7 @@
Версия = ТекущиеДанные.Ссылка; Версия = ТекущиеДанные.Ссылка;
ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия); ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия);
ОткрытьФорму("Справочник.ВерсииФайлов.ФормаОбъекта", ПараметрыОткрытияФормы); ОткрытьФорму("Обработка.РаботаСФайлами.Форма.ВерсияПрисоединенногоФайла", ПараметрыОткрытияФормы);
КонецЕсли; КонецЕсли;
@ -153,86 +144,22 @@
Процедура Сравнить(Команда) Процедура Сравнить(Команда)
ЧислоВыделенныхСтрок = Элементы.Список.ВыделенныеСтроки.Количество(); ЧислоВыделенныхСтрок = Элементы.Список.ВыделенныеСтроки.Количество();
Если ЧислоВыделенныхСтрок <> 2 И ЧислоВыделенныхСтрок <> 1 Тогда
Если ЧислоВыделенныхСтрок = 2 ИЛИ ЧислоВыделенныхСтрок = 1 Тогда ПоказатьПредупреждение(, НСтр("ru='Для просмотра отличий необходимо выбрать две версии файла.'"));
Если ЧислоВыделенныхСтрок = 2 Тогда Возврат;
Ссылка1 = Список.НайтиПоИдентификатору(Элементы.Список.ВыделенныеСтроки[0]).Ссылка;
Ссылка2 = Список.НайтиПоИдентификатору(Элементы.Список.ВыделенныеСтроки[1]).Ссылка;
ИначеЕсли ЧислоВыделенныхСтрок = 1 Тогда
Ссылка1 = Элементы.Список.ТекущиеДанные.Ссылка;
Ссылка2 = Элементы.Список.ТекущиеДанные.РодительскаяВерсия;
КонецЕсли;
СпособСравненияВерсийФайлов = Неопределено;
Расширение = НРег(Элементы.Список.ТекущиеДанные.Расширение);
РасширениеПоддерживается = (
Расширение = "txt"
ИЛИ Расширение = "doc"
ИЛИ Расширение = "docx"
ИЛИ Расширение = "rtf"
ИЛИ Расширение = "htm"
ИЛИ Расширение = "html"
ИЛИ Расширение = "odt");
Если Не РасширениеПоддерживается Тогда
ТекстПредупреждения =
НСтр("ru = 'Сравнение версий поддерживается только для файлов следующих типов:
| Текстовый документ (.txt)
| Документ формата RTF (.rtf)
| Документ Microsoft Word (.doc, .docx)
| Документ HTML (.html .htm)
| Текстовый документ OpenDocument (.odt)'");
ПоказатьПредупреждение(, ТекстПредупреждения);
Возврат;
КонецЕсли;
Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Данная операция не поддерживается в базовой версии.'"));
Возврат;
КонецЕсли;
Если Расширение = "odt" Тогда
СпособСравненияВерсийФайлов = "OpenOfficeOrgWriter";
ИначеЕсли Расширение = "htm" ИЛИ Расширение = "html" Тогда
СпособСравненияВерсийФайлов = "MicrosoftOfficeWord";
КонецЕсли;
ПродолжитьСравнениеВерсий(СпособСравненияВерсийФайлов);
КонецЕсли; КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
ЧислоВыделенныхСтрок = Элементы.Список.ВыделенныеСтроки.Количество();
КомандаСравненияДоступна = Ложь;
Если ЧислоВыделенныхСтрок = 2 Тогда Если ЧислоВыделенныхСтрок = 2 Тогда
КомандаСравненияДоступна = Истина; ПервыйФайл = Элементы.Список.ВыделенныеСтроки[0];
ВторойФайл = Элементы.Список.ВыделенныеСтроки[1];
ИначеЕсли ЧислоВыделенныхСтрок = 1 Тогда ИначеЕсли ЧислоВыделенныхСтрок = 1 Тогда
ПервыйФайл = Элементы.Список.ТекущиеДанные.Ссылка;
Если Не Элементы.Список.ТекущиеДанные.РодительскаяВерсия.Пустая() Тогда ВторойФайл = Элементы.Список.ТекущиеДанные.РодительскаяВерсия;
КомандаСравненияДоступна = Истина;
Иначе
КомандаСравненияДоступна = Ложь;
КонецЕсли;
Иначе
КомандаСравненияДоступна = Ложь;
КонецЕсли;
Если КомандаСравненияДоступна = Истина Тогда
Элементы.ФормаСравнить.Доступность = Истина;
Элементы.КонтекстноеМенюСписокСравнить.Доступность = Истина;
Иначе
Элементы.ФормаСравнить.Доступность = Ложь;
Элементы.КонтекстноеМенюСписокСравнить.Доступность = Ложь;
КонецЕсли; КонецЕсли;
Расширение = НРег(Элементы.Список.ТекущиеДанные.Расширение);
РаботаСФайламиСлужебныйКлиент.СравнитьФайлы(УникальныйИдентификатор, ПервыйФайл, ВторойФайл, Расширение, ВладелецВерсии);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@ -243,7 +170,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ТекущиеДанные.Ссылка, УникальныйИдентификатор); ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ТекущиеДанные.Владелец, ТекущиеДанные.Ссылка ,УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры КонецПроцедуры
@ -256,7 +183,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляСохранения(ТекущиеДанные.Ссылка, УникальныйИдентификатор); ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляСохранения(ТекущиеДанные.Владелец, ТекущиеДанные.Ссылка , УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.СохранитьКак(Неопределено, ДанныеФайла, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.СохранитьКак(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры КонецПроцедуры
@ -273,262 +200,86 @@
&НаСервере &НаСервере
Процедура СменитьАктивнуюВерсиюФайла(Версия) Процедура СменитьАктивнуюВерсиюФайла(Версия)
ФайлОбъект = Версия.Владелец.ПолучитьОбъект(); НачатьТранзакцию();
ЗаблокироватьДанныеДляРедактирования(ФайлОбъект.Ссылка, , УникальныйИдентификаторКарточкиФайла); Попытка
ФайлОбъект.ТекущаяВерсия = Версия; Блокировка = Новый БлокировкаДанных;
ФайлОбъект.ТекстХранилище = Версия.ТекстХранилище;
ФайлОбъект.Записать();
РазблокироватьДанныеДляРедактирования(ФайлОбъект.Ссылка, УникальныйИдентификаторКарточкиФайла);
ВерсияОбъект = Версия.ПолучитьОбъект();
ЗаблокироватьДанныеДляРедактирования(Версия, , УникальныйИдентификаторКарточкиФайла);
ВерсияОбъект.Записать();
РазблокироватьДанныеДляРедактирования(Версия, УникальныйИдентификаторКарточкиФайла);
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСписок()
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ВерсииФайлов.Код КАК Код,
| ВерсииФайлов.Размер КАК Размер,
| ВерсииФайлов.Комментарий КАК Комментарий,
| ВерсииФайлов.Автор КАК Автор,
| ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
| ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование,
| ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия,
| ВерсииФайлов.ИндексКартинки,
| ВЫБОР
| КОГДА ВерсииФайлов.ПометкаУдаления = ИСТИНА
| ТОГДА 1
| ИНАЧЕ ВерсииФайлов.ИндексКартинки
| КОНЕЦ КАК ИндексКартинкиТекущий,
| ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления,
| ВерсииФайлов.Владелец КАК Владелец,
| ВерсииФайлов.Ссылка КАК Ссылка,
| ВЫБОР
| КОГДА ВерсииФайлов.Владелец.ТекущаяВерсия = ВерсииФайлов.Ссылка
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ КАК ЭтоТекущая,
| ВерсииФайлов.Расширение КАК Расширение,
| ВерсииФайлов.НомерВерсии КАК НомерВерсии
|ИЗ
| Справочник.ВерсииФайлов КАК ВерсииФайлов
|ГДЕ
| ВерсииФайлов.Владелец = &Владелец");
Запрос.УстановитьПараметр("Владелец", Параметры.Файл);
Данные = Запрос.Выполнить().Выгрузить();
Дерево = РеквизитФормыВЗначение("Список");
Дерево.Строки.Очистить();
ДобавитьПредыдущуюВерсию(Неопределено, Дерево, Данные);
ЗначениеВРеквизитФормы(Дерево, "Список");
КонецПроцедуры
&НаСервере
Процедура ДобавитьПредыдущуюВерсию(ТекущаяВетвь, Дерево, Данные)
НайденнаяСтрока = Неопределено;
Если ТекущаяВетвь = Неопределено Тогда
Для Каждого Строка Из Данные Цикл
Если Строка.ЭтоТекущая Тогда
НайденнаяСтрока = Строка;
Прервать;
КонецЕсли;
КонецЦикла;
Иначе
Для Каждого Строка Из Данные Цикл
Если Строка.Ссылка = ТекущаяВетвь.РодительскаяВерсия Тогда
НайденнаяСтрока = Строка;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если НайденнаяСтрока <> Неопределено Тогда
Ветвь = Дерево.Строки.Добавить();
ЗаполнитьЗначенияСвойств(Ветвь, НайденнаяСтрока);
Данные.Удалить(НайденнаяСтрока);
ДобавитьПодчиненныеВерсии(Ветвь, Данные); ЭлементБлокировкиДанных = Блокировка.Добавить(Метаданные.НайтиПоТипу(ТипЗнч(Версия.Владелец)).ПолноеИмя());
ДобавитьПредыдущуюВерсию(Ветвь, Дерево, Данные); ЭлементБлокировкиДанных.УстановитьЗначение("Ссылка", Версия.Владелец);
КонецЕсли;
ЭлементБлокировкиДанных = Блокировка.Добавить(Метаданные.НайтиПоТипу(ТипЗнч(Версия)).ПолноеИмя());
ЭлементБлокировкиДанных.УстановитьЗначение("Ссылка", Версия);
Блокировка.Заблокировать();
ЗаблокироватьДанныеДляРедактирования(Версия.Владелец, , УникальныйИдентификаторКарточкиФайла);
ЗаблокироватьДанныеДляРедактирования(Версия, , УникальныйИдентификаторКарточкиФайла);
ФайлОбъект = Версия.Владелец.ПолучитьОбъект();
Если ФайлОбъект.ПодписанЭП Тогда
ВызватьИсключение НСтр("ru = 'У подписанного файла нельзя изменять активную версию.'");
КонецЕсли;
ФайлОбъект.ТекущаяВерсия = Версия;
ФайлОбъект.ТекстХранилище = Версия.ТекстХранилище;
ФайлОбъект.Записать();
ВерсияОбъект = Версия.ПолучитьОбъект();
ВерсияОбъект.Записать();
РазблокироватьДанныеДляРедактирования(ФайлОбъект.Ссылка, УникальныйИдентификаторКарточкиФайла);
РазблокироватьДанныеДляРедактирования(Версия, УникальныйИдентификаторКарточкиФайла);
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Элементы.Список.Обновить();
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура ДобавитьПодчиненныеВерсии(Ветвь, Данные) Процедура НастроитьДинамическийСписок(ИмяСправочникаХранилищаВерсийФайлов)
Для Каждого Строка Из Данные Цикл СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
Если Ветвь.Ссылка = Строка.РодительскаяВерсия Тогда
ЗаполнитьЗначенияСвойств(Ветвь.Строки.Добавить(), Строка);
КонецЕсли;
КонецЦикла;
Для Каждого Веточка Из Ветвь.Строки Цикл ТекстЗапроса =
ДобавитьПодчиненныеВерсии(Веточка, Данные); "ВЫБРАТЬ РАЗРЕШЕННЫЕ
КонецЦикла; | ВерсииФайлов.Код КАК Код,
| ВерсииФайлов.Размер КАК Размер,
| ВерсииФайлов.Комментарий КАК Комментарий,
| ВерсииФайлов.Автор КАК Автор,
| ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
| ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование,
| ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия,
| ВЫБОР
| КОГДА ВерсииФайлов.ПометкаУдаления
| ТОГДА ВерсииФайлов.ИндексКартинки + 1
| ИНАЧЕ ВерсииФайлов.ИндексКартинки
| КОНЕЦ КАК ИндексКартинки,
| ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления,
| ВерсииФайлов.Владелец КАК Владелец,
| ВерсииФайлов.Ссылка КАК Ссылка,
| ВЫБОР
| КОГДА ВерсииФайлов.Владелец.ТекущаяВерсия = ВерсииФайлов.Ссылка
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ КАК ЭтоТекущая,
| ВерсииФайлов.Расширение КАК Расширение,
| ВерсииФайлов.НомерВерсии КАК НомерВерсии
|ИЗ
| Справочник." + ИмяСправочникаХранилищаВерсийФайлов + " КАК ВерсииФайлов
|ГДЕ
| ВерсииФайлов.Владелец = &Владелец";
КонецПроцедуры ПолноеИмяСправочника = "Справочник." + ИмяСправочникаХранилищаВерсийФайлов;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ПолноеИмяСправочника);
&НаСервере
Процедура УстановитьПометкуУдаления(Версия, Пометка)
ВерсияОбъект = Версия.ПолучитьОбъект();
ВерсияОбъект.Заблокировать();
ВерсияОбъект.УстановитьПометкуУдаления(Пометка);
КонецПроцедуры
&НаКлиенте
Процедура ПометитьНаУдалениеСнятьПометку()
ТекущиеДанные = Элементы.Список.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если ТекущиеДанные.ПометкаУдаления Тогда СвойстваСписка.ОсновнаяТаблица = ПолноеИмяСправочника;
ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СвойстваСписка.ДинамическоеСчитываниеДанных = Истина;
НСтр("ru = 'Снять с ""%1"" пометку на удаление?'"), СвойстваСписка.ТекстЗапроса = ТекстЗапроса;
Строка(ТекущиеДанные.Ссылка)); ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);
Иначе
ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Пометить ""%1"" на удаление?'"),
Строка(ТекущиеДанные.Ссылка));
КонецЕсли;
ПараметрыОбработчика = Новый Структура;
ПараметрыОбработчика.Вставить("ТекущиеДанные", ТекущиеДанные);
Обработчик = Новый ОписаниеОповещения("ПометитьНаУдалениеСнятьПометкуЗавершение", ЭтотОбъект, ПараметрыОбработчика);
ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ДаНет, , КодВозвратаДиалога.Да);
КонецПроцедуры
&НаКлиенте
Процедура ПометитьНаУдалениеСнятьПометкуЗавершение(Ответ, ПараметрыВыполнения) Экспорт
Если Ответ <> КодВозвратаДиалога.Да Тогда
Возврат;
КонецЕсли;
ПараметрыВыполнения.ТекущиеДанные.ПометкаУдаления = Не ПараметрыВыполнения.ТекущиеДанные.ПометкаУдаления;
УстановитьПометкуУдаления(ПараметрыВыполнения.ТекущиеДанные.Ссылка, ПараметрыВыполнения.ТекущиеДанные.ПометкаУдаления);
Если ПараметрыВыполнения.ТекущиеДанные.ПометкаУдаления Тогда
ПараметрыВыполнения.ТекущиеДанные.ИндексКартинкиТекущий = 1;
Иначе
ПараметрыВыполнения.ТекущиеДанные.ИндексКартинкиТекущий = ПараметрыВыполнения.ТекущиеДанные.ИндексКартинки;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПродолжитьСравнениеВерсий(СпособСравненияВерсийФайлов)
ПараметрыВыполнения = Новый Структура;
ПараметрыВыполнения.Вставить("СпособСравненияВерсийФайлов", СпособСравненияВерсийФайлов);
ПараметрыВыполнения.Вставить("ТекущийШаг", 1);
ПараметрыВыполнения.Вставить("ДанныеФайла1", Неопределено);
ПараметрыВыполнения.Вставить("ДанныеФайла2", Неопределено);
ПараметрыВыполнения.Вставить("Результат1", Неопределено);
ПараметрыВыполнения.Вставить("Результат2", Неопределено);
ПараметрыВыполнения.Вставить("ПолноеИмяФайла1", Неопределено);
ПараметрыВыполнения.Вставить("ПолноеИмяФайла2", Неопределено);
СравнениеВерсийАвтомат(-1, ПараметрыВыполнения);
КонецПроцедуры
&НаКлиенте
Процедура СравнениеВерсийАвтомат(Результат, ПараметрыВыполнения) Экспорт
Если Результат <> -1 Тогда
Если ПараметрыВыполнения.ТекущийШаг = 1 Тогда
Если Результат <> КодВозвратаДиалога.ОК Тогда
Возврат;
КонецЕсли;
ПерсональныеНастройки = ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами();
ПараметрыВыполнения.СпособСравненияВерсийФайлов = ПерсональныеНастройки.СпособСравненияВерсийФайлов;
Если ПараметрыВыполнения.СпособСравненияВерсийФайлов = Неопределено Тогда
Возврат;
КонецЕсли;
ПараметрыВыполнения.ТекущийШаг = 2;
ИначеЕсли ПараметрыВыполнения.ТекущийШаг = 3 Тогда
ПараметрыВыполнения.Результат1 = Результат.ФайлПолучен;
ПараметрыВыполнения.ПолноеИмяФайла1 = Результат.ПолноеИмяФайла;
ПараметрыВыполнения.ТекущийШаг = 4;
ИначеЕсли ПараметрыВыполнения.ТекущийШаг = 4 Тогда
ПараметрыВыполнения.Результат2 = Результат.ФайлПолучен;
ПараметрыВыполнения.ПолноеИмяФайла2 = Результат.ПолноеИмяФайла;
ПараметрыВыполнения.ТекущийШаг = 5;
КонецЕсли;
КонецЕсли;
Если ПараметрыВыполнения.ТекущийШаг = 1 Тогда
Если ПараметрыВыполнения.СпособСравненияВерсийФайлов = Неопределено Тогда
ПерсональныеНастройки = ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами();
ПараметрыВыполнения.СпособСравненияВерсийФайлов = ПерсональныеНастройки.СпособСравненияВерсийФайлов;
Если ПараметрыВыполнения.СпособСравненияВерсийФайлов = Неопределено Тогда
// Первый вызов - еще не инициализирована настройка.
Обработчик = Новый ОписаниеОповещения("СравнениеВерсийАвтомат", ЭтотОбъект, ПараметрыВыполнения);
ОткрытьФорму("Справочник.ВерсииФайлов.Форма.ВыборСпособаСравненияВерсий", ,
ЭтотОбъект, , , , Обработчик);
Возврат;
КонецЕсли;
КонецЕсли;
ПараметрыВыполнения.ТекущийШаг = 2;
КонецЕсли;
Если ПараметрыВыполнения.ТекущийШаг = 2 Тогда
ПараметрыВыполнения.ДанныеФайла1 = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(
Ссылка1, УникальныйИдентификатор);
ПараметрыВыполнения.ДанныеФайла2 = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(
Ссылка2, УникальныйИдентификатор);
ТекстСостояния = НСтр("ru = 'Выполняется сравнение версий файла ""%1""...'");
ТекстСостояния = СтрЗаменить(ТекстСостояния, "%1", Строка(ПараметрыВыполнения.ДанныеФайла1.Ссылка));
Состояние(ТекстСостояния);
ПараметрыВыполнения.ТекущийШаг = 3;
КонецЕсли;
Если ПараметрыВыполнения.ТекущийШаг = 3 Тогда
Обработчик = Новый ОписаниеОповещения("СравнениеВерсийАвтомат", ЭтотОбъект, ПараметрыВыполнения);
РаботаСФайламиСлужебныйКлиент.ПолучитьФайлВерсииВРабочийКаталог(
Обработчик, ПараметрыВыполнения.ДанныеФайла1, ПараметрыВыполнения.ПолноеИмяФайла1);
Возврат;
КонецЕсли;
Если ПараметрыВыполнения.ТекущийШаг = 4 Тогда
Обработчик = Новый ОписаниеОповещения("СравнениеВерсийАвтомат", ЭтотОбъект, ПараметрыВыполнения);
РаботаСФайламиСлужебныйКлиент.ПолучитьФайлВерсииВРабочийКаталог(
Обработчик, ПараметрыВыполнения.ДанныеФайла2, ПараметрыВыполнения.ПолноеИмяФайла2);
Возврат;
КонецЕсли;
Если ПараметрыВыполнения.ТекущийШаг = 5 Тогда
Если ПараметрыВыполнения.Результат1 И ПараметрыВыполнения.Результат2 Тогда
Если ПараметрыВыполнения.ДанныеФайла1.НомерВерсии < ПараметрыВыполнения.ДанныеФайла2.НомерВерсии Тогда
ПолноеИмяФайлаСлева = ПараметрыВыполнения.ПолноеИмяФайла1;
ПолноеИмяФайлаСправа = ПараметрыВыполнения.ПолноеИмяФайла2;
Иначе
ПолноеИмяФайлаСлева = ПараметрыВыполнения.ПолноеИмяФайла2;
ПолноеИмяФайлаСправа = ПараметрыВыполнения.ПолноеИмяФайла1;
КонецЕсли;
РаботаСФайламиСлужебныйКлиент.СравнитьФайлы(
ПолноеИмяФайлаСлева,
ПолноеИмяФайлаСправа,
ПараметрыВыполнения.СпособСравненияВерсийФайлов);
КонецЕсли;
Состояние();
КонецЕсли;
КонецПроцедуры КонецПроцедуры

View File

@ -0,0 +1,11 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Предназначен для хранения сведений о версиях файлов.</p>
<p>Открывается командой <strong>Версии файла</strong> на панели навигации <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">карточки файла</a>.</p>
<p>В списке с помощью кнопок панели навигации можно:</p>
<ul><li><strong>Просмотреть</strong> - открыть версию файла соответствующим приложением для просмотра (также это можно сделать двойным щелчком мыши);
</li><li><strong>Открыть карточку</strong> - просмотреть данные о версии файла;
</li><li><strong>Сделать активной</strong> - установить выбранную версию файла текущей. Команда доступна только для незанятых файлов;
</li><li><strong>Показать отличия</strong> - сравнить две любые версии файла, предварительно выделив их. Сравнение версий поддерживается для файлов формата HTML, TXT, RTF, DOC, DOCX, ODT.
</li><li>Записать версию файла на компьютер с помощью команды <strong>Сохранить как</strong> меню <strong>Еще</strong>. Укажите путь на компьютере для сохранения версии файла.</li></ul><h3>См. также:</h3>
<ul><li><a href="Catalog.Файлы/Help">Общие сведения о файлах</a>;
</li><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>

View File

@ -1,91 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выберите способ сравнения версий файлов</v8:content>
</v8:item>
</Title>
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
<AutoTitle>false</AutoTitle>
<CommandBarLocation>Bottom</CommandBarLocation>
<CommandSet>
<ExcludedCommand>CustomizeForm</ExcludedCommand>
</CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<HorizontalAlign>Right</HorizontalAlign>
<Autofill>false</Autofill>
<ChildItems>
<Button name="ОК" id="4">
<Type>CommandBarButton</Type>
<Representation>Text</Representation>
<DefaultButton>true</DefaultButton>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ЗаписатьИЗакрыть</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ОК</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ОКExtendedTooltip" id="7"/>
</Button>
<Button name="Отмена" id="5">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.StandardCommand.Cancel</CommandName>
<ExtendedTooltip name="ОтменаExtendedTooltip" id="8"/>
</Button>
<Button name="Справка" id="6">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.StandardCommand.Help</CommandName>
<ExtendedTooltip name="СправкаExtendedTooltip" id="9"/>
</Button>
</ChildItems>
</AutoCommandBar>
<ChildItems>
<InputField name="СпособСравненияВерсийФайлов" id="1">
<DataPath>СпособСравненияВерсийФайлов</DataPath>
<ContextMenu name="СпособСравненияВерсийФайловКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="СпособСравненияВерсийФайловExtendedTooltip" id="10"/>
</InputField>
</ChildItems>
<Attributes>
<Attribute name="СпособСравненияВерсийФайлов" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сравнивать версии файлов при помощи</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:EnumRef.СпособыСравненияВерсийФайлов</v8:Type>
</Type>
<FillCheck>ShowError</FillCheck>
</Attribute>
</Attributes>
<Commands>
<Command name="ЗаписатьИЗакрыть" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Записать и закрыть</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Записать и закрыть</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.EndEdit</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ЗаписатьИЗакрыть</Action>
<Representation>TextPicture</Representation>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
</Form>

View File

@ -1,28 +0,0 @@

#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ЗаписатьИЗакрыть(Команда)
ОчиститьСообщения();
Если НЕ ПроверитьЗаполнение() Тогда
Возврат;
КонецЕсли;
МассивСтруктур = Новый Массив;
Элемент = Новый Структура;
Элемент.Вставить("Объект", "НастройкиСравненияФайлов");
Элемент.Вставить("Настройка", "СпособСравненияВерсийФайлов");
Элемент.Вставить("Значение", СпособСравненияВерсийФайлов);
МассивСтруктур.Добавить(Элемент);
ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранитьМассивИОбновитьПовторноИспользуемыеЗначения(
МассивСтруктур);
РезультатВыбора = КодВозвратаДиалога.ОК;
ОповеститьОВыборе(РезультатВыбора);
КонецПроцедуры
#КонецОбласти

View File

@ -6,10 +6,16 @@
<v8:content>Выбор версии файла</v8:content> <v8:content>Выбор версии файла</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<Width>80</Width>
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode> <WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
<AutoTitle>false</AutoTitle> <AutoTitle>false</AutoTitle>
<CommandBarLocation>Top</CommandBarLocation> <CommandBarLocation>Top</CommandBarLocation>
<MobileDeviceCommandBarContent>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">КоманднаяПанель</xr:Value>
</xr:Item>
</MobileDeviceCommandBarContent>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill> <Autofill>false</Autofill>
</AutoCommandBar> </AutoCommandBar>
@ -24,7 +30,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<VerticalStretch>false</VerticalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="36"/> <ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="36"/>
@ -43,13 +48,19 @@
<CommandBarLocation>None</CommandBarLocation> <CommandBarLocation>None</CommandBarLocation>
<SkipOnInput>false</SkipOnInput> <SkipOnInput>false</SkipOnInput>
<DefaultItem>true</DefaultItem> <DefaultItem>true</DefaultItem>
<Width>40</Width> <HeightInTableRows>7</HeightInTableRows>
<HeightInTableRows>10</HeightInTableRows>
<ChoiceMode>true</ChoiceMode> <ChoiceMode>true</ChoiceMode>
<SelectionMode>SingleRow</SelectionMode> <SelectionMode>SingleRow</SelectionMode>
<UseAlternationRowColor>true</UseAlternationRowColor>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<BorderColor>style:BorderColor</BorderColor> <BorderColor>style:BorderColor</BorderColor>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<SearchStringLocation>None</SearchStringLocation> <SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation> <ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation> <SearchControlLocation>None</SearchControlLocation>
@ -95,41 +106,72 @@
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="50"/> <ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="50"/>
</SearchControlAddition> </SearchControlAddition>
<ChildItems> <ChildItems>
<LabelField name="СписокВладелец" id="39"> <ColumnGroup name="ГруппаВертикально" id="51">
<DataPath>Список.Владелец</DataPath> <Title>
<ContextMenu name="СписокВладелецКонтекстноеМеню" id="40"/> <v8:item>
<ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="41"/> <v8:lang>ru</v8:lang>
</LabelField> <v8:content>Вертикально</v8:content>
<InputField name="СписокНомерВерсии" id="19"> </v8:item>
<DataPath>Список.НомерВерсии</DataPath> </Title>
<FooterHorizontalAlign>Left</FooterHorizontalAlign> <ExtendedTooltip name="ГруппаВертикальноРасширеннаяПодсказка" id="52"/>
<Width>11</Width> <ChildItems>
<Wrap>false</Wrap> <ColumnGroup name="ГруппаОсновное" id="53">
<BorderColor>style:BorderColor</BorderColor> <Title>
<ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="20"/> <v8:item>
<ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="28"/> <v8:lang>ru</v8:lang>
</InputField> <v8:content>Основное</v8:content>
<InputField name="СписокАвтор" id="21"> </v8:item>
<DataPath>Список.Автор</DataPath> </Title>
<Width>15</Width> <Group>Horizontal</Group>
<Wrap>false</Wrap> <ExtendedTooltip name="ГруппаОсновноеРасширеннаяПодсказка" id="54"/>
<ContextMenu name="СписокАвторКонтекстноеМеню" id="22"/> <ChildItems>
<ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="29"/> <LabelField name="СписокВладелец" id="39" DisplayImportance="VeryHigh">
</InputField> <DataPath>Список.Владелец</DataPath>
<InputField name="СписокДатаСоздания" id="23"> <ContextMenu name="СписокВладелецКонтекстноеМеню" id="40"/>
<DataPath>Список.ДатаСоздания</DataPath> <ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="41"/>
<Width>15</Width> </LabelField>
<HorizontalStretch>false</HorizontalStretch> <InputField name="СписокНомерВерсии" id="19" DisplayImportance="VeryHigh">
<Wrap>false</Wrap> <DataPath>Список.НомерВерсии</DataPath>
<ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="24"/> <FooterHorizontalAlign>Left</FooterHorizontalAlign>
<ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="30"/> <Width>11</Width>
</InputField> <Wrap>false</Wrap>
<InputField name="СписокРазмер" id="25"> <BorderColor>style:BorderColor</BorderColor>
<DataPath>Список.Размер</DataPath> <ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="20"/>
<Wrap>false</Wrap> <ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="28"/>
<ContextMenu name="СписокРазмерКонтекстноеМеню" id="26"/> </InputField>
<ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="31"/> <InputField name="СписокАвтор" id="21">
</InputField> <DataPath>Список.Автор</DataPath>
<Width>15</Width>
<Wrap>false</Wrap>
<ContextMenu name="СписокАвторКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="29"/>
</InputField>
<InputField name="СписокДатаСоздания" id="23">
<DataPath>Список.ДатаСоздания</DataPath>
<Width>15</Width>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="24"/>
<ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="30"/>
</InputField>
<InputField name="СписокРазмер" id="25">
<DataPath>Список.Размер</DataPath>
<Wrap>false</Wrap>
<ContextMenu name="СписокРазмерКонтекстноеМеню" id="26"/>
<ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="31"/>
</InputField>
</ChildItems>
</ColumnGroup>
<LabelField name="Комментарий" id="55">
<DataPath>Список.Комментарий</DataPath>
<AutoCellHeight>true</AutoCellHeight>
<ShowInHeader>false</ShowInHeader>
<TextColor>style:ПоясняющийТекст</TextColor>
<ContextMenu name="КомментарийКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="КомментарийРасширеннаяПодсказка" id="57"/>
</LabelField>
</ChildItems>
</ColumnGroup>
<LabelField name="СписокСсылка" id="32"> <LabelField name="СписокСсылка" id="32">
<DataPath>Список.Ссылка</DataPath> <DataPath>Список.Ссылка</DataPath>
<UserVisible> <UserVisible>
@ -158,10 +200,11 @@
ВерсииФайлов.Ссылка КАК Ссылка, ВерсииФайлов.Ссылка КАК Ссылка,
ВерсииФайлов.Владелец КАК Владелец, ВерсииФайлов.Владелец КАК Владелец,
ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления, ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления,
ВерсииФайлов.НомерВерсии, ВерсииФайлов.НомерВерсии КАК НомерВерсии,
ВерсииФайлов.Размер, ВерсииФайлов.Размер КАК Размер,
ВерсииФайлов.Автор, ВерсииФайлов.Автор КАК Автор,
ВерсииФайлов.ДатаСоздания ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
ВерсииФайлов.Комментарий КАК Комментарий
ИЗ ИЗ
Справочник.ВерсииФайлов КАК ВерсииФайлов</QueryText> Справочник.ВерсииФайлов КАК ВерсииФайлов</QueryText>
<MainTable>Catalog.ВерсииФайлов</MainTable> <MainTable>Catalog.ВерсииФайлов</MainTable>

View File

@ -1,32 +1,37 @@
#Область ОбработчикиСобытийФормы ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если Параметры.Отбор.Свойство("Владелец") Тогда Если Параметры.Отбор.Свойство("Владелец") Тогда
Элементы.СписокВладелец.Видимость = Ложь; Элементы.СписокВладелец.Видимость = Ложь;
КонецЕсли; КонецЕсли;
// Оформление помеченных на удаление. // Оформление помеченных на удаление.
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить(); ЭлементУсловногоОформления = Список.УсловноеОформление.Элементы.Добавить();
ЭлементЦветаОформления = ЭлементУсловногоОформления.Оформление.Элементы.Найти("TextColor"); ЭлементЦветаОформления = ЭлементУсловногоОформления.Оформление.Элементы.Найти("TextColor");
ЭлементЦветаОформления.Значение = Метаданные.ЭлементыСтиля.ТекстЗапрещеннойЯчейкиЦвет.Значение; ЭлементЦветаОформления.Значение = Метаданные.ЭлементыСтиля.ТекстЗапрещеннойЯчейкиЦвет.Значение;
ЭлементЦветаОформления.Использование = Истина; ЭлементЦветаОформления.Использование = Истина;
ЭлементОтбораДанных = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораДанных = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбораДанных.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ПометкаУдаления"); ЭлементОтбораДанных.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПометкаУдаления");
ЭлементОтбораДанных.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбораДанных.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбораДанных.ПравоеЗначение = Истина; ЭлементОтбораДанных.ПравоеЗначение = Истина;
ЭлементОтбораДанных.Использование = Истина; ЭлементОтбораДанных.Использование = Истина;
ЭлементОформляемогоПоля = ЭлементУсловногоОформления.Поля.Элементы.Добавить(); Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
ЭлементОформляемогоПоля.Поле = Новый ПолеКомпоновкиДанных("Список"); Элементы.Комментарий.Видимость = Ложь;
ЭлементОформляемогоПоля.Использование = Истина; КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,6 +1,6 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Предназначен для выбора версии файла.</p> <p>Предназначен для выбора версии файла.</p>
<p>Вызывается из <a href="Catalog.ВерсииФайлов.Form.ФормаЭлемента/Help">карточки версии файла</a> при выборе <strong>Родительской версии</strong>.</p> <p>Вызывается из <a href="DataProcessor.РаботаСФайлами.Form.ВерсияПрисоединенногоФайла/Help">карточки версии файла</a> при выборе <strong>Родительской версии</strong>.</p>
<p>В списке выводится:</p> <p>В списке выводится:</p>
<ul><li><strong>Номер версии</strong> - нумерация <a href="Catalog.ВерсииФайлов/Help">версий</a> ведется программой автоматически при изменениях файла, при этом максимальный номер имеет последняя сохраненная версия. <ul><li><strong>Номер версии</strong> - нумерация <a href="Catalog.ВерсииФайлов/Help">версий</a> ведется программой автоматически при изменениях файла, при этом максимальный номер имеет последняя сохраненная версия.
</li><li> </li><li>

View File

@ -1,6 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Width>70</Width> <MobileDeviceCommandBarContent>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="xs:string">КоманднаяПанель</xr:Value>
</xr:Item>
</MobileDeviceCommandBarContent>
<CommandSet> <CommandSet>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Create</ExcludedCommand> <ExcludedCommand>Create</ExcludedCommand>
@ -21,7 +27,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<VerticalStretch>false</VerticalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="52"/> <ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="52"/>
@ -54,12 +59,6 @@
<v8:content>Форма стандартные команды</v8:content> <v8:content>Форма стандартные команды</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма стандартные команды</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource> <CommandSource>Form</CommandSource>
<ExtendedTooltip name="ФормаСтандартныеКомандыExtendedTooltip" id="33"/> <ExtendedTooltip name="ФормаСтандартныеКомандыExtendedTooltip" id="33"/>
</ButtonGroup> </ButtonGroup>
@ -84,6 +83,12 @@
<xr:Ref>CommonPicture.КоллекцияПиктограммФайлов</xr:Ref> <xr:Ref>CommonPicture.КоллекцияПиктограммФайлов</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent> <xr:LoadTransparent>false</xr:LoadTransparent>
</RowsPicture> </RowsPicture>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Create</ExcludedCommand> <ExcludedCommand>Create</ExcludedCommand>
@ -163,70 +168,87 @@
<Event name="Selection">СписокВыбор</Event> <Event name="Selection">СписокВыбор</Event>
<Event name="BeforeAddRow">СписокПередНачаломДобавления</Event> <Event name="BeforeAddRow">СписокПередНачаломДобавления</Event>
<Event name="BeforeDeleteRow">СписокПередУдалением</Event> <Event name="BeforeDeleteRow">СписокПередУдалением</Event>
<Event name="BeforeRowChange">СписокПередНачаломИзменения</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<LabelField name="СписокПолноеНаименование" id="8"> <ColumnGroup name="ГруппаВертикально" id="64">
<DataPath>Список.ПолноеНаименование</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content> <v8:content>Вертикально</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ContextMenu name="СписокПолноеНаименованиеКонтекстноеМеню" id="9"/> <ExtendedTooltip name="ГруппаВертикальноРасширеннаяПодсказка" id="65"/>
<ExtendedTooltip name="СписокПолноеНаименованиеРасширеннаяПодсказка" id="39"/> <ChildItems>
</LabelField> <ColumnGroup name="ГруппаОсновное" id="66" DisplayImportance="VeryHigh">
<LabelField name="СписокРасширение" id="30"> <Title>
<DataPath>Список.Расширение</DataPath> <v8:item>
<UserVisible> <v8:lang>ru</v8:lang>
<xr:Common>false</xr:Common> <v8:content>Основное</v8:content>
</UserVisible> </v8:item>
<ContextMenu name="СписокРасширениеКонтекстноеМеню" id="31"/> </Title>
<ExtendedTooltip name="СписокРасширениеРасширеннаяПодсказка" id="47"/> <Group>Horizontal</Group>
</LabelField> <ExtendedTooltip name="ГруппаОсновноеРасширеннаяПодсказка" id="67"/>
<LabelField name="СписокВладелец" id="16"> <ChildItems>
<DataPath>Список.Owner</DataPath> <LabelField name="СписокПолноеНаименование" id="8" DisplayImportance="VeryHigh">
<UserVisible> <DataPath>Список.ПолноеНаименование</DataPath>
<xr:Common>false</xr:Common> <Title>
</UserVisible> <v8:item>
<ContextMenu name="СписокВладелецКонтекстноеМеню" id="17"/> <v8:lang>ru</v8:lang>
<ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="40"/> <v8:content>Наименование</v8:content>
</LabelField> </v8:item>
<LabelField name="СписокАвтор" id="18"> </Title>
<DataPath>Список.Автор</DataPath> <ContextMenu name="СписокПолноеНаименованиеКонтекстноеМеню" id="9"/>
<ContextMenu name="СписокАвторКонтекстноеМеню" id="19"/> <ExtendedTooltip name="СписокПолноеНаименованиеРасширеннаяПодсказка" id="39"/>
<ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="41"/> </LabelField>
</LabelField> <LabelField name="СписокРасширение" id="30">
<LabelField name="СписокКомментарий" id="20"> <DataPath>Список.Расширение</DataPath>
<DataPath>Список.Комментарий</DataPath> <UserVisible>
<Height>1</Height> <xr:Common>false</xr:Common>
<ContextMenu name="СписокКомментарийКонтекстноеМеню" id="21"/> </UserVisible>
<ExtendedTooltip name="СписокКомментарийРасширеннаяПодсказка" id="42"/> <ContextMenu name="СписокРасширениеКонтекстноеМеню" id="31"/>
</LabelField> <ExtendedTooltip name="СписокРасширениеРасширеннаяПодсказка" id="47"/>
<LabelField name="СписокДатаСоздания" id="22"> </LabelField>
<DataPath>Список.ДатаСоздания</DataPath> <LabelField name="СписокВладелец" id="16">
<ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="23"/> <DataPath>Список.Owner</DataPath>
<ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="43"/> <UserVisible>
</LabelField> <xr:Common>false</xr:Common>
<LabelField name="СписокРазмер" id="24"> </UserVisible>
<DataPath>Список.Размер</DataPath> <ContextMenu name="СписокВладелецКонтекстноеМеню" id="17"/>
<ContextMenu name="СписокРазмерКонтекстноеМеню" id="25"/> <ExtendedTooltip name="СписокВладелецРасширеннаяПодсказка" id="40"/>
<ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="44"/> </LabelField>
</LabelField> <LabelField name="СписокАвтор" id="18">
<LabelField name="СписокНомерВерсии" id="26"> <DataPath>Список.Автор</DataPath>
<DataPath>Список.НомерВерсии</DataPath> <ContextMenu name="СписокАвторКонтекстноеМеню" id="19"/>
<ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="27"/> <ExtendedTooltip name="СписокАвторРасширеннаяПодсказка" id="41"/>
<ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="45"/> </LabelField>
</LabelField> <LabelField name="СписокДатаСоздания" id="22">
<CheckBoxField name="СписокПометкаУдаления" id="28"> <DataPath>Список.ДатаСоздания</DataPath>
<DataPath>Список.DeletionMark</DataPath> <ContextMenu name="СписокДатаСозданияКонтекстноеМеню" id="23"/>
<UserVisible> <ExtendedTooltip name="СписокДатаСозданияРасширеннаяПодсказка" id="43"/>
<xr:Common>false</xr:Common> </LabelField>
</UserVisible> <LabelField name="СписокРазмер" id="24">
<CheckBoxType>Auto</CheckBoxType> <DataPath>Список.Размер</DataPath>
<ContextMenu name="СписокПометкаУдаленияКонтекстноеМеню" id="29"/> <ContextMenu name="СписокРазмерКонтекстноеМеню" id="25"/>
<ExtendedTooltip name="СписокПометкаУдаленияРасширеннаяПодсказка" id="46"/> <ExtendedTooltip name="СписокРазмерРасширеннаяПодсказка" id="44"/>
</CheckBoxField> </LabelField>
<LabelField name="СписокНомерВерсии" id="26">
<DataPath>Список.НомерВерсии</DataPath>
<ContextMenu name="СписокНомерВерсииКонтекстноеМеню" id="27"/>
<ExtendedTooltip name="СписокНомерВерсииРасширеннаяПодсказка" id="45"/>
</LabelField>
</ChildItems>
</ColumnGroup>
<LabelField name="СписокКомментарий" id="20">
<DataPath>Список.Комментарий</DataPath>
<AutoCellHeight>true</AutoCellHeight>
<ShowInHeader>false</ShowInHeader>
<TextColor>style:ПоясняющийТекст</TextColor>
<ContextMenu name="СписокКомментарийКонтекстноеМеню" id="21"/>
<ExtendedTooltip name="СписокКомментарийРасширеннаяПодсказка" id="42"/>
</LabelField>
</ChildItems>
</ColumnGroup>
<LabelField name="СписокСсылка" id="48"> <LabelField name="СписокСсылка" id="48">
<DataPath>Список.Ссылка</DataPath> <DataPath>Список.Ссылка</DataPath>
<UserVisible> <UserVisible>

View File

@ -1,29 +1,32 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
// Оформление помеченных на удаление. // Оформление помеченных на удаление.
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить(); ЭлементУсловногоОформления = Список.УсловноеОформление.Элементы.Добавить();
ЭлементЦветаОформления = ЭлементУсловногоОформления.Оформление.Элементы.Найти("TextColor"); ЭлементЦветаОформления = ЭлементУсловногоОформления.Оформление.Элементы.Найти("TextColor");
ЭлементЦветаОформления.Значение = Метаданные.ЭлементыСтиля.ТекстЗапрещеннойЯчейкиЦвет.Значение; ЭлементЦветаОформления.Значение = Метаданные.ЭлементыСтиля.ТекстЗапрещеннойЯчейкиЦвет.Значение;
ЭлементЦветаОформления.Использование = Истина; ЭлементЦветаОформления.Использование = Истина;
ЭлементОтбораДанных = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбораДанных = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбораДанных.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ПометкаУдаления"); ЭлементОтбораДанных.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПометкаУдаления");
ЭлементОтбораДанных.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбораДанных.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбораДанных.ПравоеЗначение = Истина; ЭлементОтбораДанных.ПравоеЗначение = Истина;
ЭлементОтбораДанных.Использование = Истина; ЭлементОтбораДанных.Использование = Истина;
ЭлементОформляемогоПоля = ЭлементУсловногоОформления.Поля.Элементы.Добавить(); Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
ЭлементОформляемогоПоля.Поле = Новый ПолеКомпоновкиДанных("Список"); Элементы.СписокКомментарий.Видимость = Ложь;
ЭлементОформляемогоПоля.Использование = Истина; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@ -31,6 +34,7 @@
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "Запись_Файл" Если ИмяСобытия = "Запись_Файл"
И Параметр.Свойство("Событие")
И ( Параметр.Событие = "ЗаконченоРедактирование" И ( Параметр.Событие = "ЗаконченоРедактирование"
ИЛИ Параметр.Событие = "ВерсияСохранена") Тогда ИЛИ Параметр.Событие = "ВерсияСохранена") Тогда
@ -47,8 +51,8 @@
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ВыбраннаяСтрока, УникальныйИдентификатор); ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ВладелецФайла(ВыбраннаяСтрока), ВыбраннаяСтрока, УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры КонецПроцедуры
@ -70,4 +74,35 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
Отказ = Истина;
ОткрытьКарточкуФайла();
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ОткрытьКарточкуФайла()
ТекущиеДанные = Элементы.Список.ТекущиеДанные;
Если ТекущиеДанные <> Неопределено Тогда
Версия = ТекущиеДанные.Ссылка;
ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия);
ОткрытьФорму("Обработка.РаботаСФайлами.Форма.ВерсияПрисоединенногоФайла", ПараметрыОткрытияФормы);
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Функция ВладелецФайла(ВыбраннаяСтрока)
Возврат ВыбраннаяСтрока.Владелец;
КонецФункции
#КонецОбласти

View File

@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Form uuid="9a4a0b04-3dfb-4551-90f0-16231f64b14f">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
</Properties>
</Form>
</MetaDataObject>

View File

@ -1,392 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<CommandBarLocation>Top</CommandBarLocation>
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<ChildItems>
<Button name="Открыть" id="26">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.Открыть</CommandName>
<TextColor>style:ButtonTextColor</TextColor>
<BackColor>style:ButtonBackColor</BackColor>
<BorderColor>style:BorderColor</BorderColor>
<ExtendedTooltip name="ОткрытьExtendedTooltip" id="57"/>
</Button>
<Button name="ФормаСохранитьКак" id="50">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.СохранитьКак</CommandName>
<ExtendedTooltip name="ФормаСохранитьКакExtendedTooltip" id="58"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="AfterWrite">ПослеЗаписи</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<InputField name="Владелец" id="6">
<DataPath>Объект.Owner</DataPath>
<ReadOnly>true</ReadOnly>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ВладелецКонтекстноеМеню" id="7"/>
<ExtendedTooltip name="ВладелецExtendedTooltip" id="59"/>
</InputField>
<UsualGroup name="НаименованиеКод" id="31">
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование код</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="НаименованиеКодExtendedTooltip" id="60"/>
<ChildItems>
<InputField name="ПолноеНаименование" id="29">
<DataPath>Объект.ПолноеНаименование</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ПолноеНаименованиеКонтекстноеМеню" id="30"/>
<ExtendedTooltip name="ПолноеНаименованиеExtendedTooltip" id="61"/>
<Events>
<Event name="OnChange">ПолноеНаименованиеПриИзменении</Event>
</Events>
</InputField>
<InputField name="Код" id="2">
<DataPath>Объект.Code</DataPath>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="КодКонтекстноеМеню" id="3"/>
<ExtendedTooltip name="КодExtendedTooltip" id="62"/>
</InputField>
</ChildItems>
</UsualGroup>
<InputField name="РодительскаяВерсия" id="33">
<DataPath>Объект.РодительскаяВерсия</DataPath>
<ReadOnly>true</ReadOnly>
<Wrap>false</Wrap>
<ChoiceParameterLinks>
<xr:Link>
<xr:Name>Отбор.Владелец</xr:Name>
<xr:DataPath xsi:type="xs:string">Объект.Owner</xr:DataPath>
<xr:ValueChange>Clear</xr:ValueChange>
</xr:Link>
</ChoiceParameterLinks>
<ContextMenu name="РодительскаяВерсияКонтекстноеМеню" id="34"/>
<ExtendedTooltip name="РодительскаяВерсияExtendedTooltip" id="63"/>
</InputField>
<UsualGroup name="РасширениеКартинка" id="32">
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Расширение картинка</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="РасширениеКартинкаExtendedTooltip" id="64"/>
<ChildItems>
<InputField name="Размер" id="8">
<DataPath>Объект.Размер</DataPath>
<ReadOnly>true</ReadOnly>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="РазмерКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="РазмерExtendedTooltip" id="65"/>
</InputField>
<InputField name="Расширение" id="10">
<DataPath>Объект.Расширение</DataPath>
<ReadOnly>true</ReadOnly>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<HorizontalStretch>false</HorizontalStretch>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="РасширениеКонтекстноеМеню" id="11"/>
<ExtendedTooltip name="РасширениеExtendedTooltip" id="66"/>
</InputField>
<PictureField name="Картинка" id="20">
<DataPath>Объект.ИндексКартинки</DataPath>
<TitleLocation>None</TitleLocation>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Width>2</Width>
<Height>1</Height>
<HorizontalStretch>false</HorizontalStretch>
<VerticalStretch>false</VerticalStretch>
<ValuesPicture>
<xr:Ref>CommonPicture.КоллекцияПиктограммФайлов</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
<xr:TransparentPixel x="10" y="10"/>
</ValuesPicture>
<Border width="1">
<v8ui:style xsi:type="v8ui:ControlBorderType">WithoutBorder</v8ui:style>
</Border>
<FileDragMode>AsFile</FileDragMode>
<ContextMenu name="КартинкаКонтекстноеМеню" id="21"/>
<ExtendedTooltip name="КартинкаExtendedTooltip" id="67"/>
</PictureField>
</ChildItems>
</UsualGroup>
<InputField name="Комментарий" id="12">
<DataPath>Объект.Комментарий</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Комментарий к версии</v8:content>
</v8:item>
</Title>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Height>2</Height>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="КомментарийКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="КомментарийExtendedTooltip" id="68"/>
</InputField>
<InputField name="Автор" id="14">
<DataPath>Объект.Автор</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автор</v8:content>
</v8:item>
</Title>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="АвторКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="АвторExtendedTooltip" id="69"/>
</InputField>
<UsualGroup name="ДатаИНомер" id="35">
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата и номер</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ДатаИНомерExtendedTooltip" id="70"/>
<ChildItems>
<InputField name="ДатаСоздания" id="16">
<DataPath>Объект.ДатаСоздания</DataPath>
<ReadOnly>true</ReadOnly>
<FooterHorizontalAlign>Left</FooterHorizontalAlign>
<Wrap>false</Wrap>
<BorderColor>style:BorderColor</BorderColor>
<ContextMenu name="ДатаСозданияКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ДатаСозданияExtendedTooltip" id="71"/>
</InputField>
<InputField name="НомерВерсии" id="36">
<DataPath>Объект.НомерВерсии</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="НомерВерсииКонтекстноеМеню" id="37"/>
<ExtendedTooltip name="НомерВерсииExtendedTooltip" id="72"/>
</InputField>
</ChildItems>
</UsualGroup>
<InputField name="ДатаМодификацииФайла" id="48">
<DataPath>Объект.ДатаМодификацииФайла</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата изменения</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дата изменения данных версии файла (местное время)</v8:content>
</v8:item>
</ToolTip>
<ContextMenu name="ДатаМодификацииФайлаКонтекстноеМеню" id="49"/>
<ExtendedTooltip name="ДатаМодификацииФайлаРасширеннаяПодсказка" id="73"/>
</InputField>
<LabelField name="Кодировка" id="55">
<DataPath>Кодировка</DataPath>
<HorizontalStretch>false</HorizontalStretch>
<ContextMenu name="КодировкаКонтекстноеМеню" id="56"/>
<ExtendedTooltip name="КодировкаExtendedTooltip" id="74"/>
</LabelField>
<UsualGroup name="ГруппаХранение" id="38">
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа хранение</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа хранение</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаХранениеExtendedTooltip" id="75"/>
<ChildItems>
<InputField name="ТипХраненияФайла" id="39">
<DataPath>Объект.ТипХраненияФайла</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="ТипХраненияФайлаКонтекстноеМеню" id="40"/>
<ExtendedTooltip name="ТипХраненияФайлаExtendedTooltip" id="76"/>
</InputField>
<UsualGroup name="ГруппаТом" id="47">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа том</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа том</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ChildItemsWidth>LeftNarrowest</ChildItemsWidth>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаТомExtendedTooltip" id="77"/>
<ChildItems>
<InputField name="Том" id="51">
<DataPath>Объект.Том</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="ТомКонтекстноеМеню" id="52"/>
<ExtendedTooltip name="ТомExtendedTooltip" id="78"/>
</InputField>
<InputField name="ТомПолныйПуть" id="53">
<DataPath>ТомПолныйПуть</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="ТомПолныйПутьКонтекстноеМеню" id="54"/>
<ExtendedTooltip name="ТомПолныйПутьExtendedTooltip" id="79"/>
</InputField>
</ChildItems>
</UsualGroup>
<InputField name="ПутьКФайлу" id="43">
<DataPath>Объект.ПутьКФайлу</DataPath>
<ReadOnly>true</ReadOnly>
<ContextMenu name="ПутьКФайлуКонтекстноеМеню" id="44"/>
<ExtendedTooltip name="ПутьКФайлуExtendedTooltip" id="80"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="Объект" id="1">
<Type>
<v8:Type>cfg:CatalogObject.ВерсииФайлов</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
<UseAlways>
<Field>Объект.ТекстХранилище</Field>
<Field>Объект.ФайлХранилище</Field>
</UseAlways>
</Attribute>
<Attribute name="ТомПолныйПуть" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Полный путь тома</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="Кодировка" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Кодировка</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="Открыть" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Просмотреть</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Открыть версию файла для просмотра</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>CommonPicture.ОткрытьВыбранныйФайл</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<Action>ОткрытьВыполнить</Action>
<Representation>Text</Representation>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="СохранитьКак" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сохранить как...</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сохранить версию файла на диск или другое устройство</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>CommonPicture.СохранитьФайлКак</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</Picture>
<Action>СохранитьКак</Action>
<Representation>Text</Representation>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
<CommandInterface>
<NavigationPanel>
<Item>
<Command>2:40e2fb30-bb03-4178-a8eb-ddf48337ef23</Command>
<Type>Auto</Type>
<DefaultVisible>false</DefaultVisible>
<Visible>
<xr:Common>false</xr:Common>
</Visible>
</Item>
</NavigationPanel>
</CommandInterface>
</Form>

View File

@ -1,88 +0,0 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если ТипЗнч(Объект.Владелец) = Тип("СправочникСсылка.Файлы") Тогда
Элементы.ПолноеНаименование.ТолькоПросмотр = Истина;
КонецЕсли;
Если Пользователи.ЭтоПолноправныйПользователь() Тогда
Элементы.Автор.ТолькоПросмотр = Ложь;
Элементы.ДатаСоздания.ТолькоПросмотр = Ложь;
Элементы.РодительскаяВерсия.ТолькоПросмотр = Ложь;
Иначе
Элементы.ГруппаХранение.Видимость = Ложь;
КонецЕсли;
ТомПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(Объект.Том);
ОбщиеНастройки = ФайловыеФункцииСлужебныйКлиентСервер.ОбщиеНастройкиРаботыСФайлами();
РасширениеФайлаВСписке = ФайловыеФункцииСлужебныйКлиентСервер.РасширениеФайлаВСписке(
ОбщиеНастройки.СписокРасширенийТекстовыхФайлов, Объект.Расширение);
Если РасширениеФайлаВСписке Тогда
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
КодировкаЗначение = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКодировкуВерсииФайла(Объект.Ссылка);
СписокКодировок = РаботаСФайламиСлужебный.ПолучитьСписокКодировок();
ЭлементСписка = СписокКодировок.НайтиПоЗначению(КодировкаЗначение);
Если ЭлементСписка = Неопределено Тогда
Кодировка = КодировкаЗначение;
Иначе
Кодировка = ЭлементСписка.Представление;
КонецЕсли;
КонецЕсли;
Если Не ЗначениеЗаполнено(Кодировка) Тогда
Кодировка = НСтр("ru='По умолчанию'");
КонецЕсли;
Иначе
Элементы.Кодировка.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Оповестить("Запись_Файл", Новый Структура("Событие", "ВерсияСохранена"), Объект.Владелец);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ОткрытьВыполнить()
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(Объект.Ссылка, УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.ОткрытьВерсиюФайла(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры
&НаКлиенте
Процедура ПолноеНаименованиеПриИзменении(Элемент)
Объект.Наименование = Объект.ПолноеНаименование;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура СохранитьКак(Команда)
ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляСохранения(Объект.Ссылка, УникальныйИдентификатор);
РаботаСФайламиСлужебныйКлиент.СохранитьКак(Неопределено, ДанныеФайла, УникальныйИдентификатор);
КонецПроцедуры
#КонецОбласти

View File

@ -1,37 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Просмотр сведений о версии файла.</p>
<p>По окончании редактирования файла (по команде <strong>Завершить редактирование</strong> в <a href="Catalog.Файлы.Form.Файлы/Help">списке файлов</a>) программа рекомендует сохранить версию файла и ввести информацию о данной версии. По умолчанию эта возможность включена (рекомендуется использовать сохранение версий, так как в случае серьезных ошибок, которые привели к порче файла, можно вернуться к более ранней, неиспорченной версии). Впоследствии можно отредактировать комментарий и при необходимости изменить автора версии.</p>
<h3>Сведения о версии файла</h3>
<ul><li>
<div><strong>Владелец</strong> - наименование файла-владельца, автоматически заполняется при добавлении версии, не подлежит редактированию;</div>
</li><li>
<div><strong>Наименование</strong> - наименование версии, автоматически заполняется при добавлении версии, не подлежит редактированию;</div>
</li><li>
<div><strong>Родительская версия</strong> - для того чтобы подчинить одну версию другой, выберите из <a href="Catalog.ВерсииФайлов.Form.ФормаВыбора/Help">списка</a> нужную версию. История версий в программе для наглядности представляется в виде дерева;</div>
</li><li>
<div>
<div><strong>Размер (байт)</strong> - размер данных версии файла в байтах.</div></div>
</li><li>
<div>
<div><strong>Расширение</strong> - расширение (формат) версии файла. Рядом располагается картинка, которая также показывает формат версии файла, определяется программой автоматически.</div></div>
</li><li>
<div>
<div>
<div><strong>Комментарий к версии</strong> - введите дополнительные сведения о версии файла (также можно ввести при сохранении версии по окончании редактирования файла).</div></div></div>
</li><li>
<div>
<div><strong>Автор</strong> - пользователь, который добавил версию файла. При необходимости можно выбрать другого автора из списка пользователей.</div></div>
</li><li>
<div>
<div>
<div><strong>Дата создания</strong> - дата и время добавления версии файла в базу.</div></div></div>
</li><li>
<div><strong>Номер версии</strong> - нумерация версий ведется программой автоматически при изменениях файла, при этом максимальный номер имеет последняя сохраненная версия. </div>
</li><li>
<div><strong>Дата изменения</strong> - дата изменения данных версии файла (местное время).</div>
</li><li>
<div><strong>Кодировка</strong> - автоматически выбирается значение <strong>По умолчанию</strong>.</div></li></ul><h3>Просмотр версии файла</h3>
<ul><li>Нажмите <strong>Просмотреть</strong>, для того чтобы открыть выбранную версию файла соответствующим приложением для просмотра или редактирования (также можно открыть версию файла двойным щелчком мыши по нужной строке или с помощью соответствующей команды меню <strong>Еще</strong>). </li></ul><h3>Сохранение версии файла на диск</h3>
<ul><li>Для того чтобы сохранить версию файла на диск или другое устройство,  нажмите <strong>Сохранить как</strong>. Выберите каталог для сохранения файла.</li></ul><h3>См. также:</h3>
<ul><li><a href="Catalog.ВерсииФайлов/Help">Версии файла</a>;
</li><li><a href="Catalog.Файлы/Help">Файлы</a>.</li></ul></body></html>

View File

@ -41,7 +41,7 @@
<Owners/> <Owners/>
<SubordinationUse>ToItems</SubordinationUse> <SubordinationUse>ToItems</SubordinationUse>
<CodeLength>0</CodeLength> <CodeLength>0</CodeLength>
<DescriptionLength>100</DescriptionLength> <DescriptionLength>150</DescriptionLength>
<CodeType>String</CodeType> <CodeType>String</CodeType>
<CodeAllowedLength>Fixed</CodeAllowedLength> <CodeAllowedLength>Fixed</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries> <CodeSeries>WholeCatalog</CodeSeries>
@ -207,7 +207,7 @@
</xr:StandardAttribute> </xr:StandardAttribute>
<xr:StandardAttribute name="Parent"> <xr:StandardAttribute name="Parent">
<xr:LinkByType/> <xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking> <xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine> <xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue> <xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput> <xr:CreateOnInput>Auto</xr:CreateOnInput>
@ -264,7 +264,20 @@
<xr:DataHistory>Use</xr:DataHistory> <xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives> <xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/> <xr:MinValue xsi:nil="true"/>
<xr:Synonym/> <xr:Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
<v8:item>
<v8:lang>en</v8:lang>
<v8:content>Name</v8:content>
</v8:item>
<v8:item>
<v8:lang>de</v8:lang>
<v8:content>Benennung</v8:content>
</v8:item>
</xr:Synonym>
<xr:Comment/> <xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch> <xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/> <xr:ChoiceParameterLinks/>
@ -344,11 +357,11 @@
<ChildObjects> <ChildObjects>
<Attribute uuid="0eea37cc-47f8-4819-85da-d4991f4e58ed"> <Attribute uuid="0eea37cc-47f8-4819-85da-d4991f4e58ed">
<Properties> <Properties>
<Name>АдресТолькоРоссийский</Name> <Name>ТолькоНациональныйАдрес</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Адрес только российский</v8:content> <v8:content>Только национальный адрес</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -361,7 +374,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Допустимы только российские адреса</v8:content> <v8:content>Допустимы только национальные адреса</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -387,6 +400,55 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="0f314b6b-5ed1-46ed-bdfd-cf53330c2783">
<Properties>
<Name>ВидПоляДругое</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вид поля другое</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>20</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Внешний вид поля другое на форме</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>true</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string">МногострочноеШирокое</FillValue>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a"> <Attribute uuid="b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a">
<Properties> <Properties>
<Name>ВключатьСтрануВПредставление</Name> <Name>ВключатьСтрануВПредставление</Name>
@ -612,55 +674,6 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="aa7ceeee-3b3c-49e2-95c2-bfb34e381aa3">
<Properties>
<Name>Подсказка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подсказка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подсказка для вида контактной информации</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="313e0688-745a-4385-b040-7ef8317a0eb7"> <Attribute uuid="313e0688-745a-4385-b040-7ef8317a0eb7">
<Properties> <Properties>
<Name>ПроверятьКорректность</Name> <Name>ПроверятьКорректность</Name>
@ -815,7 +828,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Редактировать контактную информацию только в диалоге (ручной ввод информации не возможен)</v8:content> <v8:content>Редактировать контактную информацию только в диалоге (ручной ввод информации невозможен)</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -847,7 +860,7 @@
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Реквизит доп упорядочивания</v8:content> <v8:content>Порядок</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -1026,13 +1039,13 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="8a13c899-1659-48cf-9aa2-07ca99547b7b"> <Attribute uuid="9395eb9d-6aff-4af5-a6f1-5c39014ba67b">
<Properties> <Properties>
<Name>УказыватьОКТМО</Name> <Name>УдалитьМногострочноеПоле</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Указывать ОКТМО</v8:content> <v8:content>(не используется) Многострочное поле</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -1045,7 +1058,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Возможность ввода ОКТМО в адресе</v8:content> <v8:content>Выводит многострочное поле </v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -1071,13 +1084,13 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="9395eb9d-6aff-4af5-a6f1-5c39014ba67b"> <Attribute uuid="8a13c899-1659-48cf-9aa2-07ca99547b7b">
<Properties> <Properties>
<Name>МногострочноеПоле</Name> <Name>УказыватьОКТМО</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Многострочное поле</v8:content> <v8:content>Указывать ОКТМО</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
@ -1090,7 +1103,7 @@
<ToolTip> <ToolTip>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Выводит многострочное поле </v8:content> <v8:content>Возможность ввода ОКТМО в адресе</v8:content>
</v8:item> </v8:item>
</ToolTip> </ToolTip>
<MarkNegatives>false</MarkNegatives> <MarkNegatives>false</MarkNegatives>
@ -1161,6 +1174,286 @@
<DataHistory>Use</DataHistory> <DataHistory>Use</DataHistory>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="71dfde27-3762-4dd0-9252-6e703ce1b101">
<Properties>
<Name>МеждународныйФорматАдреса</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Международный формат адреса</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Адрес редактируется в международном формате на английском языке.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="d8fc4644-5351-443c-8b5d-5de2c4b855d1">
<Properties>
<Name>ИмяПредопределенногоВида</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя предопределенного вида</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForFolderAndItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="0f039952-09d3-49c8-b909-e8333a3fc8f9">
<Properties>
<Name>ИмяГруппы</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя группы</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:type="xs:string"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<TabularSection uuid="99387869-f8b1-4269-bd26-e39380d17b69">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.ВидыКонтактнойИнформации.Представления" category="TabularSection">
<xr:TypeId>9cb91b1a-ae31-403c-8c5d-e0fd01955e6c</xr:TypeId>
<xr:ValueId>74fba94b-4c84-497d-a403-5c2dd8ebbc57</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.ВидыКонтактнойИнформации.Представления" category="TabularSectionRow">
<xr:TypeId>0ed0fdb2-6d8e-4edc-a853-be09de3beb73</xr:TypeId>
<xr:ValueId>11f094f7-934d-4111-826e-d2ffc13f229a</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>Представления</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Представления</v8:content>
</v8:item>
</Synonym>
<Comment/>
<ToolTip/>
<FillChecking>DontCheck</FillChecking>
<StandardAttributes>
<xr:StandardAttribute name="LineNumber">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Use>ForFolderAndItem</Use>
</Properties>
<ChildObjects>
<Attribute uuid="4b2acdb9-fefd-4735-9dfd-d7d141967f3c">
<Properties>
<Name>КодЯзыка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код языка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>10</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код языка представления реквизита</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>ShowError</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="bc07d643-a044-4882-b95b-2173a197fd0e">
<Properties>
<Name>Наименование</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>150</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Представление реквизита на другом языке</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<Form>ФормаСписка</Form> <Form>ФормаСписка</Form>
<Form>ФормаЭлемента</Form> <Form>ФормаЭлемента</Form>
<Form>ФормаГруппы</Form> <Form>ФормаГруппы</Form>

View File

@ -5,9 +5,9 @@
<p>Поставка программы осуществляется c предопределенными группами и элементами списка. Предопределенные группы списка соответствуют спискам или документам программы - носителям контактной информации. Добавление новых групп в список запрещено. Элементы внутри этих групп определяют состав контактной информации соответствующих объектов программы.</p> <p>Поставка программы осуществляется c предопределенными группами и элементами списка. Предопределенные группы списка соответствуют спискам или документам программы - носителям контактной информации. Добавление новых групп в список запрещено. Элементы внутри этих групп определяют состав контактной информации соответствующих объектов программы.</p>
<p>В списках и табличных частях документов программы предусмотрено несколько предопределенных видов контактной информации, кроме того, имеется возможность добавлять новые виды контактной информации. </p> <p>В списках и табличных частях документов программы предусмотрено несколько предопределенных видов контактной информации, кроме того, имеется возможность добавлять новые виды контактной информации. </p>
<p>Настройку видов контактной информации рекомендуется выполнить на этапе начального заполнения программы. Эта рекомендация не исключает настройку в процессе ведения контактной информации. Настройку обычно выполняет администратор программы.</p> <p>Настройку видов контактной информации рекомендуется выполнить на этапе начального заполнения программы. Эта рекомендация не исключает настройку в процессе ведения контактной информации. Настройку обычно выполняет администратор программы.</p>
<p>Список открывается соответствующей командой панели навигации раздела <strong>Администрирование - Общие настройки</strong>.</p> <p>Список открывается соответствующей командой панели навигации раздела <strong>Администрирование - Общие настройки - Контактная информация</strong>.</p>
<h3>Добавление нового поля контактной информации в список или документ</h3> <h3>Добавление нового поля контактной информации в список или документ</h3>
<ul><li> <ul><li>
<div>Выбрав соответствующую группу в списке, нажмите  <strong>Создать</strong>. Заполните необходимые <a href="Catalog.ВидыКонтактнойИнформации.Form.ФормаЭлемента/Help">поля</a>.</div></li></ul><h3>Предопределенные виды контактной информации</h3> <div>Выбрав соответствующую группу в списке, нажмите<strong>Создать</strong>. Заполните необходимые <a href="Catalog.ВидыКонтактнойИнформации.Form.ФормаЭлемента/Help">поля</a>.</div></li></ul><h3>Предопределенные виды контактной информации</h3>
<ul><li>У предопределенных элементов списка в отличие от произвольных полей контактной информации можно изменить только настройки, остальные реквизиты заполнены по умолчанию и защищены от редактирования.</li></ul><h3>См. также: </h3> <ul><li>У предопределенных элементов списка в отличие от произвольных полей контактной информации можно изменить только настройки, остальные реквизиты заполнены по умолчанию и защищены от редактирования.</li></ul><h3>См. также: </h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>

View File

@ -1,27 +1,18 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
// Возвращает описание блокируемых реквизитов. #Область ДляВызоваИзДругихПодсистем
//
// Возвращаемое значение:
// Массив - содержит строки в формате ИмяРеквизита[;ИмяЭлементаФормы,...]
// где ИмяРеквизита - имя реквизита объекта, ИмяЭлементаФормы - имя элемента формы,
// связанного с реквизитом.
//
Функция ПолучитьБлокируемыеРеквизитыОбъекта() Экспорт
БлокируемыеРеквизиты = Новый Массив;
БлокируемыеРеквизиты.Добавить("Тип;Тип");
БлокируемыеРеквизиты.Добавить("Родитель");
Возврат БлокируемыеРеквизиты;
КонецФункции
//////////////////////////////////////////////////////////////////////////////// // СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Групповое изменение объектов.
// Возвращает реквизиты объекта, которые не рекомендуется редактировать // Возвращает реквизиты объекта, которые не рекомендуется редактировать
// с помощью обработки группового изменения реквизитов. // с помощью обработки группового изменения реквизитов.
@ -36,6 +27,160 @@
КонецФункции КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
// См. ЗапретРедактированияРеквизитовОбъектовПереопределяемый.ПриОпределенииОбъектовСЗаблокированнымиРеквизитами.
Функция ПолучитьБлокируемыеРеквизитыОбъекта() Экспорт
БлокируемыеРеквизиты = Новый Массив;
БлокируемыеРеквизиты.Добавить("Тип;Тип");
БлокируемыеРеквизиты.Добавить("Родитель");
Возврат БлокируемыеРеквизиты;
КонецФункции
// Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
#КонецОбласти
#КонецОбласти
#КонецЕсли
#Область ОбработчикиСобытий
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
ЛокализацияКлиентСервер.ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область СлужебныеПроцедурыИФункции
// Регистрирует к обработке виды контактной информации другое у которых необходимо заполнить поле ВидПоляДругое
// и исправить Наименования на разных языках.
//
Процедура ЗаполнитьВидыКонтактнойИнформацииКОбработке(Параметры) Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ВидыКонтактнойИнформации.Ссылка,
| ВидыКонтактнойИнформации.УдалитьМногострочноеПоле
|ИЗ
| Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации";
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры,
РезультатЗапроса.ВыгрузитьКолонку("Ссылка"));
КонецПроцедуры
Процедура ОбработатьВидыКонтактнойИнформации(Параметры) Экспорт
ВидКонтактнойИнформацииСсылка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.ВидыКонтактнойИнформации");
ПроблемныхОбъектов = 0;
ОбъектовОбработано = 0;
ЯзыковБольшеОдного = Метаданные.Языки.Количество() > 1;
Наименования = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.НаименованияВидовКонтактнойИнформации();
Пока ВидКонтактнойИнформацииСсылка.Следующий() Цикл
Попытка
ВидКонтактнойИнформации = ВидКонтактнойИнформацииСсылка.Ссылка.ПолучитьОбъект();
// Исправление наименований на разных языках
Если ЯзыковБольшеОдного Тогда
ИмяВида = ?(ЗначениеЗаполнено(ВидКонтактнойИнформации.ИмяПредопределенногоВида),
ВидКонтактнойИнформации.ИмяПредопределенногоВида, ВидКонтактнойИнформации.ИмяПредопределенныхДанных);
Если ЗначениеЗаполнено(ИмяВида) Тогда
УстановитьНаименованияВидовКонтактнойИнформации(ВидКонтактнойИнформации, ИмяВида, Наименования);
КонецЕсли;
КонецЕсли;
// Обработчик изменения вида контактной информации Другое.
Если ВидКонтактнойИнформации.Тип = Перечисления.ТипыКонтактнойИнформации.Другое
И ПустаяСтрока(ВидКонтактнойИнформации.ВидПоляДругое) Тогда
Если ВидКонтактнойИнформации.УдалитьМногострочноеПоле Тогда
ВидКонтактнойИнформации.ВидПоляДругое = "МногострочноеШирокое";
Иначе
ВидКонтактнойИнформации.ВидПоляДругое = "ОднострочноеШирокое";
КонецЕсли;
КонецЕсли;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформации);
ОбъектовОбработано = ОбъектовОбработано + 1;
Исключение
// Если не удалось обработать какой-либо вид контактной информации, повторяем попытку снова.
ПроблемныхОбъектов = ПроблемныхОбъектов + 1;
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось обработать вид контактной информации: %1 по причине: %2'"),
ВидКонтактнойИнформацииСсылка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение,
Метаданные.Справочники.ВидыКонтактнойИнформации, ВидКонтактнойИнформацииСсылка.Ссылка, ТекстСообщения);
КонецПопытки;
КонецЦикла;
Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.ВидыКонтактнойИнформации");
Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Процедуре ЗаполнитьВидыКонтактнойИнформации не удалось обработать некоторые виды контактной информации (пропущены): %1'"),
ПроблемныхОбъектов);
ВызватьИсключение ТекстСообщения;
Иначе
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,
Метаданные.Справочники.ВидыКонтактнойИнформации,,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ЗаполнитьВидыКонтактнойИнформации обработала очередную порцию видов контактной информации: %1'"),
ОбъектовОбработано));
КонецЕсли;
КонецПроцедуры
Процедура УстановитьНаименованияВидовКонтактнойИнформации(ВидКонтактнойИнформации, ИмяВида, Наименования)
Для Каждого Язык Из Метаданные.Языки Цикл
Представление = Наименования[Язык.КодЯзыка][ИмяВида];
Если ЗначениеЗаполнено(Представление) Тогда
Если Язык = Метаданные.ОсновнойЯзык Тогда
ВидКонтактнойИнформации.Наименование = Представление;
Иначе
Если Наименования[Язык.КодЯзыка][ИмяВида] <> Неопределено Тогда
Отбор = Новый Структура;
Отбор.Вставить("КодЯзыка", Язык.КодЯзыка);
Отбор.Вставить("Наименование", Представление);
НайденныеСтроки = ВидКонтактнойИнформации.Представления.НайтиСтроки(Отбор);
Если НайденныеСтроки.Количество() > 0 Тогда
НоваяСтрока = НайденныеСтроки[0];
Иначе
НоваяСтрока = ВидКонтактнойИнформации.Представления.Добавить();
КонецЕсли;
НоваяСтрока.КодЯзыка = Язык.КодЯзыка;
НоваяСтрока.Наименование = Представление;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецЕсли #КонецЕсли

View File

@ -1,22 +1,68 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ) Процедура ПередЗаписью(Отказ)
Если ЭтотОбъект.ОбменДанными.Загрузка Тогда
Если ОбменДанными.Загрузка Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если НЕ ЭтотОбъект.ЭтоГруппа Тогда Если НЕ ЭтоГруппа Тогда
Результат = УправлениеКонтактнойИнформациейСлужебный.ПроверитьПараметрыВидаКонтактнойИнформации(ЭтотОбъект); Результат = УправлениеКонтактнойИнформациейСлужебный.ПроверитьПараметрыВидаКонтактнойИнформации(ЭтотОбъект);
Если Результат.ЕстьОшибки Тогда Если Результат.ЕстьОшибки Тогда
Отказ = Истина; Отказ = Истина;
ВызватьИсключение Результат.ТекстОшибки; ВызватьИсключение Результат.ТекстОшибки;
КонецЕсли; КонецЕсли;
ИмяГруппы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Родитель, "ИмяПредопределенногоВида");
Если ПустаяСтрока(ИмяГруппы) Тогда
ИмяГруппы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Родитель, "ИмяПредопределенныхДанных");
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецПроцедуры
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Если СтрНачинаетсяС(ИмяПредопределенныхДанных, "Удалить") Тогда
ПроверяемыеРеквизиты.Очистить();
Возврат;
КонецЕсли;
Если ЭтоГруппа Тогда
НепроверяемыеРеквизиты = Новый Массив;
НепроверяемыеРеквизиты.Добавить("Родитель");
ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива(ПроверяемыеРеквизиты, НепроверяемыеРеквизиты);
КонецЕсли;
КонецПроцедуры
Процедура ПриКопировании(ОбъектКопирования)
ИмяПредопределенногоВида = "";
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура ПриЧтенииПредставленийНаСервере() Экспорт
ЛокализацияСервер.ПриЧтенииПредставленийНаСервере(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли #КонецЕсли

View File

@ -20,56 +20,6 @@
</Item> </Item>
</ChildItems> </ChildItems>
</Item> </Item>
<Item id="c34c4e9d-c7c5-42bb-8def-93ecfe7b1977">
<Name>СправочникОрганизации</Name>
<Code/>
<Description>Контактная информация справочника "Организации"</Description>
<IsFolder>true</IsFolder>
<ChildItems>
<Item id="405f9f12-d546-435c-8768-4775d31cf689">
<Name>ДругаяИнформацияОрганизации</Name>
<Code/>
<Description>Другое</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1e232d30-a13f-442d-ab7b-65c711d3ad75">
<Name>ПочтовыйАдресОрганизации</Name>
<Code/>
<Description>Почтовый адрес</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b4ceb8fc-3a0c-42c1-bd37-2d52de36fb52">
<Name>ТелефонОрганизации</Name>
<Code/>
<Description>Телефон</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a709fef2-4895-4ad2-9cf1-27b46f031549">
<Name>ФаксОрганизации</Name>
<Code/>
<Description>Факс</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="afa527f2-8b59-4c20-95ae-d0d5a08111ee">
<Name>ФактАдресОрганизации</Name>
<Code/>
<Description>Фактический адрес</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="89b1f358-52f0-402c-9540-d97e38aefeee">
<Name>EmailОрганизации</Name>
<Code/>
<Description>Электронная почта</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="6b0a2669-1bb5-4c9a-9466-54433ac0a955">
<Name>ЮрАдресОрганизации</Name>
<Code/>
<Description>Юридический адрес</Description>
<IsFolder>false</IsFolder>
</Item>
</ChildItems>
</Item>
<Item id="8cbaa30d-faab-45ad-880e-84f8b421f448"> <Item id="8cbaa30d-faab-45ad-880e-84f8b421f448">
<Name>СправочникПользователи</Name> <Name>СправочникПользователи</Name>
<Code/> <Code/>

View File

@ -20,12 +20,6 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -38,12 +32,6 @@
<v8:content>Командная панель</v8:content> <v8:content>Командная панель</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource> <CommandSource>Form</CommandSource>
<ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="14"/> <ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="14"/>
</CommandBar> </CommandBar>
@ -62,15 +50,18 @@
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath> <RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>Copy</ExcludedCommand> <ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Create</ExcludedCommand> <ExcludedCommand>Create</ExcludedCommand>
<ExcludedCommand>CreateFolder</ExcludedCommand> <ExcludedCommand>CreateFolder</ExcludedCommand>
<ExcludedCommand>MoveItem</ExcludedCommand> <ExcludedCommand>MoveItem</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>

View File

@ -1,13 +1,16 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список, "ЭтоГруппа", Истина); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список, "ЭтоГруппа", Истина);
КонецПроцедуры КонецПроцедуры

View File

@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<CommandBarLocation>Top</CommandBarLocation>
<CommandSet> <CommandSet>
<ExcludedCommand>CreateFolder</ExcludedCommand> <ExcludedCommand>CreateFolder</ExcludedCommand>
</CommandSet> </CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Autofill>false</Autofill>
</AutoCommandBar>
<Events> <Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events> </Events>
@ -18,51 +15,11 @@
<v8:content>Группа пользовательских настроек</v8:content> <v8:content>Группа пользовательских настроек</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа пользовательских настроек</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="43"/> <ExtendedTooltip name="ГруппаПользовательскихНастроекРасширеннаяПодсказка" id="43"/>
</UsualGroup> </UsualGroup>
<CommandBar name="КоманднаяПанель" id="44">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Командная панель</v8:content>
</v8:item>
</ToolTip>
<CommandSource>Form</CommandSource>
<ExtendedTooltip name="КоманднаяПанельРасширеннаяПодсказка" id="45"/>
<ChildItems>
<Button name="ПереместитьВверх" id="17">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ПереместитьЭлементВверх</CommandName>
<TextColor>style:ButtonTextColor</TextColor>
<BackColor>style:ButtonBackColor</BackColor>
<ExtendedTooltip name="ПереместитьВверхExtendedTooltip" id="32"/>
</Button>
<Button name="ПереместитьВниз" id="18">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ПереместитьЭлементВниз</CommandName>
<TextColor>style:ButtonTextColor</TextColor>
<BackColor>style:ButtonBackColor</BackColor>
<ExtendedTooltip name="ПереместитьВнизExtendedTooltip" id="33"/>
</Button>
</ChildItems>
</CommandBar>
<Table name="Список" id="1"> <Table name="Список" id="1">
<Representation>Tree</Representation> <Representation>Tree</Representation>
<CommandBarLocation>None</CommandBarLocation> <CommandBarLocation>None</CommandBarLocation>
@ -74,14 +31,22 @@
<InitialTreeView>ExpandAllLevels</InitialTreeView> <InitialTreeView>ExpandAllLevels</InitialTreeView>
<FileDragMode>AsFile</FileDragMode> <FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath> <DataPath>Список</DataPath>
<RowPictureDataPath>Список.ИндексПиктограммы</RowPictureDataPath>
<RowsPicture>
<xr:Ref>CommonPicture.ВидыКонтактнойИнформации</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</RowsPicture>
<BorderColor>style:BorderColor</BorderColor> <BorderColor>style:BorderColor</BorderColor>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список</v8:content>
</v8:item>
</Title>
<CommandSet> <CommandSet>
<ExcludedCommand>CreateFolder</ExcludedCommand> <ExcludedCommand>CreateFolder</ExcludedCommand>
<ExcludedCommand>MoveItem</ExcludedCommand> <ExcludedCommand>MoveItem</ExcludedCommand>
</CommandSet> </CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<AutoRefresh>false</AutoRefresh> <AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod> <AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period> <Period>
@ -127,53 +92,18 @@
<Event name="BeforeAddRow">СписокПередНачаломДобавления</Event> <Event name="BeforeAddRow">СписокПередНачаломДобавления</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<ColumnGroup name="Представление" id="40"> <LabelField name="Наименование" id="37" DisplayImportance="VeryHigh">
<DataPath>Список.Наименование</DataPath>
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Представление</v8:content> <v8:content>Вид контактной информации</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <HorizontalStretch>false</HorizontalStretch>
<v8:item> <ContextMenu name="НаименованиеКонтекстноеМеню" id="38"/>
<v8:lang>ru</v8:lang> <ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="39"/>
<v8:content>Представление</v8:content> </LabelField>
</v8:item>
</ToolTip>
<Group>InCell</Group>
<ExtendedTooltip name="ПредставлениеРасширеннаяПодсказка" id="41"/>
<ChildItems>
<PictureField name="Пиктограмма" id="28">
<DataPath>Список.ИндексПиктограммы</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Пиктограмма</v8:content>
</v8:item>
</Title>
<TitleLocation>None</TitleLocation>
<Width>2</Width>
<ValuesPicture>
<xr:Ref>CommonPicture.ВидыКонтактнойИнформации</xr:Ref>
<xr:LoadTransparent>false</xr:LoadTransparent>
</ValuesPicture>
<FileDragMode>AsFile</FileDragMode>
<ContextMenu name="ПиктограммаКонтекстноеМеню" id="29"/>
<ExtendedTooltip name="ПиктограммаРасширеннаяПодсказка" id="35"/>
</PictureField>
<LabelField name="Наименование" id="37">
<DataPath>Список.Description</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вид контактной информации</v8:content>
</v8:item>
</Title>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="38"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="39"/>
</LabelField>
</ChildItems>
</ColumnGroup>
<InputField name="Ссылка" id="30"> <InputField name="Ссылка" id="30">
<DataPath>Список.Ref</DataPath> <DataPath>Список.Ref</DataPath>
<UserVisible> <UserVisible>
@ -253,15 +183,22 @@
СправочникВидыКонтактнойИнформации.Предопределенный, СправочникВидыКонтактнойИнформации.Предопределенный,
СправочникВидыКонтактнойИнформации.Родитель, СправочникВидыКонтактнойИнформации.Родитель,
СправочникВидыКонтактнойИнформации.ЭтоГруппа, СправочникВидыКонтактнойИнформации.ЭтоГруппа,
СправочникВидыКонтактнойИнформации.Наименование, ВЫБОР
КОГДА &amp;ЭтоОсновнойЯзык
ТОГДА СправочникВидыКонтактнойИнформации.Наименование
ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(ВидыКонтактнойИнформацииПредставления.Наименование, СправочникВидыКонтактнойИнформации.Наименование) КАК СТРОКА(150))
КОНЕЦ КАК Наименование,
СправочникВидыКонтактнойИнформации.Тип, СправочникВидыКонтактнойИнформации.Тип,
СправочникВидыКонтактнойИнформации.РеквизитДопУпорядочивания, СправочникВидыКонтактнойИнформации.РеквизитДопУпорядочивания,
СправочникВидыКонтактнойИнформации.РедактированиеТолькоВДиалоге, СправочникВидыКонтактнойИнформации.РедактированиеТолькоВДиалоге,
СправочникВидыКонтактнойИнформации.МожноИзменятьСпособРедактирования, СправочникВидыКонтактнойИнформации.МожноИзменятьСпособРедактирования,
СправочникВидыКонтактнойИнформации.АдресТолькоРоссийский, СправочникВидыКонтактнойИнформации.ТолькоНациональныйАдрес,
СправочникВидыКонтактнойИнформации.Используется СправочникВидыКонтактнойИнформации.Используется
ИЗ ИЗ
Справочник.ВидыКонтактнойИнформации КАК СправочникВидыКонтактнойИнформации Справочник.ВидыКонтактнойИнформации КАК СправочникВидыКонтактнойИнформации
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыКонтактнойИнформации.Представления КАК ВидыКонтактнойИнформацииПредставления
ПО (ВидыКонтактнойИнформацииПредставления.Ссылка = СправочникВидыКонтактнойИнформации.Ссылка)
И ВидыКонтактнойИнформацииПредставления.КодЯзыка = &amp;КодЯзыка
ГДЕ ГДЕ
СправочникВидыКонтактнойИнформации.Используется И ЕстьNULL(СправочникВидыКонтактнойИнформации.Родитель.Используется, Истина) СправочникВидыКонтактнойИнформации.Используется И ЕстьNULL(СправочникВидыКонтактнойИнформации.Родитель.Используется, Истина)
</QueryText> </QueryText>
@ -289,46 +226,4 @@
</Settings> </Settings>
</Attribute> </Attribute>
</Attributes> </Attributes>
<Commands>
<Command name="ПереместитьЭлементВверх" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Переместить элемент вверх</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Переместить элемент вверх</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.MoveUp</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ПереместитьЭлементВверх</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ПереместитьЭлементВниз" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Переместить элемент вниз</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Переместить элемент вниз</v8:content>
</v8:item>
</ToolTip>
<Picture>
<xr:Ref>StdPicture.MoveDown</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ПереместитьЭлементВниз</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
</Form> </Form>

View File

@ -1,4 +1,11 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
@ -6,6 +13,13 @@
УстановитьУсловноеОформление(); УстановитьУсловноеОформление();
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
Список.Параметры.УстановитьЗначениеПараметра("ЭтоОсновнойЯзык", ТекущийЯзык() = Метаданные.ОсновнойЯзык);
Список.Параметры.УстановитьЗначениеПараметра("КодЯзыка", ТекущийЯзык().КодЯзыка);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -28,43 +42,27 @@
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте &НаКлиенте
Процедура ПереместитьЭлементВверх() Процедура Подключаемый_ВыполнитьКоманду(Команда)
ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Элементы.Список);
Если Не ВозможноПеремещениеЭлемента(Элементы.Список.ТекущиеДанные.Ссылка, "Вверх") Тогда КонецПроцедуры
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Перемещение данного вида контактной информации не предусмотрено'"));
Возврат; &НаСервере
КонецЕсли; Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат)
ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Элементы.Список, Результат);
НастройкаПорядкаЭлементовКлиент.ПереместитьЭлементВверхВыполнить(Список, Элементы.Список);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПереместитьЭлементВниз() Процедура Подключаемый_ОбновитьКоманды()
ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Элементы.Список);
Если Не ВозможноПеремещениеЭлемента(Элементы.Список.ТекущиеДанные.Ссылка, "Вниз") Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Перемещение данного вида контактной информации не предусмотрено'"));
Возврат;
КонецЕсли;
НастройкаПорядкаЭлементовКлиент.ПереместитьЭлементВнизВыполнить(Список, Элементы.Список);
КонецПроцедуры КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
&НаСервере
Функция ВозможноПеремещениеЭлемента(ТекущийЭлемент, Направление)
СоседнийЭлемент = НастройкаПорядкаЭлементовСлужебный.СоседнийЭлемент(ТекущийЭлемент, Список, Направление);
Возврат СоседнийЭлемент = Неопределено Или Не (ТекущийЭлемент.ЗапретитьРедактированиеПользователем Или СоседнийЭлемент.ЗапретитьРедактированиеПользователем);
КонецФункции
&НаСервере &НаСервере
Процедура УстановитьУсловноеОформление() Процедура УстановитьУсловноеОформление()

View File

@ -5,58 +5,82 @@
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Events> <Events>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event> <Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event> <Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event> <Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event> <Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
<Event name="FillCheckProcessingAtServer">ОбработкаПроверкиЗаполненияНаСервере</Event> <Event name="FillCheckProcessingAtServer">ОбработкаПроверкиЗаполненияНаСервере</Event>
</Events> </Events>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаТипНаименование" id="72"> <UsualGroup name="ГруппаОсновнаяИнформация" id="148">
<Group>Horizontal</Group> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основная информация</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаТипНаименованиеExtendedTooltip" id="85"/> <ExtendedTooltip name="ГруппаОсновнаяИнформацияРасширеннаяПодсказка" id="149"/>
<ChildItems> <ChildItems>
<InputField name="Тип" id="70"> <UsualGroup name="ГруппаТипИНастройки" id="155">
<DataPath>Объект.Тип</DataPath> <Title>
<Width>19</Width> <v8:item>
<HorizontalStretch>false</HorizontalStretch> <v8:lang>ru</v8:lang>
<TextEdit>false</TextEdit> <v8:content>Тип и настройки</v8:content>
<BackColor>style:ФонУправляющегоПоля</BackColor> </v8:item>
<ContextMenu name="ТипКонтекстноеМеню" id="71"/> </Title>
<ExtendedTooltip name="ТипExtendedTooltip" id="86"/> <Representation>None</Representation>
<Events> <ShowTitle>false</ShowTitle>
<Event name="OnChange">ТипПриИзменении</Event> <ExtendedTooltip name="ГруппаТипИНастройкиРасширеннаяПодсказка" id="156"/>
<Event name="Clearing">ТипОчистка</Event> <ChildItems>
</Events> <InputField name="Тип" id="70">
</InputField> <DataPath>Объект.Тип</DataPath>
<Width>19</Width>
<HorizontalStretch>false</HorizontalStretch>
<TextEdit>false</TextEdit>
<BackColor>style:ФонУправляющегоПоля</BackColor>
<ContextMenu name="ТипКонтекстноеМеню" id="71"/>
<ExtendedTooltip name="ТипExtendedTooltip" id="86"/>
<Events>
<Event name="OnChange">ТипПриИзменении</Event>
<Event name="Clearing">ТипОчистка</Event>
</Events>
</InputField>
</ChildItems>
</UsualGroup>
<InputField name="Наименование" id="1"> <InputField name="Наименование" id="1">
<DataPath>Объект.Description</DataPath> <DataPath>Объект.Description</DataPath>
<DefaultItem>true</DefaultItem> <DefaultItem>true</DefaultItem>
<Width>20</Width>
<Wrap>false</Wrap> <Wrap>false</Wrap>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/> <ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="87"/> <ExtendedTooltip name="НаименованиеExtendedTooltip" id="87"/>
<Events>
<Event name="Opening">НаименованиеОткрытие</Event>
</Events>
</InputField>
<InputField name="Родитель" id="11">
<DataPath>Объект.Parent</DataPath>
<Wrap>false</Wrap>
<OpenButton>false</OpenButton>
<ChooseType>false</ChooseType>
<TextEdit>false</TextEdit>
<ContextMenu name="РодительКонтекстноеМеню" id="12"/>
<ExtendedTooltip name="РодительExtendedTooltip" id="89"/>
<Events>
<Event name="Clearing">РодительОчистка</Event>
</Events>
</InputField> </InputField>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<InputField name="Подсказка" id="73">
<DataPath>Объект.Подсказка</DataPath>
<TitleLocation>Left</TitleLocation>
<Height>2</Height>
<MultiLine>true</MultiLine>
<ContextMenu name="ПодсказкаКонтекстноеМеню" id="74"/>
<ExtendedTooltip name="ПодсказкаExtendedTooltip" id="88"/>
</InputField>
<InputField name="Родитель" id="11">
<DataPath>Объект.Parent</DataPath>
<Wrap>false</Wrap>
<OpenButton>false</OpenButton>
<ContextMenu name="РодительКонтекстноеМеню" id="12"/>
<ExtendedTooltip name="РодительExtendedTooltip" id="89"/>
</InputField>
<UsualGroup name="ГруппаТипКонтактнойИнформации" id="63"> <UsualGroup name="ГруппаТипКонтактнойИнформации" id="63">
<Group>Horizontal</Group> <Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип контактной информации</v8:content>
</v8:item>
</Title>
<Representation>None</Representation> <Representation>None</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаТипКонтактнойИнформацииExtendedTooltip" id="90"/> <ExtendedTooltip name="ГруппаТипКонтактнойИнформацииExtendedTooltip" id="90"/>
@ -65,16 +89,9 @@
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа тип общие для всех</v8:content> <v8:content>Тип общие для всех</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа тип общие для всех</v8:content>
</v8:item>
</ToolTip>
<HorizontalStretch>true</HorizontalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>NormalSeparation</Representation> <Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
@ -93,7 +110,45 @@
<CheckBoxType>Auto</CheckBoxType> <CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="РедактированиеТолькоВДиалогеКонтекстноеМеню" id="10"/> <ContextMenu name="РедактированиеТолькоВДиалогеКонтекстноеМеню" id="10"/>
<ExtendedTooltip name="РедактированиеТолькоВДиалогеExtendedTooltip" id="93"/> <ExtendedTooltip name="РедактированиеТолькоВДиалогеExtendedTooltip" id="93"/>
<Events>
<Event name="OnChange">РедактированиеТолькоВДиалогеПриИзменении</Event>
</Events>
</CheckBoxField> </CheckBoxField>
<UsualGroup name="ГруппаХранитьИсториюИзменений" id="157">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Хранить историю изменений</v8:content>
</v8:item>
</Title>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаХранитьИсториюИзмененийРасширеннаяПодсказка" id="158"/>
<ChildItems>
<LabelDecoration name="ОтступХранитьИсториюИзменений" id="159">
<Width>1</Width>
<ContextMenu name="ОтступХранитьИсториюИзмененийКонтекстноеМеню" id="160"/>
<ExtendedTooltip name="ОтступХранитьИсториюИзмененийРасширеннаяПодсказка" id="161"/>
</LabelDecoration>
<CheckBoxField name="ХранитьИсториюИзменений" id="162">
<DataPath>Объект.ХранитьИсториюИзменений</DataPath>
<TitleLocation>Right</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории необходимо в контекстном меню элемента контактной информации выбрать пункт «История изменений».</v8:content>
</v8:item>
</ToolTip>
<ToolTipRepresentation>Button</ToolTipRepresentation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ХранитьИсториюИзмененийКонтекстноеМеню" id="163"/>
<ExtendedTooltip name="ХранитьИсториюИзмененийРасширеннаяПодсказка" id="164"/>
<Events>
<Event name="OnChange">ХранитьИсториюИзмененийПриИзменении</Event>
</Events>
</CheckBoxField>
</ChildItems>
</UsualGroup>
<CheckBoxField name="РазрешитьВводНесколькихЗначений" id="80"> <CheckBoxField name="РазрешитьВводНесколькихЗначений" id="80">
<DataPath>Объект.РазрешитьВводНесколькихЗначений</DataPath> <DataPath>Объект.РазрешитьВводНесколькихЗначений</DataPath>
<TitleLocation>Right</TitleLocation> <TitleLocation>Right</TitleLocation>
@ -106,351 +161,219 @@
<CheckBoxType>Auto</CheckBoxType> <CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="РазрешитьВводНесколькихЗначенийКонтекстноеМеню" id="81"/> <ContextMenu name="РазрешитьВводНесколькихЗначенийКонтекстноеМеню" id="81"/>
<ExtendedTooltip name="РазрешитьВводНесколькихЗначенийExtendedTooltip" id="94"/> <ExtendedTooltip name="РазрешитьВводНесколькихЗначенийExtendedTooltip" id="94"/>
<Events>
<Event name="OnChange">РазрешитьВводНесколькихЗначенийПриИзменении</Event>
</Events>
</CheckBoxField> </CheckBoxField>
<LabelDecoration name="ХранитИсториюИзменений" id="145">
<TextColor>style:ПоясняющийТекст</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Хранит историю изменений</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории необходимо в контекстном меню элемента контактной информации выбрать пункт «История изменений».</v8:content>
</v8:item>
</ToolTip>
<ToolTipRepresentation>Button</ToolTipRepresentation>
<ContextMenu name="ХранитИсториюИзмененийКонтекстноеМеню" id="146"/>
<ExtendedTooltip name="ХранитИсториюИзмененийРасширеннаяПодсказка" id="147"/>
</LabelDecoration>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаРазделительКолонок" id="82">
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаРазделительКолонокРасширеннаяПодсказка" id="95"/>
<ChildItems>
<LabelDecoration name="ДекорацияОтступВтораяКолонка" id="83">
<Width>1</Width>
<ContextMenu name="ДекорацияОтступВтораяКолонкаКонтекстноеМеню" id="84"/>
<ExtendedTooltip name="ДекорацияОтступВтораяКолонкаРасширеннаяПодсказка" id="96"/>
</LabelDecoration>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
<UsualGroup name="ГруппаНаименованиеНастройкиПоТипам" id="65"> <UsualGroup name="ГруппаНаименованиеНастройкиПоТипам" id="65">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа наименование настройки по типам</v8:content> <v8:content>Наименование настройки по типам</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа наименование настройки по типам</v8:content>
</v8:item>
</ToolTip>
<HorizontalStretch>false</HorizontalStretch>
<Group>Vertical</Group> <Group>Vertical</Group>
<Representation>None</Representation> <Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle> <ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНаименованиеНастройкиПоТипамExtendedTooltip" id="97"/> <ExtendedTooltip name="ГруппаНаименованиеНастройкиПоТипамExtendedTooltip" id="97"/>
<ChildItems> <ChildItems>
<UsualGroup name="ГруппаВыравниваниеПоТипам" id="66"> <Pages name="Проверки" id="27">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Группа выравнивание по типам</v8:content> <v8:content>Проверки</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <PagesRepresentation>None</PagesRepresentation>
<v8:item> <ExtendedTooltip name="ПроверкиExtendedTooltip" id="99"/>
<v8:lang>ru</v8:lang>
<v8:content>Группа выравнивание по типам</v8:content>
</v8:item>
</ToolTip>
<HorizontalStretch>false</HorizontalStretch>
<Group>Horizontal</Group>
<Representation>NormalSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаВыравниваниеПоТипамExtendedTooltip" id="98"/>
<ChildItems> <ChildItems>
<Pages name="Проверки" id="27"> <Page name="Адрес" id="25">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Проверки</v8:content> <v8:content>Адрес</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <ExtendedTooltip name="АдресExtendedTooltip" id="100"/>
<ChildItems>
<CheckBoxField name="ВключатьСтрануВПредставление" id="16">
<DataPath>Объект.ВключатьСтрануВПредставление</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ВключатьСтрануВПредставлениеКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ВключатьСтрануВПредставлениеExtendedTooltip" id="107"/>
</CheckBoxField>
<CheckBoxField name="МеждународныйФорматАдреса" id="165">
<DataPath>Объект.МеждународныйФорматАдреса</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="МеждународныйФорматАдресаКонтекстноеМеню" id="166"/>
<ExtendedTooltip name="МеждународныйФорматАдресаРасширеннаяПодсказка" id="167"/>
<Events>
<Event name="OnChange">МеждународныйФорматАдресаПриИзменении</Event>
</Events>
</CheckBoxField>
<Button name="ДополнительныеНастройкиАдреса" id="153">
<Type>Hyperlink</Type>
<CommandName>Form.Command.ДополнительныеНастройкиАдреса</CommandName>
<ExtendedTooltip name="ДополнительныеНастройкиАдресаРасширеннаяПодсказка" id="154"/>
</Button>
</ChildItems>
</Page>
<Page name="АдресЭлектроннойПочты" id="28">
<Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Проверки</v8:content> <v8:content>Адрес электронной почты</v8:content>
</v8:item> </v8:item>
</ToolTip> </Title>
<PagesRepresentation>None</PagesRepresentation> <ExtendedTooltip name="АдресЭлектроннойПочтыExtendedTooltip" id="108"/>
<ExtendedTooltip name="ПроверкиExtendedTooltip" id="99"/>
<ChildItems> <ChildItems>
<Page name="Адрес" id="25"> <CheckBoxField name="ПроверятьКорректность" id="20">
<ExtendedTooltip name="АдресExtendedTooltip" id="100"/> <DataPath>Объект.ПроверятьКорректность</DataPath>
<ChildItems>
<CheckBoxField name="АдресТолькоРоссийский" id="13">
<DataPath>Объект.АдресТолькоРоссийский</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Только российский</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="АдресТолькоРоссийскийКонтекстноеМеню" id="14"/>
<ExtendedTooltip name="АдресТолькоРоссийскийExtendedTooltip" id="101"/>
<Events>
<Event name="OnChange">АдресТолькоРоссийскийПриИзменении</Event>
</Events>
</CheckBoxField>
<UsualGroup name="ГруппаПроверкаАдреса" id="37">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа проверка адреса</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа проверка адреса</v8:content>
</v8:item>
</ToolTip>
<Group>Horizontal</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаПроверкаАдресаРасширеннаяПодсказка" id="102"/>
<ChildItems>
<LabelDecoration name="ДекорацияОтступ" id="38">
<Width>1</Width>
<ContextMenu name="ДекорацияОтступКонтекстноеМеню" id="39"/>
<ExtendedTooltip name="ДекорацияОтступРасширеннаяПодсказка" id="103"/>
</LabelDecoration>
<UsualGroup name="ГруппаНастройкиПроверкаАдреса" id="34">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа настройки проверка адреса</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа настройки проверка адреса</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаНастройкиПроверкаАдресаРасширеннаяПодсказка" id="104"/>
<ChildItems>
<CheckBoxField name="ПроверятьКорректностьАдреса" id="118">
<DataPath>Объект.ПроверятьКорректность</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ПроверятьКорректностьАдресаКонтекстноеМеню" id="119"/>
<ExtendedTooltip name="ПроверятьКорректностьАдресаРасширеннаяПодсказка" id="120"/>
<Events>
<Event name="OnChange">ПроверятьКорректностьАдресаПриИзменении</Event>
</Events>
</CheckBoxField>
<RadioButtonField name="ПроверятьПоКлассификатору" id="121">
<DataPath>ПроверятьПоКлассификатору</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверять по</v8:content>
</v8:item>
</Title>
<TitleLocation>Left</TitleLocation>
<ToolTipRepresentation>Button</ToolTipRepresentation>
<RadioButtonType>Auto</RadioButtonType>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ФИАС</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:decimal">0</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>КЛАДР</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:decimal">1</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ПроверятьПоКлассификаторуКонтекстноеМеню" id="122"/>
<ExtendedTooltip name="ПроверятьПоКлассификаторуРасширеннаяПодсказка" id="123">
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>При проверке адреса по классификатору ФИАС выполняются дополнительные проверки:
- "Округ" (между уровнями "Регион" и "Район").
- "Внутригородской район" (между уровнями "Город" и "Населенный пункт")
- Уровни дополнительных территорий (между "Улица", и номером дома или владения)
- Дома, владения, корпуса, строения и т.п.</v8:content>
</v8:item>
</Title>
</ExtendedTooltip>
</RadioButtonField>
<CheckBoxField name="СкрыватьНеактуальныеАдреса" id="61">
<DataPath>Объект.СкрыватьНеактуальныеАдреса</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="СкрыватьНеактуальныеАдресаКонтекстноеМеню" id="62"/>
<ExtendedTooltip name="СкрыватьНеактуальныеАдресаExtendedTooltip" id="106"/>
</CheckBoxField>
<CheckBoxField name="УказыватьОКТМОВручную" id="129">
<DataPath>Объект.УказыватьОКТМО</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="УказыватьОКТМОВручнуюКонтекстноеМеню" id="130"/>
<ExtendedTooltip name="УказыватьОКТМОВручнуюРасширеннаяПодсказка" id="131"/>
</CheckBoxField>
</ChildItems>
</UsualGroup>
</ChildItems>
</UsualGroup>
<CheckBoxField name="ВключатьСтрануВПредставление" id="16">
<DataPath>Объект.ВключатьСтрануВПредставление</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ВключатьСтрануВПредставлениеКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ВключатьСтрануВПредставлениеExtendedTooltip" id="107"/>
</CheckBoxField>
</ChildItems>
</Page>
<Page name="АдресЭлектроннойПочты" id="28">
<ExtendedTooltip name="АдресЭлектроннойПочтыExtendedTooltip" id="108"/>
<ChildItems>
<CheckBoxField name="ПроверятьКорректность" id="20">
<DataPath>Объект.ПроверятьКорректность</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Запрещать ввод некорректных адресов</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ПроверятьКорректностьКонтекстноеМеню" id="21"/>
<ExtendedTooltip name="ПроверятьКорректностьExtendedTooltip" id="109"/>
</CheckBoxField>
</ChildItems>
</Page>
<Page name="Телефон" id="132">
<Title> <Title>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Телефон</v8:content> <v8:content>Запрещать ввод некорректных адресов</v8:content>
</v8:item> </v8:item>
</Title> </Title>
<ToolTip> <TitleLocation>Right</TitleLocation>
<v8:item> <CheckBoxType>Auto</CheckBoxType>
<v8:lang>ru</v8:lang> <ContextMenu name="ПроверятьКорректностьКонтекстноеМеню" id="21"/>
<v8:content>Телефон</v8:content> <ExtendedTooltip name="ПроверятьКорректностьExtendedTooltip" id="109"/>
</v8:item> </CheckBoxField>
</ToolTip>
<ExtendedTooltip name="ТелефонРасширеннаяПодсказка" id="133"/>
<ChildItems>
<CheckBoxField name="ТелефонCДобавочнымНомером" id="134">
<DataPath>Объект.ТелефонCДобавочнымНомером</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ТелефонCДобавочнымНомеромКонтекстноеМеню" id="135"/>
<ExtendedTooltip name="ТелефонCДобавочнымНомеромРасширеннаяПодсказка" id="136"/>
</CheckBoxField>
<CheckBoxField name="ПроверятьКорректность1" id="137">
<DataPath>Объект.ПроверятьКорректность</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ПроверятьКорректность1КонтекстноеМеню" id="138"/>
<ExtendedTooltip name="ПроверятьКорректность1РасширеннаяПодсказка" id="139"/>
</CheckBoxField>
</ChildItems>
</Page>
<Page name="Skype" id="124">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Skype</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Skype</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="SkypeРасширеннаяПодсказка" id="125"/>
<ChildItems>
<LabelDecoration name="ДекорацияЗаглушкаSkype" id="126">
<ContextMenu name="ДекорацияЗаглушкаSkypeКонтекстноеМеню" id="127"/>
<ExtendedTooltip name="ДекорацияЗаглушкаSkypeРасширеннаяПодсказка" id="128"/>
</LabelDecoration>
</ChildItems>
</Page>
<Page name="Другое" id="51">
<ExtendedTooltip name="ДругоеExtendedTooltip" id="110"/>
<ChildItems>
<CheckBoxField name="МногострочноеПоле" id="142">
<DataPath>Объект.МногострочноеПоле</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="МногострочноеПолеКонтекстноеМеню" id="143"/>
<ExtendedTooltip name="МногострочноеПолеРасширеннаяПодсказка" id="144"/>
</CheckBoxField>
</ChildItems>
</Page>
<Page name="Прочие" id="140">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Прочие</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Прочие</v8:content>
</v8:item>
</ToolTip>
<ExtendedTooltip name="ПрочиеРасширеннаяПодсказка" id="141"/>
<ChildItems>
<LabelDecoration name="ДекорацияЗаглушка" id="54">
<ContextMenu name="ДекорацияЗаглушкаКонтекстноеМеню" id="55"/>
<ExtendedTooltip name="ДекорацияЗаглушкаРасширеннаяПодсказка" id="111"/>
</LabelDecoration>
</ChildItems>
</Page>
</ChildItems> </ChildItems>
</Pages> </Page>
<Page name="Телефон" id="132">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Телефон</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ТелефонРасширеннаяПодсказка" id="133"/>
<ChildItems>
<CheckBoxField name="ТелефонCДобавочнымНомером" id="134">
<DataPath>Объект.ТелефонCДобавочнымНомером</DataPath>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ТелефонCДобавочнымНомеромКонтекстноеМеню" id="135"/>
<ExtendedTooltip name="ТелефонCДобавочнымНомеромРасширеннаяПодсказка" id="136"/>
</CheckBoxField>
<CheckBoxField name="ПроверятьКорректностьТелефон" id="137">
<DataPath>Объект.ПроверятьКорректность</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Запрещать ввод некорректных номеров</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ПроверятьКорректностьТелефонКонтекстноеМеню" id="138"/>
<ExtendedTooltip name="ПроверятьКорректностьТелефонРасширеннаяПодсказка" id="139"/>
</CheckBoxField>
</ChildItems>
</Page>
<Page name="Skype" id="124">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Skype</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="SkypeРасширеннаяПодсказка" id="125"/>
<ChildItems>
<LabelDecoration name="ДекорацияЗаглушкаSkype" id="126">
<ContextMenu name="ДекорацияЗаглушкаSkypeКонтекстноеМеню" id="127"/>
<ExtendedTooltip name="ДекорацияЗаглушкаSkypeРасширеннаяПодсказка" id="128"/>
</LabelDecoration>
</ChildItems>
</Page>
<Page name="Другое" id="51">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Другое</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ДругоеExtendedTooltip" id="110"/>
<ChildItems>
<RadioButtonField name="ВидПоляДругое" id="150">
<DataPath>Объект.ВидПоляДругое</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вид поля</v8:content>
</v8:item>
</Title>
<RadioButtonType>Auto</RadioButtonType>
<ColumnsCount>1</ColumnsCount>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Многострочное широкое</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">МногострочноеШирокое</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Однострочное широкое</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">ОднострочноеШирокое</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Однострочное узкое</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xs:string">ОднострочноеУзкое</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ВидПоляДругоеКонтекстноеМеню" id="151"/>
<ExtendedTooltip name="ВидПоляДругоеРасширеннаяПодсказка" id="152"/>
</RadioButtonField>
</ChildItems>
</Page>
<Page name="Прочие" id="140">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Прочие</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ПрочиеРасширеннаяПодсказка" id="141"/>
<ChildItems>
<LabelDecoration name="ДекорацияЗаглушка" id="54">
<ContextMenu name="ДекорацияЗаглушкаКонтекстноеМеню" id="55"/>
<ExtendedTooltip name="ДекорацияЗаглушкаРасширеннаяПодсказка" id="111"/>
</LabelDecoration>
</ChildItems>
</Page>
</ChildItems> </ChildItems>
</UsualGroup> </Pages>
</ChildItems> </ChildItems>
</UsualGroup> </UsualGroup>
</ChildItems> </ChildItems>
@ -465,12 +388,6 @@
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="ПроверятьПоКлассификатору" id="2"> <Attribute name="ПроверятьПоКлассификатору" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверять по классификатору</v8:content>
</v8:item>
</Title>
<Type> <Type>
<v8:Type>xs:decimal</v8:Type> <v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers> <v8:NumberQualifiers>
@ -481,5 +398,28 @@
</Type> </Type>
<SavedData>true</SavedData> <SavedData>true</SavedData>
</Attribute> </Attribute>
<Attribute name="ДоступныДополнительныеНастройкиАдреса" id="3">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes> </Attributes>
<Commands>
<Command name="ДополнительныеНастройкиАдреса" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные настройки адреса</v8:content>
</v8:item>
</Title>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные настройки адреса</v8:content>
</v8:item>
</ToolTip>
<Action>ДополнительныеНастройкиАдреса</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
</Form> </Form>

View File

@ -1,18 +1,20 @@
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
Возврат;
КонецЕсли;
Если Объект.Предопределенный Или Объект.ЗапретитьРедактированиеПользователем Тогда Если Объект.Предопределенный Или Объект.ЗапретитьРедактированиеПользователем Тогда
Элементы.Наименование.ТолькоПросмотр = Истина; Элементы.Наименование.ТолькоПросмотр = Истина;
Элементы.Родитель.ТолькоПросмотр = Истина; Элементы.Родитель.ТолькоПросмотр = Истина;
Элементы.Тип.ТолькоПросмотр = Истина; Элементы.Тип.ТолькоПросмотр = Истина;
Элементы.Подсказка.ТолькоПросмотр = Истина;
Элементы.ГруппаТипОбщиеДляВсех.ТолькоПросмотр = Объект.ЗапретитьРедактированиеПользователем; Элементы.ГруппаТипОбщиеДляВсех.ТолькоПросмотр = Объект.ЗапретитьРедактированиеПользователем;
Иначе Иначе
// Обработчик подсистемы запрета редактирования реквизитов объектов. // Обработчик подсистемы запрета редактирования реквизитов объектов.
@ -23,45 +25,78 @@
Иначе Иначе
Элементы.Родитель.ТолькоПросмотр = Истина; Элементы.Родитель.ТолькоПросмотр = Истина;
Элементы.Тип.ТолькоПросмотр = Истина; Элементы.Тип.ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
СсылкаРодителя = Объект.Родитель; СсылкаРодителя = Объект.Родитель;
Элементы.ХранитьИсториюИзменений.Доступность = Объект.РедактированиеТолькоВДиалоге;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = НЕ Объект.ХранитьИсториюИзменений;
Если Не Объект.МожноИзменятьСпособРедактирования Тогда Если Не Объект.МожноИзменятьСпособРедактирования Тогда
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь; Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь; Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь;
Элементы.ГруппаНаименованиеНастройкиПоТипам.Доступность = Ложь; Элементы.ГруппаНаименованиеНастройкиПоТипам.Доступность = Ложь;
Иначе Элементы.ХранитьИсториюИзменений.Доступность = Ложь;
Если Объект.ХранитьИсториюИзменений ИЛИ СсылкаРодителя.Пустая() ИЛИ СсылкаРодителя.Уровень() > 0 Тогда КонецЕсли;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь;
Иначе Элементы.ГруппаХранитьИсториюИзменений.Видимость = Ложь;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Истина;
Если Объект.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес
ИЛИ НЕ СсылкаРодителя.Пустая()
ИЛИ СсылкаРодителя.Уровень() = 0 Тогда
ТабличнаяЧасть = Неопределено;
РеквизитыРодителя = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(СсылкаРодителя, "ИмяПредопределенныхДанных, ИмяПредопределенногоВида");
ИмяПредопределенногоВида = ?(ЗначениеЗаполнено(РеквизитыРодителя.ИмяПредопределенногоВида),
РеквизитыРодителя.ИмяПредопределенногоВида, РеквизитыРодителя.ИмяПредопределенныхДанных);
Если СтрНачинаетсяС(ИмяПредопределенногоВида, "Справочник") Тогда
ИмяОбъекта = Сред(ИмяПредопределенногоВида, СтрДлина("Справочник") + 1);
Если Метаданные.Справочники.Найти(ИмяОбъекта) <> Неопределено Тогда
ТабличнаяЧасть = Метаданные.Справочники[ИмяОбъекта].ТабличныеЧасти.Найти("КонтактнаяИнформация");
КонецЕсли;
ИначеЕсли СтрНачинаетсяС(ИмяПредопределенногоВида, "Документ") Тогда
ИмяОбъекта = Сред(ИмяПредопределенногоВида, СтрДлина("Документ") + 1);
Если Метаданные.Документы.Найти(ИмяОбъекта) <> Неопределено Тогда
ТабличнаяЧасть = Метаданные.Документы[ИмяОбъекта].ТабличныеЧасти.Найти("КонтактнаяИнформация");
КонецЕсли;
КонецЕсли;
Если ТабличнаяЧасть <> Неопределено Тогда
Если ТабличнаяЧасть.Реквизиты.Найти("ДействуетС") <> Неопределено Тогда
Элементы.ГруппаХранитьИсториюИзменений.Видимость = Истина;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
Элементы.ХранитИсториюИзменений.Видимость = Объект.ХранитьИсториюИзменений; ДоступныДополнительныеНастройкиАдреса = (Метаданные.Обработки.Найти("РасширенныйВводКонтактнойИнформации") <> Неопределено
И Метаданные.Обработки["РасширенныйВводКонтактнойИнформации"].Формы.Найти("НастройкиАдреса") <> Неопределено);
ПроверятьПоКлассификатору = ?(Объект.ПроверятьПоФИАС, 0, 1);
ЛокализацияСервер.ПриСозданииНаСервере(Элементы.Наименование);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПриОткрытии(Отказ) Процедура ПриОткрытии(Отказ)
ИзменитьОтображениеПриИзмененииТипа(); ИзменитьОтображениеПриИзмененииТипа();
ОтобразитьДоступностьВариантовПроверкиПоКлассификатору(); КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
ТекущийОбъект.ПроверятьПоФИАС = (ПроверятьПоКлассификатору = 0);
Если Не ТекущийОбъект.ПроверитьЗаполнение() Тогда Если Не ТекущийОбъект.ПроверитьЗаполнение() Тогда
Отказ = Истина; Отказ = Истина;
КонецЕсли; КонецЕсли;
ЛокализацияСервер.ПередЗаписьюНаСервере(ТекущийОбъект);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -75,6 +110,8 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ЛокализацияСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@ -104,16 +141,56 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура АдресТолькоРоссийскийПриИзменении(Элемент) Процедура РедактированиеТолькоВДиалогеПриИзменении(Элемент)
ИзменитьРеквизитыПриИзмененииТолькоРоссии(); Если Объект.РедактированиеТолькоВДиалоге Тогда
ИзменитьОтображениеПриИзмененииТолькоРоссии(); Элементы.ХранитьИсториюИзменений.Доступность = Истина;
Иначе
Элементы.ХранитьИсториюИзменений.Доступность = Ложь;
Объект.ХранитьИсториюИзменений = Ложь;
КонецЕсли;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = НЕ Объект.ХранитьИсториюИзменений;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПроверятьКорректностьАдресаПриИзменении(Элемент) Процедура ХранитьИсториюИзмененийПриИзменении(Элемент)
ОтобразитьДоступностьВариантовПроверкиПоКлассификатору();
Если Объект.ХранитьИсториюИзменений Тогда
Объект.РазрешитьВводНесколькихЗначений = Ложь;
КонецЕсли;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Не Объект.ХранитьИсториюИзменений;
КонецПроцедуры
&НаКлиенте
Процедура РазрешитьВводНесколькихЗначенийПриИзменении(Элемент)
Если Объект.РазрешитьВводНесколькихЗначений Тогда
Объект.ХранитьИсториюИзменений = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура РодительОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура МеждународныйФорматАдресаПриИзменении(Элемент)
ИзменитьОтображениеПриИзмененииТипа();
КонецПроцедуры
&НаКлиенте
Процедура НаименованиеОткрытие(Элемент, СтандартнаяОбработка)
ЛокализацияКлиент.ПриОткрытии(Объект, Элемент, "Наименование", СтандартнаяОбработка);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@ -132,6 +209,16 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ДополнительныеНастройкиАдреса(Команда)
ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыНастроекАдреса", ЭтотОбъект);
ПараметрыФормы = Новый Структура();
ПараметрыФормы.Вставить("Объект", Объект);
ПараметрыФормы.Вставить("ТолькоПросмотр", ЭтотОбъект.ТолькоПросмотр);
ИмяФормыНастройкиАдреса = "Обработка.РасширенныйВводКонтактнойИнформации.Форма.НастройкиАдреса";
ОткрытьФорму(ИмяФормыНастройкиАдреса, ПараметрыФормы,,,,, ОповещениеОЗакрытие);
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@ -141,78 +228,65 @@
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Адрес; Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Адрес;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования; Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
Элементы.ДополнительныеНастройкиАдреса.Видимость = ДоступныДополнительныеНастройкиАдреса;
ИзменитьОтображениеПриИзмененииТолькоРоссии(); Элементы.ДополнительныеНастройкиАдреса.Доступность = Не Объект.МеждународныйФорматАдреса;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.АдресЭлектроннойПочты;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Skype") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Skype;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Истина;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Телефон;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Другое") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Иначе Иначе
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Прочие; Элементы.ДополнительныеНастройкиАдреса.Видимость = Ложь;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь; Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.АдресЭлектроннойПочты;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Skype") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Skype;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
Элементы.РазрешитьВводНесколькихЗначений.Доступность = Истина;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Телефон;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Объект.МожноИзменятьСпособРедактирования;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Другое") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Другое;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.ВебСтраница") Тогда
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Прочие;
Элементы.РедактированиеТолькоВДиалоге.Видимость = Ложь;
Элементы.ГруппаХранитьИсториюИзменений.Видимость = Ложь;
Иначе
Элементы.Проверки.ТекущаяСтраница = Элементы.Проверки.ПодчиненныеЭлементы.Прочие;
Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ОтобразитьДоступностьВариантовПроверкиПоКлассификатору()
Если Объект.ПроверятьКорректность Тогда
Элементы.ПроверятьПоКлассификатору.Доступность = Истина;
Иначе
Элементы.ПроверятьПоКлассификатору.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ИзменитьРеквизитыПриИзмененииТипа() Процедура ИзменитьРеквизитыПриИзмененииТипа()
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда
ИзменитьРеквизитыПриИзмененииТолькоРоссии(); Элементы.ХранитьИсториюИзменений.Доступность = Истина;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Объект.РедактированиеТолькоВДиалоге = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
// Нет изменений
Иначе Иначе
Объект.РедактированиеТолькоВДиалоге = Ложь;
Объект.ХранитьИсториюИзменений = Ложь;
Элементы.ХранитьИсториюИзменений.Доступность = Ложь;
Если Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда
Объект.РедактированиеТолькоВДиалоге = Ложь;
ИначеЕсли Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон")
Или Объект.Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Факс") Тогда
// Нет изменений
Иначе
Объект.РедактированиеТолькоВДиалоге = Ложь;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ИзменитьОтображениеПриИзмененииТолькоРоссии() Процедура ПослеЗакрытияФормыНастроекАдреса(Результат, ДополнительныеПараметры) Экспорт
Если ТипЗнч(Результат) = Тип("Структура") Тогда
Элементы.ПроверятьПоКлассификатору.Доступность = Объект.ПроверятьКорректность; ЗаполнитьЗначенияСвойств(Объект, Результат);
Элементы.ПроверятьКорректностьАдреса.Доступность = Объект.АдресТолькоРоссийский;
Элементы.СкрыватьНеактуальныеАдреса.Доступность = Объект.АдресТолькоРоссийский;
Элементы.УказыватьОКТМОВручную.Доступность = Объект.АдресТолькоРоссийский;
КонецПроцедуры
&НаКлиенте
Процедура ИзменитьРеквизитыПриИзмененииТолькоРоссии()
Если Не Объект.АдресТолькоРоссийский Тогда
Объект.ПроверятьКорректность = Ложь;
Объект.СкрыватьНеактуальныеАдреса = Ложь;
Объект.УказыватьОКТМО = Ложь;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти

View File

@ -1,6 +1,6 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<p>Описание свойств поля контактной информации.</p> <p>Описание свойств поля контактной информации.</p>
<p>Поставка программы осуществляется c предопределенными полями контактной информации для некоторых документов и списков. У предопределенных полей контактной информации можно только поменять  настройки, остальные реквизиты заполнены по умолчанию и защищены от редактирования.</p> <p>Поставка программы осуществляется c предопределенными полями контактной информации для некоторых документов и списков. У предопределенных полей контактной информации можно только поменятьнастройки, остальные реквизиты заполнены по умолчанию и защищены от редактирования.</p>
<h3>Типы контактной информации</h3> <h3>Типы контактной информации</h3>
<p>Программа позволяет хранить следующие типы контактной информации:</p> <p>Программа позволяет хранить следующие типы контактной информации:</p>
<ul><li> <ul><li>
@ -10,7 +10,7 @@
</li><li> </li><li>
<div><strong>Адрес электронной почты</strong> - поле с таким типом контактной информации предназначено для хранения адреса электронной почты. Реквизит используется при отправке электронных писем из программы.</div> <div><strong>Адрес электронной почты</strong> - поле с таким типом контактной информации предназначено для хранения адреса электронной почты. Реквизит используется при отправке электронных писем из программы.</div>
</li><li> </li><li>
<div><strong>Веб-страница</strong> - поле с таким типом контактной информации предназначено для хранения адресов веб страниц.</div> <div><strong>Веб-страница</strong> - поле с таким типом контактной информации предназначено для хранения адресов веб страниц. Позволяет прикрепить гиперссылки на интернет-страницы, после этого ссылки будут храниться в базе с возможностью перехода по ним.</div>
</li><li> </li><li>
<div><strong>Факс</strong> - поле с таким типом контактной информации предназначено для хранения номеров факсов в виде произвольной строки, или в соответствии с шаблоном ввода номера факса. Реквизит используется в печатных формах документов.</div> <div><strong>Факс</strong> - поле с таким типом контактной информации предназначено для хранения номеров факсов в виде произвольной строки, или в соответствии с шаблоном ввода номера факса. Реквизит используется в печатных формах документов.</div>
</li><li> </li><li>
@ -33,12 +33,12 @@
</li><li> </li><li>
<div>Настройка <strong>Запрещать ввод некорректного адреса</strong> используется для полей <strong>Адрес</strong>, <strong>Телефон</strong> или <strong>Адрес электронной почты</strong>. Такая настройка позволяет запретить ввод российских адресов, телефонов или адресов электронной почты, которые заполнены не по установленным правилам.</div> <div>Настройка <strong>Запрещать ввод некорректного адреса</strong> используется для полей <strong>Адрес</strong>, <strong>Телефон</strong> или <strong>Адрес электронной почты</strong>. Такая настройка позволяет запретить ввод российских адресов, телефонов или адресов электронной почты, которые заполнены не по установленным правилам.</div>
</li><li> </li><li>
<div>Включите флажок <strong>Разрешить ввод нескольких значений</strong>, для того чтобы можно было ввести несколько значений. Например, у организации или физического лица может быть несколько адресов электронной почты или номеров телефонов, по которым можно с ними связаться.</div></li></ul><h3>Особенности настройки поля Адрес </h3> <div>Включите флажок <strong>Разрешить ввод нескольких значений</strong>, для того чтобы можно было ввести несколько значений. Например, у организации или физического лица может быть несколько адресов электронной почты или номеров телефонов, по которым можно с ними связаться.</div></li></ul><h3>Международный формат адреса</h3>
<ul><li>Включите флажок <strong>Только российский</strong>, для того чтобы запретить выбор другой страны при заполнении адреса. Используйте эту возможность, если у сотрудников Вашей организации только российские адреса, это ускорит ввод информации. При этом становятся доступными дополнительные настройки: <li>Для создания международного адреса (например, для валютных платежей), включите флажок <strong>Международный формат адреса</strong>, в этом случае ссылка <strong>Дополнительные настройки адреса</strong> становится недоступной.
<ul><li><strong>Запрещать ввод некорректного адреса</strong> - если флажок включен, то при некорректном вводе российского адреса невозможно будет ввести данные в программу (имеет смысл только при использовании шаблонов ввода и адресного классификатора - для использования этой возможности включите флажок <strong>Редактировать только в диалоге</strong>). <h3>Дополнительные настройки поля Адрес </h3>
</li><li><strong>Проверять по КЛАДР</strong>; <p>С помощью соответствующей ссылки можно перейти к дополнительным настройкам адреса:</p>
</li><li><strong>Проверять по ФИАС</strong> - при использовании классификатора ФИАС адреса ведутся в дополнительных разрезах (например, <strong>Округ</strong>); <ul><li>Включите флажок <strong>Только российский адрес</strong>, для того чтобы запретить выбор другой страны при заполнении адреса. Используйте эту возможность, если у сотрудников Вашей организации только российские адреса, это ускорит ввод информации. При этом становятся доступными дополнительные настройки:
</li><li><strong>Скрывать неактуальные адреса</strong> - включите флажок, для того чтобы программа не показывала в списках устаревшие адреса на момент последней загрузки классификатора адреса. Такие адреса помечены в списках значком <img src="CommonPicture.КонтактнаяИнформацияНеактуально"></img>. По умолчанию флажок отключен. <ul><li><strong>Запрещать ввод некорректного адреса</strong> - если флажок включен, то при некорректном вводе российского адреса невозможно будет ввести данные в программу (имеет смысл только при использовании шаблонов ввода и адресного классификатора - для использования этой возможности включите флажок <strong>Редактировать только в диалоге</strong>). Адрес проверяется по ФИАС.
</li><li><strong>Указывать ОКТМО</strong> - включите флажок, для того чтобы автоматически заполнялось поле ОКТМО. При необходимости поле можно отредактировать.</li></ul></li><li><strong>Включать страну в представление</strong> - включите флажок, для того чтобы при автоматическом составлении полного адреса в поле <strong>Адрес</strong> указывалась страна. </li><li><strong>Указывать ОКТМО</strong> - включите флажок, для того чтобы автоматически заполнялось поле ОКТМО. При необходимости поле можно отредактировать.</li></ul></li><li><strong>Включать страну в представление</strong> - включите флажок, для того чтобы при автоматическом составлении полного адреса в поле <strong>Адрес</strong> указывалась страна.
</li><li>Если включена возможность хранить историю изменения адреса, то в поле выводится состояние <strong>Хранит историю изменений</strong>.</li></ul><h3>Особенности настройки поля Телефон и факс</h3> </li><li>Если включена возможность хранить историю изменения адреса, то в поле выводится состояние <strong>Хранит историю изменений</strong>.</li></ul><h3>Особенности настройки поля Телефон и факс</h3>
<ul><li> <ul><li>
@ -47,7 +47,13 @@
<div>Для некоторых типов телефонов (например, мобильный телефон) не предусмотрено добавочных номеров.</div></li></ul><h3>Особенности настройки поля Адрес электронной почты</h3> <div>Для некоторых типов телефонов (например, мобильный телефон) не предусмотрено добавочных номеров.</div></li></ul><h3>Особенности настройки поля Адрес электронной почты</h3>
<ul><li>Если у поля установлен тип <strong>Адрес электронной почты</strong>, то программа проверяет правильность ввода адреса электронной почты. Включите флажок <strong>Запрещать ввод некорректных адресов</strong>, в этом случае ввести некорректный адрес электронной почты будет невозможно.</li></ul><h3>Особенности настройки поля Другое</h3> <ul><li>Если у поля установлен тип <strong>Адрес электронной почты</strong>, то программа проверяет правильность ввода адреса электронной почты. Включите флажок <strong>Запрещать ввод некорректных адресов</strong>, в этом случае ввести некорректный адрес электронной почты будет невозможно.</li></ul><h3>Особенности настройки поля Другое</h3>
<ul><li> <ul><li>
<div>С помощью флажка <strong>Многострочное поле</strong> можно указать, выводить эти поля как многострочные или однострочные. Такая возможность позволяет более точно расположить поле в окне объекта.</div></li></ul><h3>См. также: </h3> <div>С помощью переключателя можно указать <strong>Вид поля</strong>, для того чтобы более точно расположить поле в окне объекта:</div>
<ul><li><a href="Catalog.ВидыКонтактнойИнформации/Help">Виды контактной информации</a>; <ul><li>
</li><li><a href="DataProcessor.ВводКонтактнойИнформации/Help">Ввод контактной информации</a>; <div><strong>Многострочное широкое</strong> - включает несколько строк;</div>
</li><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> </li><li>
<div><strong>Однострочное широкое</strong> - длинная строка;</div>
</li><li>
<div><strong>Однострочное узкое</strong> - если вид контактной информации <strong>Другое</strong> используется для ввода текстовых данных небольшой длины, то размер поля ввода можно уменьшить.</div></li></ul></li></ul><h3>См. также: </h3>
<ul><li>
<div><a href="Catalog.ВидыКонтактнойИнформации/Help">Виды контактной информации</a>; </div></li></ul><ul><li><a href="DataProcessor.ВводКонтактнойИнформации/Help">Ввод контактной информации</a>;
</li><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></li></body></html>

View File

@ -0,0 +1,824 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Catalog uuid="36d6b0e1-5e10-408a-8eb1-09839e57690f">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.ВидыПроверок" category="Object">
<xr:TypeId>da9c4b91-6f72-4c8f-8f5e-7c7b6154f790</xr:TypeId>
<xr:ValueId>60fa556b-29f7-4179-a1c1-0f41ff519d41</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.ВидыПроверок" category="Ref">
<xr:TypeId>3ffba5ed-96cc-4b8a-b89c-c52671b0e490</xr:TypeId>
<xr:ValueId>a74e899e-b62c-4248-9579-a64c49b7795a</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.ВидыПроверок" category="Selection">
<xr:TypeId>ed1dc262-efb5-4f7e-bf97-08d00b18477d</xr:TypeId>
<xr:ValueId>bb220ccc-4eba-4e20-b562-92b11b9bf690</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.ВидыПроверок" category="List">
<xr:TypeId>ff7733d9-c6a6-462b-a542-f88be2978539</xr:TypeId>
<xr:ValueId>4a0a0a50-dedd-4df8-afa6-f413238fa033</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.ВидыПроверок" category="Manager">
<xr:TypeId>4fc5986a-6a4a-4e3d-9059-c0ffdf2f93ae</xr:TypeId>
<xr:ValueId>67220b61-25c1-4c4c-ae36-459c550d6cb0</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>ВидыПроверок</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Виды проверок</v8:content>
</v8:item>
</Synonym>
<Comment>Содержит проверяемые объекты, как конкретные (Ссылка на документ / справочник), так и абстрактные (Операция закрытия месяца).</Comment>
<Hierarchical>true</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>9</CodeLength>
<DescriptionLength>128</DescriptionLength>
<CodeType>String</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>true</CheckUnique>
<Autonumbering>true</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<StandardAttributes>
<xr:StandardAttribute name="PredefinedDataName">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Predefined">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Ref">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="DeletionMark">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="IsFolder">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Owner">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Parent">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа к которой относится вид проверок.</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Входит в группу</v8:content>
</v8:item>
</xr:Synonym>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:type="xr:DesignTimeRef">Catalog.ВидыПроверок.EmptyRef</xr:FillValue>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Description">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование вида проверок.</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</xr:Synonym>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Code">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код вида проверок.</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код</v8:content>
</v8:item>
</xr:Synonym>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Characteristics/>
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>false</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.ВидыПроверок.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.ВидыПроверок.StandardAttribute.Code</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.ВидыПроверок.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultFolderForm/>
<DefaultListForm/>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<BasedOn/>
<DataLockFields>
<xr:Field>Catalog.ВидыПроверок.Attribute.Свойство1</xr:Field>
<xr:Field>Catalog.ВидыПроверок.Attribute.Свойство2</xr:Field>
<xr:Field>Catalog.ВидыПроверок.Attribute.Свойство3</xr:Field>
<xr:Field>Catalog.ВидыПроверок.Attribute.Свойство4</xr:Field>
<xr:Field>Catalog.ВидыПроверок.Attribute.Свойство5</xr:Field>
</DataLockFields>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вид проверки</v8:content>
</v8:item>
</ObjectPresentation>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>Use</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects>
<Attribute uuid="6423b849-7ca4-4501-8856-445157d7e5df">
<Properties>
<Name>Свойство1</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство1</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство №1 вида проблемы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="0819e2b0-1eb0-41b3-ab89-0974bd926fb6">
<Properties>
<Name>Свойство2</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство2</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство №2 вида проблемы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="e814287f-1c13-4f74-9507-d22a62394fd2">
<Properties>
<Name>Свойство3</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство3</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство №3 вида проблемы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="417ac987-7369-45af-b670-fdffb048f33d">
<Properties>
<Name>Свойство4</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство4</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство №4 вида проблемы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="640a5d72-dbc7-421b-afdb-cc3a4622ae04">
<Properties>
<Name>Свойство5</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство5</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойство №5 вида проблемы.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>false</FillFromFillingValue>
<FillValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<TabularSection uuid="79da84c1-5ac2-4472-8eb9-f0484b9582c2">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.ВидыПроверок.СвойстваОбъекта" category="TabularSection">
<xr:TypeId>0ce834b5-eb99-4dcb-bd5e-dfaa949cbd7f</xr:TypeId>
<xr:ValueId>cc76a7e0-b1eb-46f9-b863-73611337868c</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.ВидыПроверок.СвойстваОбъекта" category="TabularSectionRow">
<xr:TypeId>d4f20b2f-e41e-4dbd-a3fb-b2a12e91567d</xr:TypeId>
<xr:ValueId>76c5aaef-b931-4000-93a2-a00b234c514d</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>СвойстваОбъекта</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Свойства объекта</v8:content>
</v8:item>
</Synonym>
<Comment/>
<ToolTip/>
<FillChecking>DontCheck</FillChecking>
<StandardAttributes>
<xr:StandardAttribute name="LineNumber">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Use>ForItem</Use>
</Properties>
<ChildObjects>
<Attribute uuid="2d0b161b-7d69-4ec4-a483-79bd458cb62c">
<Properties>
<Name>ИмяСвойства</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя свойства</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>128</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="f178bc1b-ebea-4fa9-8861-fe0d91f103e4">
<Properties>
<Name>ЗначениеСвойства</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Значение свойства</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
<v8:Type>xs:string</v8:Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:Type>xs:decimal</v8:Type>
<v8:TypeSet>cfg:AnyRef</v8:TypeSet>
<v8:NumberQualifiers>
<v8:Digits>16</v8:Digits>
<v8:FractionDigits>2</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
<v8:StringQualifiers>
<v8:Length>64</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
<v8:DateQualifiers>
<v8:DateFractions>DateTime</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip/>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<Form>ФормаЭлемента</Form>
</ChildObjects>
</Catalog>
</MetaDataObject>

View File

@ -0,0 +1,49 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
// СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// Возвращает реквизиты объекта, которые не рекомендуется редактировать
// с помощью обработки группового изменения реквизитов.
//
// Возвращаемое значение:
// Массив - список имен реквизитов объекта.
Функция РеквизитыНеРедактируемыеВГрупповойОбработке() Экспорт
НеРедактируемыеРеквизиты = Новый Массив;
Возврат НеРедактируемыеРеквизиты;
КонецФункции
// Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов
// СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
// См. ЗапретРедактированияРеквизитовОбъектовПереопределяемый.ПриОпределенииОбъектовСЗаблокированнымиРеквизитами.
Функция ПолучитьБлокируемыеРеквизитыОбъекта() Экспорт
БлокируемыеРеквизиты = Новый Массив;
Возврат БлокируемыеРеквизиты;
КонецФункции
// Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов
#КонецОбласти
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
<Form uuid="e33a9c94-7e98-4b38-ba20-4546a90b2937">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
</Properties>
</Form>
</MetaDataObject>

Some files were not shown because too many files have changed in this diff Show More