3_0_2_175

This commit is contained in:
Компания 1С committed 2018-12-28 11:41:00 +03:00
1 parent 5b86f5a96c
commit 03ace4f5a5
61 files changed
+2515 -1178

No files matched your search

@@ -99,7 +99,7 @@
УдалитьФайлы(ПолныйПуть);
ПутьСПодкаталогом = Файл.Путь;
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, "*.*");
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() = 0 Тогда
УдалитьФайлы(ПутьСПодкаталогом);
КонецЕсли;
@@ -10,5 +10,7 @@
<h3>Заполнение сведений о ключевых операциях</h3>
<ul><li>Выделите имеющиеся в списке ключевую операцию, нажмите <strong>Еще - Изменить</strong> и заполните необходимые <a href="Catalog.КлючевыеОперации.Form.ФормаЭлемента/Help">поля</a>.
</li><li>Также можно воспользоваться двойным щелчком мыши.</li></ul><h3>Ввод новой ключевой операции</h3>
<ul><li>Нажмите <strong>Создать</strong>, заполните необходимые поля.</li></ul><h3>См. также:</h3>
<ul><li>Нажмите <strong>Создать</strong>, заполните необходимые поля.</li></ul><h3>Автоматический подбор целевого времени</h3>
<ul><li>
<div>Для того чтобы правильно заполнить поле <strong>Целевое время</strong>, можно воспользоваться <a href="DataProcessor.ОценкаПроизводительности.Form.ПодборЦелевогоВремениКлючевойОперации/Help">автоматическим подбором</a>. Нажмите кнопку <strong>Подбор целевого времени</strong>.</div></li></ul><h3>См. также:</h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>
@@ -176,8 +176,16 @@
ОтменитьТранзакцию();
Продолжить;
КонецЕсли;
НовыйНаборОбъект.ДополнительныеРеквизиты.Загрузить(ОбновляемыйНабор.ДополнительныеРеквизиты);
НовыйНаборОбъект.ДополнительныеСведения.Загрузить(ОбновляемыйНабор.ДополнительныеСведения);
Для Каждого СтрокаРеквизит Из ОбновляемыйНабор.ДополнительныеРеквизиты Цикл
НоваяСтрокаРеквизиты = НовыйНаборОбъект.ДополнительныеРеквизиты.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрокаРеквизиты, СтрокаРеквизит);
НоваяСтрокаРеквизиты.ИмяПредопределенногоНабора = НовыйНаборОбъект.ИмяПредопределенногоНабора;
КонецЦикла;
Для Каждого СтрокаСведение Из ОбновляемыйНабор.ДополнительныеСведения Цикл
НоваяСтрокаСведения = НовыйНаборОбъект.ДополнительныеСведения.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрокаСведения, СтрокаСведение);
НоваяСтрокаСведения.ИмяПредопределенногоНабора = НовыйНаборОбъект.ИмяПредопределенногоНабора;
КонецЦикла;
// Обновление реквизитов и сведений.
Если Не ОбновляемыйНабор.ЭтоГруппа Тогда
@@ -6,38 +6,49 @@
<ul><li>
<div>Введите <strong>Наименование</strong> учетной записи. Необходимо сформулировать наименование так, чтобы оно кратко характеризовало учетную запись, отражало назначение данной учетной записи или ее владельца, например, "Служба техподдержки". Именно наименование будет появляться в различных списках.</div>
</li><li>
<div>Введите <strong>Адрес электронной почты</strong> учетной записи в формате <a href="mailto:User@Server.net">User@Server.net</a>. </div>
<div>Введите <strong>Адрес электронной почты</strong> учетной записи в формате <strong>User@Server.net</strong>. </div>
</li><li>
<div>Укажите <strong>Имя отправителя писем</strong> - имя владельца учетной записи, которое будет указываться в корреспонденции, при этом оно может отличаться от имени пользователя в программе, например, <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователь</a> "Администратор", а имя его "Иван Иванович".</div>
</li><li>
<div>Укажите, как <strong>Использовать учетную запись</strong>:</div>
<div>Укажите <strong>Имя отправителя писем</strong> - имя владельца учетной записи, которое будет указываться в корреспонденции, при этом оно может отличаться от имени пользователя в программе, например, <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователь</a> "Администратор", а имя его "Иван Иванович".</div></li></ul><h3>Использование учетной записи</h3>
<ul><li>
<div>Укажите, как использовать учетную запись:</div>
<ul><li>
<div>Включите флажок <strong>Для отправки писем</strong>;</div>
</li><li>
<div>Включите флажок <strong>Для получения писем</strong>.</div></li></ul></li><li>
<div>Укажите, <strong>Для кого учетная запись</strong>:</div>
<div>Укажите, для кого учетная запись:</div>
<ul><li>
<div><strong>Для всех</strong>;</div>
</li><li>
<div><strong>Только для</strong> (укажите имя <a name="СтандартныеПодсистемы.Пользователи"></a><a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a>, выбрав его из <a href="Catalog.Пользователи/Help">списка</a>).</div></li></ul></li></ul><h3>Отправка писем (настройка сервера исходящей почты)</h3>
<ul><li>В поле <strong>Сервер</strong> укажите адрес SMTP-сервера, например, "smtp.Server.net".
<ul><li>Укажите <strong>Порт</strong> компьютера для отправки почтовых сообщений, например, "465".
</li><li>С помощью переключателя укажите, когда будет производиться <strong>Шифрование</strong>:
<div><strong>Только для</strong> (укажите имя <a name="СтандартныеПодсистемы.Пользователи"></a><a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a>, выбрав его из <a href="Catalog.Пользователи/Help">списка</a>).</div></li></ul></li></ul><h3>Настройки подключения</h3>
<p>Зависят от настроек почтового сервера.</p>
<p>Выберите <strong>Тип учетной записи</strong>:</p>
<ul><li><a href="#imap">IMAP</a>;
</li><li><a href="#pop">POP</a>.</li></ul><p>В зависимости от выбранного типа учетной записи заполните остальные поля.</p>
<h3><a name="#imap">Настройки сервера IMAP</a></h3>
<ul><li>Введите <strong>Логин</strong> учетной записи в формате <strong>User@Server.net</strong>. и <strong>Пароль</strong> учетной записи.
</li><li>Укажите <strong>Сервер IMAP</strong>, например, <strong>imap.Server.net</strong>, <strong>Порт</strong>, например, <strong>993</strong>.
<ul><li>С помощью переключателя укажите, когда будет производиться <strong>Шифрование</strong>:
<ul><li><strong>Авто</strong>;
</li><li><strong>Всегда (SSL)</strong>.</li></ul></li></ul></li><li>При необходимости включите флажок <strong>Требуется авторизация</strong>, с помощью переключателя выберите, на каком сервере:
<ul><li>на сервере исходящей почты (SMTP):
<ul><li>Укажите <strong>Имя пользователя</strong> учетной записи в формате <a href="mailto:User@Server.net">User@Server.net</a>, он может отличаться от основного, в таком случае он будет предназначен только для отправки писем.
</li><li>При необходимости введите <strong>Пароль</strong> учетной записи (если он не введен, программа запрашивает его при отправке писем). </li></ul></li><li>на сервере входящей почты (POP).</li></ul></li><li>При необходимости включите флажок <strong>Отправлять скрытые копии писем на этот адрес</strong>. </li></ul><h3>Получение писем (настройка сервера входящей почты) </h3>
<ul><li>Укажите <strong>Имя пользователя</strong> учетной записи в формате <a href="mailto:User@Server.net">User@Server.net</a>, он может отличаться от основного, в таком случае он будет предназначен только для получения писем.
</li><li>При необходимости введите <strong>Пароль</strong> учетной записи (если он не введен, программа запрашивает его для получения писем). </li></ul><ul><li>Выберите <strong>Протокол</strong> сервера входящей почты: <strong>POP</strong> или <strong>IMAP</strong>.
</li><li>В поле <strong>Сервер</strong> укажите адрес POP3 сервера, например, "imap.Server.net". 
</li><li>Укажите <strong>Порт</strong> компьютера для получения входящей почты, например, 993.
</li><li>Выберите, когда производить <strong>Шифрование</strong>:
</li><li><strong>Всегда (SSL)</strong>.</li></ul></li></ul></li><li>Укажите <strong>Сервер SMTP</strong>, например, <strong>smtp.Server.net</strong>, <strong>Порт</strong>, например, <strong>465</strong>.
<ul><li>С помощью переключателя укажите, когда будет производиться <strong>Шифрование</strong>:
<ul><li><strong>Авто</strong>;
</li><li><strong>Всегда (SSL)</strong>.</li></ul></li><li>Если выбран протокол сервера входящей почты <strong>POP</strong>, можно изменить настройки хранения электронной почты на сервере:
<ul><li>Включите флажок <strong>Оставлять копии писем на сервере</strong>, для того чтобы программа не удалила письма в папке "Входящие" почтового ящика электронной почты. По умолчанию флажок отключен, в этом случае все письма после получения будут удалены с почтового сервера. После этого стаовится доступным флажок:
<ul><li>Определите срок хранения писем на почтовом сервере с помощью флажка <strong>Удалять письма с сервера через</strong> - например, через "10 дней".</li></ul></li></ul></li></ul><h3>Прочие настройки</h3>
<ul><li>Укажите <strong>Длительность ожидания сервера</strong> - например, "30 сек".</li></ul><h3>Проверка настроек</h3>
</li><li><strong>Всегда (SSL)</strong>.</li></ul></li></ul></li><li>При необходимости включите флажок <strong>При отправке писем требуется авторизация на сервере исходящей почты (SMTP)</strong>.</li></ul><h3><a name="#pop">Настройки сервера POP</a> </h3>
<ul><li>Укажите <strong>Логин</strong> учетной записи в формате <strong>User@Server.net</strong>, введите <strong>Пароль</strong> учетной записи.
</li><li>Включите флажок <strong>Оставлять копии писем на сервере</strong>, для того чтобы программа не удалила письма в папке "Входящие" почтового ящика электронной почты. По умолчанию флажок отключен, в этом случае все письма после получения будут удалены с почтового сервера. После этого становится доступным флажок:
<ul><li>Определите срок хранения писем на почтовом сервере с помощью флажка <strong>Удалять письма с сервера через</strong> - например, через "10 дней".</li></ul></li><li>Укажите <strong>Сервер POP</strong>, например, <strong>pop.Server.net</strong>, укажите <strong>Порт</strong>, например, <strong>995</strong>.
<ul><li>Выберите, когда производить <strong>Шифрование</strong>:
<ul><li>
<div><strong>Авто</strong>; </div>
</li><li>
<p><strong>Всегда (SSL)</strong>.</p></li></ul></li></ul></li><li>
<p>Укажите <strong>Сервер SMTP</strong>, например, <strong>smtp.Server.net</strong>, <strong>Порт</strong>, например, <strong>465</strong>. </p>
</li><li>
<p>С помощью переключателя укажите, когда будет производиться <strong>Шифрование</strong>: </p>
<ul><li><strong>Авто</strong>;
</li><li><strong>Всегда (SSL)</strong>.</li></ul></li><li><strong>При необходимости включите флажок Отправлять скрытые копии писем на этот адрес</strong>.
</li><li>При необходимости включите флажок <strong>При отправке писем требуется авторизация</strong>, выберите с помощью переключателя:
<ul><li><strong>на сервере исходящей почты (SMTP)</strong>;
</li><li><strong>на сервере входящей почты (POP)</strong>.</li></ul></li></ul><h3>Проверка настроек</h3>
<ul><li>
<p>Нажмите <strong>Проверить настройки</strong> для проверки введенных параметров учетной записи.</p>
</li><li>
@@ -19,7 +19,7 @@
</li><li><strong>Только для меня</strong>.</li></ul></li><li>Укажите <strong>Имя отправителя</strong> (Ваше имя или название организации);
</li><li>С помощью переключателя определите способ создания учетной записи:
<ul><li><strong>Определить параметры подключения автоматически</strong> (рекомендуется);
<ul><li>Нажмите <strong>Создать</strong>. Программа предпримет попытку автоматической настройки и проверки учетной записи. Следуйте указаниям программы. При этом если при автоматической настройке произошел сбой, можно попытаться настроить параметры вручную (см. ниже). </li></ul></li><li><strong>Настроить параметры подключения вручную</strong>;</li></ul></li><li>
<ul><li>Нажмите <strong>Создать</strong>. Программа предпримет попытку автоматической настройки и проверки учетной записи. Следуйте указаниям программы. При этом если при автоматической настройке произошел сбой, можно попытаться настроить параметры вручную. </li></ul></li><li><strong>Настроить параметры подключения вручную</strong>;</li></ul></li><li>
<p>Нажмите <strong>Далее</strong> для заполнения остальных параметров, при этом программа проставляет рекомендуемые параметры для большинства почтовых серверов. Их требуется только проверить и попытаться сохранить учетную запись заново.</p></li></ul></li></ul><h3>Настройка учетной записи электронной почты</h3>
<ul><li>Нажмите <img src="StdPicture.Change" width="16" height="16"></img> <strong>Изменить</strong>, с помощью программы произведите необходимые <a href="Catalog.УчетныеЗаписиЭлектроннойПочты.Form.ФормаЭлемента/Help">настройки</a>.</li></ul><h3>Проверка учетной записи электронной почты</h3>
<ul><li>
@@ -163,7 +163,7 @@
Путь = ФайлПеренесенный.ПолноеИмя + ПолучитьРазделительПути();
НайденныеФайлы = НайтиФайлы(Путь, "*.*");
НайденныеФайлы = НайтиФайлы(Путь, ПолучитьМаскуВсеФайлы());
ФайлСортированные = Новый Массив;
@@ -244,7 +244,7 @@
Процедура ОбновитьТекущееСостояниеРабочегоКаталога()
#Если НЕ ВебКлиент Тогда
МассивФайлов = НайтиФайлы(РабочийКаталогПользователя, "*.*");
МассивФайлов = НайтиФайлы(РабочийКаталогПользователя, ПолучитьМаскуВсеФайлы());
РазмерФайловВРабочемКаталоге = 0;
КоличествоСуммарное = 0;
@@ -9,7 +9,7 @@
<div>Заполните поле <strong>Тема</strong>;</div>
</li><li>Напишите текст письма. Для форматирования текста можно использовать стандартные команды форматирования. Часть наиболее используемых выведена над текстом письма в виде значков, остальные можно найти в меню <strong>Еще</strong>;
</li><li>Для того чтобы вложить в почтовое сообщение дополнительный файлы, нажмите <img src="CommonPicture.Скрепка"></img> <strong>Приложить файл</strong>.
<ul><li>Для удаления вложения выделите его и нажмите клавишу <strong>Del</strong>.</li></ul></li><li>Автоматически программой будет предложена <a href="Catalog.УчетныеЗаписиЭлектроннойПочты.Form.ФормаЭлемента/Help">учетная запись</a>, настроенная для автоматического получения и отправки писем.
<ul><li>Для удаления вложения выделите его и нажмите клавишу <strong>Del</strong>.</li></ul></li><li>В поле <strong>От</strong> автоматически программой будет предложена <a href="Catalog.УчетныеЗаписиЭлектроннойПочты.Form.ФормаЭлемента/Help">учетная запись</a>, настроенная для автоматического получения и отправки писем.
</li><li>В поле <strong>Адрес ответа</strong> можно задать e-mail адрес, на который получатели письма будут отправлять ответ. Это поле нужно заполнять в том случае, если входящая корреспонденция системной учетной записи не просматривается (например, если учетная запись предназначена только для отправки).</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>
@@ -555,6 +555,28 @@
КонецЕсли;
ОбработатьИнтерфейсРолей("ЗаполнитьРоли", Запрос.Выполнить().Выгрузить());
Отбор = Новый Структура("Роль", "ПолныеПрава");
Если ПрочитанныеРоли.НайтиСтроки(Отбор).Количество() > 0 Тогда
Отбор = Новый Структура("Роль", "АдминистраторСистемы");
ЕстьРольАдминистраторСистемы = ПрочитанныеРоли.НайтиСтроки(Отбор).Количество() > 0;
Отбор = Новый Структура("Роль", "ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок");
ЕстьРольИнтерактивноеОткрытиеВнешнихОтчетовИОбработок = ПрочитанныеРоли.НайтиСтроки(Отбор).Количество() > 0;
ПрочитанныеРоли.Очистить();
ПрочитанныеРоли.Добавить().Роль = "ПолныеПрава";
Если ЕстьРольАдминистраторСистемы Тогда
ПрочитанныеРоли.Добавить().Роль = "АдминистраторСистемы";
КонецЕсли;
Если ЕстьРольИнтерактивноеОткрытиеВнешнихОтчетовИОбработок Тогда
ПрочитанныеРоли.Добавить().Роль = "ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок";
КонецЕсли;
КонецЕсли;
ОбработатьИнтерфейсРолей("ОбновитьДеревоРолей");
КонецПроцедуры
@@ -814,42 +814,6 @@
КонецФункции
Процедура СписокЗемельныхУчастковИзЗагруженныхСведений(Знач ВариантыЗемельныхУчастков, Знач ИдентификаторАдресногоОбъекта, Знач СтрокаПоиска, Знач ТочноеСовпадение)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЗемельныеУчастки.Участки КАК Участки,
| ЕСТЬNULL(ДополнительныеСведения.ОКТМО, """") КАК ОКТМО,
| ЕСТЬNULL(ДополнительныеСведения.ПочтовыйИндекс, """") КАК ПочтовыйИндекс,
| ЕСТЬNULL(ДополнительныеСведения.КодИФНСФЛ, """") КАК КодИФНСФЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодИФНСЮЛ, """") КАК КодИФНСЮЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодУчасткаИФНСФЛ, """") КАК КодУчасткаИФНСФЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодУчасткаИФНСЮЛ, """") КАК КодУчасткаИФНСЮЛ,
| ЕСТЬNULL(ДополнительныеСведения.OKATO, """") КАК ОКАТО,
| ЕСТЬNULL(АдресныеОбъекты.КодКЛАДР, """") КАК КодКЛАДР
|ИЗ
| РегистрСведений.ЗемельныеУчастки КАК ЗемельныеУчастки
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеСведения
| ПО (ДополнительныеСведения.Идентификатор = ЗемельныеУчастки.ДополнительныеАдресныеСведения)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты
| ПО (АдресныеОбъекты.Идентификатор = ЗемельныеУчастки.АдресныйОбъект)
|ГДЕ
| ЗемельныеУчастки.АдресныйОбъект = &АдресныйОбъект";
Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта);
Запись = Запрос.Выполнить().Выбрать();
Пока Запись.Следующий() Цикл
Если ЗначениеЗаполнено(Запись.Участки) Тогда
Описание = Запись.Участки.Получить();
Если ЗначениеЗаполнено(Описание) Тогда
ИзвлечьСписокЗемельныхУчастков(Описание, СтрокаПоиска, ВариантыЗемельныхУчастков, Запись, ТочноеСовпадение);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
// Возвращает актуальные данные адресного объекта или ориентира с точностью доя подчиненного (без домов).
//
// Параметры:
@@ -1096,7 +1060,10 @@
ИначеЕсли ЭтоКонтактнаяИнформацияВФорматеКлючЗначение(Адрес) Тогда
АдресСтруктура = КонтактнаяИнформацияВФорматеКлючЗначениеВJSON(Адрес);
Иначе
ВызватьИсключение НСтр("ru = 'Передано недопустимое значение Адреса для метода АдресныйКлассификаторСлужебный.КодыАдреса.'");
ОписаниеПричиныОшибки = НСтр("ru = 'Передано недопустимое значение адреса в функцию получения кодов адреса'");
ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
УровеньЖурналаРегистрации.Предупреждение,,Адрес, ОписаниеПричиныОшибки);
Возврат КонструкторКодовАдреса();
КонецЕсли;
ИдентификаторАдресногоОбъекта = "";
@@ -1119,11 +1086,9 @@
//
Функция КодыАдресаИКодыКЛАДР(Знач Адрес, Знач ИдентификаторАдресногоОбъекта = "", Источник = Неопределено) Экспорт
КодКЛАДРЗаполнены = Ложь;
Результат = Новый Структура();
Результат.Вставить("КодыКЛАДР", СтруктураКодовКЛАДРПоУровням());
Результат.Вставить("КодыАдреса", СтруктураКодовАдреса());
Результат = КонструкторКодовАдреса();
КодКЛАДРЗаполнены = Ложь;
ЗагруженныеАдресныеСведения = АдресныйКлассификаторПовтИсп.СведенияОЗагрузкеСубъектовРФ();
КешДомов = Новый Структура("НомерКорпуса, НомерСтроения, ТипСтроения");
@@ -4478,9 +4443,22 @@
КонецФункции
Функция СтруктураКодовАдреса()
Функция КонструкторКодовАдреса()
Коды = Новый Структура();
Результат = Новый Структура;
КодыКЛАДР = Новый Структура;
КодыКЛАДР.Вставить("Регион");
КодыКЛАДР.Вставить("Округ");
КодыКЛАДР.Вставить("Район");
КодыКЛАДР.Вставить("Город");
КодыКЛАДР.Вставить("ВнутригородскойРайон");
КодыКЛАДР.Вставить("НаселенныйПункт");
КодыКЛАДР.Вставить("Улица");
Результат.Вставить("КодыКЛАДР", КодыКЛАДР);
Коды = Новый Структура;
Коды.Вставить("КодКЛАДР", "");
Коды.Вставить("Идентификатор", "");
Коды.Вставить("ИдентификаторДома", "");
@@ -4491,12 +4469,10 @@
Коды.Вставить("КодУчасткаИФНСФЛ", "");
Коды.Вставить("КодУчасткаИФНСЮЛ", "");
Возврат Коды;
Результат.Вставить("КодыАдреса", Коды);
КонецФункции
Возврат Результат;
Функция СтруктураКодовКЛАДРПоУровням()
Возврат Новый Структура("Регион, Округ, Район, Город, ВнутригородскойРайон, НаселенныйПункт, Улица");
КонецФункции
Функция ПараметрыАутентификацииНаСайте() Экспорт
@@ -7618,6 +7594,42 @@
КонецПроцедуры
Процедура СписокЗемельныхУчастковИзЗагруженныхСведений(Знач ВариантыЗемельныхУчастков, Знач ИдентификаторАдресногоОбъекта, Знач СтрокаПоиска, Знач ТочноеСовпадение)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЗемельныеУчастки.Участки КАК Участки,
| ЕСТЬNULL(ДополнительныеСведения.ОКТМО, """") КАК ОКТМО,
| ЕСТЬNULL(ДополнительныеСведения.ПочтовыйИндекс, """") КАК ПочтовыйИндекс,
| ЕСТЬNULL(ДополнительныеСведения.КодИФНСФЛ, """") КАК КодИФНСФЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодИФНСЮЛ, """") КАК КодИФНСЮЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодУчасткаИФНСФЛ, """") КАК КодУчасткаИФНСФЛ,
| ЕСТЬNULL(ДополнительныеСведения.КодУчасткаИФНСЮЛ, """") КАК КодУчасткаИФНСЮЛ,
| ЕСТЬNULL(ДополнительныеСведения.OKATO, """") КАК ОКАТО,
| ЕСТЬNULL(АдресныеОбъекты.КодКЛАДР, """") КАК КодКЛАДР
|ИЗ
| РегистрСведений.ЗемельныеУчастки КАК ЗемельныеУчастки
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеСведения
| ПО (ДополнительныеСведения.Идентификатор = ЗемельныеУчастки.ДополнительныеАдресныеСведения)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты
| ПО (АдресныеОбъекты.Идентификатор = ЗемельныеУчастки.АдресныйОбъект)
|ГДЕ
| ЗемельныеУчастки.АдресныйОбъект = &АдресныйОбъект";
Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта);
Запись = Запрос.Выполнить().Выбрать();
Пока Запись.Следующий() Цикл
Если ЗначениеЗаполнено(Запись.Участки) Тогда
Описание = Запись.Участки.Получить();
Если ЗначениеЗаполнено(Описание) Тогда
ИзвлечьСписокЗемельныхУчастков(Описание, СтрокаПоиска, ВариантыЗемельныхУчастков, Запись, ТочноеСовпадение);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@@ -4019,8 +4019,9 @@
ВариантОбъект.Родитель = ОписаниеВарианта.ВариантРодитель;
РазмещениеВарианта = Новый Массив;
Для каждого Раздел Из ОписаниеВарианта.Размещение Цикл
РазмещениеВарианта.Добавить(Раздел.Ключ);
Для Каждого Раздел Из ОписаниеВарианта.Размещение Цикл
ПолноеИмя = ?(ТипЗнч(Раздел.Ключ) = Тип("Строка"), Раздел.Ключ, Раздел.Ключ.ПолноеИмя());
РазмещениеВарианта.Добавить(ПолноеИмя);
КонецЦикла;
ИдентификаторыПодсистем = ОбщегоНазначения.ИдентификаторыОбъектовМетаданных(РазмещениеВарианта);
Для Каждого РазмещениеОтчета Из ОписаниеВарианта.Размещение Цикл
@@ -156,6 +156,24 @@
ОткрытьФорму("Справочник.ВариантыОтчетов.ФормаОбъекта", ПараметрыФормы);
КонецПроцедуры
// Открывает диалог настройки размещения нескольких вариантов в разделах.
//
// Параметры:
// Варианты - Массив - перемещаемые варианты отчетов (СправочникСсылка.ВариантыОтчетов).
// Владелец - УправляемаяФорма - для блокирования окна владельца.
//
Процедура ОткрытьДиалогРазмещенияВариантовВРазделах(Варианты, Владелец = Неопределено) Экспорт
Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() < 1 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов, которые необходимо разместить в разделах.'"));
Возврат;
КонецЕсли;
ПараметрыОткрытия = Новый Структура("Варианты", Варианты);
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.РазмещениеВРазделах", ПараметрыОткрытия, Владелец);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -200,24 +218,6 @@
СтрокаДерева.Модифицированность = Истина;
КонецПроцедуры
// Открывает диалог настройки размещения нескольких вариантов в разделах.
//
// Параметры:
// Варианты - Массив - перемещаемые варианты отчетов (СправочникСсылка.ВариантыОтчетов).
// Владелец - УправляемаяФорма - для блокирования окна владельца.
//
Процедура ОткрытьДиалогРазмещенияВариантовВРазделах(Варианты, Владелец = Неопределено) Экспорт
Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() < 1 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов, которые необходимо разместить в разделах.'"));
Возврат;
КонецЕсли;
ПараметрыОткрытия = Новый Структура("Варианты", Варианты);
ОткрытьФорму("Справочник.ВариантыОтчетов.Форма.РазмещениеВРазделах", ПараметрыОткрытия, Владелец);
КонецПроцедуры
// Аналог ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияМногострочногоТекста, работающий за 1 вызов.
// В отличие от ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария позволяет устанавливать свой заголовок
// и работает с реквизитами таблиц.
@@ -1927,6 +1927,29 @@
КонецПроцедуры
Процедура ОбновитьДатыСкрытияПерсональныхДанныхСубъектов(Субъекты) Экспорт
Если Не ИспользоватьСкрытиеПерсональныхДанныхСубъектов() Тогда
Возврат;
КонецЕсли;
Если Субъекты.Количество() = 0 Тогда
Возврат;
КонецЕсли;
НастройкиСубъектов = ПрочитатьНастройкиСкрытияСубъектов(Субъекты);
Для Каждого КлючИЗначение Из НастройкиСубъектов Цикл
Субъект = КлючИЗначение.Ключ;
НастройкиСубъекта = КлючИЗначение.Значение;
Если НастройкиСубъекта.Состояние = Перечисления.СостоянияСубъектовДляСкрытия.СкрытиеОтменено
Или НастройкиСубъекта.Состояние = Перечисления.СостоянияСубъектовДляСкрытия.СкрытиеВыполнено Тогда
Продолжить;
КонецЕсли;
ОбновитьНастройкиСкрытияСубъекта(Субъект);
КонецЦикла;
КонецПроцедуры
Функция ЗапросДанныеДействующихСогласий(Субъекты, Дата = Неопределено, ИсключаемыйРегистратор = Неопределено)
Запрос = Новый Запрос;
@@ -1023,10 +1023,14 @@
КалендарныеГрафикиПереопределяемый.ПриОбновленииПроизводственныхКалендарей(ТаблицаИзменений);
// Таблицу изменений включаем в состав дополнительных параметров для обновления областей данных.
ПараметрыОбновления = Новый Структура("ТаблицаИзменений");
ПараметрыОбновления.ТаблицаИзменений = ТаблицаИзменений;
ДополнительныеПараметры.Вставить(ИдентификаторКлассификатора(), ПараметрыОбновления);
Если Не ОбщегоНазначения.РазделениеВключено() Тогда
ЗаполнитьДанныеЗависимыеОтПроизводственныхКалендарей(ТаблицаИзменений);
Иначе
// Таблицу изменений включаем в состав дополнительных параметров для обновления областей данных.
ПараметрыОбновления = Новый Структура("ТаблицаИзменений");
ПараметрыОбновления.ТаблицаИзменений = ТаблицаИзменений;
ДополнительныеПараметры.Вставить(ИдентификаторКлассификатора(), ПараметрыОбновления);
КонецЕсли;
Обработан = Истина;
@@ -41,7 +41,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.0.2.164";
Описание.Версия = "3.0.2.175";
Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -207,7 +207,6 @@
// * ЭлементДополнительнойТерриторииСокращение - Строка - устаревшее свойство. Сокращение элемента дополнительной территории.
// * Здание - Структура - структура с информацией о здании адреса.
// ** ТипЗдания - Строка - тип объекта адресации адреса РФ согласно приказу Минфина России от 5.11.2015 г. N171н.
// ** Номер - Строка - текстовое представление номера дома (только для адресов РФ).
// * Корпуса - Массив - содержит структуры (поля структуры: ТипКорпуса, Номер) с перечнем корпусов адреса.
// * Помещения - Массив - содержит структуры (поля структуры: ТипПомещения, Номер) с перечнем помещений адреса.
@@ -2004,6 +2004,35 @@
КонецФункции
Процедура РегламентнаяСинхронизацияФайловWebdav(Параметры = Неопределено, АдресРезультата = Неопределено) Экспорт
ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.СинхронизацияФайлов);
УстановитьПривилегированныйРежим(Истина);
УдалитьНесинхронизируемыеФайлы();
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
| УчетныеЗаписиСинхронизацииФайлов.Ссылка,
| УчетныеЗаписиСинхронизацииФайлов.Сервис
|ИЗ
| РегистрСведений.НастройкиСинхронизацииФайлов КАК НастройкиСинхронизацииФайлов
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.УчетныеЗаписиСинхронизацииФайлов КАК УчетныеЗаписиСинхронизацииФайлов
| ПО НастройкиСинхронизацииФайлов.УчетнаяЗапись = УчетныеЗаписиСинхронизацииФайлов.Ссылка
|ГДЕ
| НЕ УчетныеЗаписиСинхронизацииФайлов.ПометкаУдаления
| И НастройкиСинхронизацииФайлов.Синхронизировать";
Результат = Запрос.Выполнить().Выгрузить();
Для каждого Выборка Из Результат Цикл
Если ПустаяСтрока(Выборка.Сервис) Тогда
Продолжить;
КонецЕсли;
СинхронизироватьФайлыСОблачнымСервисом(Выборка.Ссылка);
КонецЦикла;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Обмен файлами.
@@ -2132,7 +2161,7 @@
ZIP.Открыть(Параметры.ПутьКАрхивуСФайламиТомов);
ВременныеФайлы = Новый Массив;
ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, "*.*");
ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, ПолучитьМаскуВсеФайлы());
Для Каждого ВременныйФайл Из ВременныеФайлы Цикл
Если ВременныйФайл.ЭтоФайл() Тогда
@@ -2253,7 +2282,7 @@
ZIP.Открыть(ПутьZIP);
ВременныеФайлы = Новый Массив;
ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, "*.*");
ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, ПолучитьМаскуВсеФайлы());
Для Каждого ВременныйФайл Из ВременныеФайлы Цикл
Если ВременныйФайл.ЭтоФайл() Тогда
@@ -4693,7 +4722,7 @@
// Удаляем каталог файла, если после удаления файла каталог стал пустым.
Попытка
МассивФайловВКаталоге = НайтиФайлы(ФайлВременный.Путь, "*.*");
МассивФайловВКаталоге = НайтиФайлы(ФайлВременный.Путь, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() = 0 Тогда
УдалитьФайлы(ФайлВременный.Путь);
КонецЕсли;
@@ -5492,7 +5521,7 @@
УдалитьФайлы(ПолныйПуть);
КонецЕсли;
ПутьСПодкаталогом = ФайлНаДиске.Путь;
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, "*.*");
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() = 0 Тогда
УдалитьФайлы(ПутьСПодкаталогом);
КонецЕсли;
@@ -8454,35 +8483,6 @@
КонецФункции
Процедура РегламентнаяСинхронизацияФайловWebdav(Параметры = Неопределено, АдресРезультата = Неопределено) Экспорт
ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.СинхронизацияФайлов);
УстановитьПривилегированныйРежим(Истина);
УдалитьНесинхронизируемыеФайлы();
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
| УчетныеЗаписиСинхронизацииФайлов.Ссылка,
| УчетныеЗаписиСинхронизацииФайлов.Сервис
|ИЗ
| РегистрСведений.НастройкиСинхронизацииФайлов КАК НастройкиСинхронизацииФайлов
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.УчетныеЗаписиСинхронизацииФайлов КАК УчетныеЗаписиСинхронизацииФайлов
| ПО НастройкиСинхронизацииФайлов.УчетнаяЗапись = УчетныеЗаписиСинхронизацииФайлов.Ссылка
|ГДЕ
| НЕ УчетныеЗаписиСинхронизацииФайлов.ПометкаУдаления
| И НастройкиСинхронизацииФайлов.Синхронизировать";
Результат = Запрос.Выполнить().Выгрузить();
Для каждого Выборка Из Результат Цикл
Если ПустаяСтрока(Выборка.Сервис) Тогда
Продолжить;
КонецЕсли;
СинхронизироватьФайлыСОблачнымСервисом(Выборка.Ссылка);
КонецЦикла;
КонецПроцедуры
Процедура ВыполнитьПроверкуПодключения(УчетнаяЗапись, РезультатПроверки) Экспорт
РезультатПроверки = Новый Структура("РезультатТекст, РезультатПротокол, Отказ, КодОшибки","","",Ложь);
@@ -738,7 +738,7 @@
УдалитьФайлы(ПолныйПуть);
КонецЕсли;
ПутьСПодкаталогом = ФайлНаДиске.Путь;
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, "*.*");
МассивФайловВКаталоге = НайтиФайлы(ПутьСПодкаталогом, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() = 0 Тогда
УдалитьФайлы(ПутьСПодкаталогом);
КонецЕсли;
@@ -444,7 +444,7 @@
НовыйПуть = НовыйПуть + ПолучитьРазделительПути();
НовыйПуть = НовыйПуть + Строка(ВыбранныйФайл.Имя);
МассивФайловВКаталоге = НайтиФайлы(НовыйПуть, "*.*");
МассивФайловВКаталоге = НайтиФайлы(НовыйПуть, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() <> 0 Тогда
ОбходФайловРазмер(
@@ -4994,7 +4994,7 @@
ИмяКаталога = РабочийКаталогПользователя();
МассивФайлов = НайтиФайлы(ИмяКаталога, "*.*");
МассивФайлов = НайтиФайлы(ИмяКаталога, ПолучитьМаскуВсеФайлы());
РазмерФайловВРабочемКаталоге = 0;
КоличествоСуммарное = 0;
@@ -9062,7 +9062,7 @@
НовыйПуть = Строка(Путь);
НовыйПуть = НовыйПуть + ПолучитьРазделительПути();
НовыйПуть = НовыйПуть + Строка(ВыбранныйФайл.Имя);
МассивФайловВКаталоге = НайтиФайлы(НовыйПуть, "*.*");
МассивФайловВКаталоге = НайтиФайлы(НовыйПуть, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() <> 0 Тогда
ОбходФайловТаблица(НовыйПуть, МассивФайловВКаталоге, ТаблицаФайлов);
@@ -9282,7 +9282,7 @@
Если РабочийКаталогВладельца = Ложь Тогда
#Если Не ВебКлиент Тогда
МассивФайловВКаталоге = НайтиФайлы(ИмяКаталога, "*.*");
МассивФайловВКаталоге = НайтиФайлы(ИмяКаталога, ПолучитьМаскуВсеФайлы());
Если МассивФайловВКаталоге.Количество() <> 0 Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В выбранном рабочем каталоге
@@ -9381,7 +9381,7 @@
Функция НайтиФайлыПсевдо(Знач ПсевдоФайловаяСистема, Путь)
Если ПсевдоФайловаяСистема.Количество() = 0 Тогда
Файлы = НайтиФайлы(Путь, "*.*");
Файлы = НайтиФайлы(Путь, ПолучитьМаскуВсеФайлы());
Возврат Файлы;
КонецЕсли;
@@ -124,10 +124,15 @@
ИдентификаторИнформационнойБазы = Константы.ИдентификаторИнформационнойБазы.Получить();
Если ПустаяСтрока(ИдентификаторИнформационнойБазы) Тогда
ИдентификаторИнформационнойБазы = Строка(Новый УникальныйИдентификатор());
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина);
Константы.ИдентификаторИнформационнойБазы.Установить(ИдентификаторИнформационнойБазы);
УстановитьПривилегированныйРежим(Ложь);
УстановитьОтключениеБезопасногоРежима(Ложь);
КонецЕсли;
Возврат ИдентификаторИнформационнойБазы;
File diff suppressed because it is too large. Load diff
@@ -77,8 +77,14 @@
ОграниченияПрав = "";
ИнтеграцияПодсистемБСП.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(ОграниченияПрав);
УправлениеДоступомПереопределяемый.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(ОграниченияПрав);
Если ДляПроверки
Или Не УправлениеДоступомСлужебный.ОграничиватьДоступНаУровнеЗаписейУниверсально(Истина) Тогда
ИнтеграцияПодсистемБСП.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(ОграниченияПрав);
УправлениеДоступомПереопределяемый.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(ОграниченияПрав);
Иначе
ОграниченияПрав = УправлениеДоступомСлужебный.ВсеВидыОграниченийПравДляОтчетаПраваДоступа();
КонецЕсли;
Если ДляПроверки Тогда
Возврат ОграниченияПрав;
@@ -512,8 +518,9 @@
Хранилище.Вставить("ВедущиеСпискиПроверенные", Новый Соответствие);
Хранилище.Вставить("ОграниченияСписков", Новый Соответствие);
Хранилище.Вставить("ИдентификаторыТранзакции", Новый Соответствие);
Хранилище.Вставить("ВсеВидыОграниченийПрав", Неопределено);
Возврат Новый ФиксированнаяСтруктура(Хранилище);
Возврат Хранилище;
КонецФункции
@@ -252,7 +252,7 @@
КонецЕсли;
ДанныеВыбора = ЗаполнитьДанныеВыбораАвтоподбораПоСтранам(Параметры);
СтандартнаяОбработка = (ДанныеВыбора.Количество() = 0);
СтандартнаяОбработка = Ложь;
КонецПроцедуры
@@ -1823,27 +1823,29 @@
ДанныеВыбора = Новый СписокЗначений;
// Будем имитировать поведение платформы - поиск по всем доступным полям поиска с формированием подобного списка.
// Подразумеваем, что поля справочника и классификатора совпадают, за исключением отсутствующего в классификаторе поля
// "Ссылка".
// Подразумеваем, что поля справочника и классификатора совпадают, за исключением отсутствующего в классификаторе поля "Ссылка".
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
ПрефиксПараметраОтбора = "ПараметрыОтбора";
ПоляОтбора = Новый Массив;
ПоляОтбора.Добавить("Код");
ПоляОтбора.Добавить("Наименование");
// Общий отбор по параметрам
ШаблонОтбора = "ИСТИНА";
Отборы = Новый Массив;
Для Каждого КлючЗначение Из Параметры.Отбор Цикл
ЗначениеПоля = КлючЗначение.Значение;
ИмяПоля = КлючЗначение.Ключ;
ИмяПараметра = ПрефиксПараметраОтбора + ИмяПоля;
Если ТипЗнч(ЗначениеПоля)=Тип("Массив") Тогда
ШаблонОтбора = ШаблонОтбора + " И %1." + ИмяПоля + " В (&" + ИмяПараметра + ")";
Если ТипЗнч(ЗначениеПоля) = Тип("Массив") Или ТипЗнч(ЗначениеПоля) = Тип("ФиксированныйМассив") Тогда
Отборы.Добавить(" %1." + ИмяПоля + " В (&" + ИмяПараметра + ")");
Иначе
ШаблонОтбора = ШаблонОтбора + " И %1." + ИмяПоля + " = &" + ИмяПараметра;
Отборы.Добавить(" %1." + ИмяПоля + " = &" + ИмяПараметра);
КонецЕсли;
ПоляОтбора.Добавить(ИмяПоля);
Запрос.УстановитьПараметр(ИмяПараметра, КлючЗначение.Значение);
КонецЦикла;
@@ -1851,14 +1853,15 @@
Если Параметры.Свойство("ВыборГруппИЭлементов") Тогда
Если Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Группы Тогда
ШаблонОтбора = ШаблонОтбора + " И %1.ЭтоГруппа";
Отборы.Добавить(" %1.ЭтоГруппа");
ИначеЕсли Параметры.ВыборГруппИЭлементов = ИспользованиеГруппИЭлементов.Элементы Тогда
ШаблонОтбора = ШаблонОтбора + " И (НЕ %1.ЭтоГруппа)";
Отборы.Добавить(" (НЕ %1.ЭтоГруппа)");
КонецЕсли;
КонецЕсли;
ШаблонОтбора = СтрСоединить(Отборы, " И ");
// Источники данных
Если (Параметры.Свойство("ТолькоДанныеКлассификатора") И Параметры.ТолькоДанныеКлассификатора) Тогда
@@ -1873,13 +1876,15 @@
|ИЗ
| Классификатор КАК Классификатор
|ГДЕ
| Классификатор.%1 ПОДОБНО &СтрокаПоиска
| И (
| " + СтрЗаменить(ШаблонОтбора, "%1", "Классификатор") + "
| )
|УПОРЯДОЧИТЬ ПО
| Классификатор.%1
|";
| Классификатор.%1 ПОДОБНО &СтрокаПоиска";
Если ЗначениеЗаполнено(ШаблонОтбора) Тогда
ШаблонЗапроса = ШаблонЗапроса + "
|И (
| " + СтрЗаменить(ШаблонОтбора, "%1", "Классификатор") + "
| )
|";
КонецЕсли;
Иначе
// Запрос и по справочнику и по классификатору.
ШаблонЗапроса = "
@@ -1903,69 +1908,81 @@
| Классификатор.Код = СтраныМира.Код
| И Классификатор.Наименование = СтраныМира.Наименование
|ГДЕ
| (СтраныМира.%1 ПОДОБНО &СтрокаПоиска ИЛИ Классификатор.%1 ПОДОБНО &СтрокаПоиска)
| И (" + СтрЗаменить(ШаблонОтбора, "%1", "Классификатор") + ")
| И (" + СтрЗаменить(ШаблонОтбора, "%1", "СтраныМира") + ")
|
|УПОРЯДОЧИТЬ ПО
| ЕСТЬNULL(СтраныМира.%1, Классификатор.%1)
|";
| (СтраныМира.%1 ПОДОБНО &СтрокаПоиска ИЛИ Классификатор.%1 ПОДОБНО &СтрокаПоиска)";
Если ЗначениеЗаполнено(ШаблонОтбора) Тогда
ШаблонЗапроса = ШаблонЗапроса + "
| И ((" + СтрЗаменить(ШаблонОтбора, "%1", "Классификатор") + ")
| ИЛИ (" + СтрЗаменить(ШаблонОтбора, "%1", "СтраныМира") + "))
|
|";
КонецЕсли;
КонецЕсли;
ИменаПолей = ПоляПоиска();
ИменаПолей = ПоляПоиска(ПоляОтбора);
ИменаПолейСтрокой = СтрСоединить(ИменаПолей.ИменаПолейДляОтбораВКлассификаторе, ", ");
// Код + Наименование - ключевые поля соответствия справочника классификатору. Их обрабатываем всегда.
Если ЗначениеЗаполнено(ИменаПолей.ИменаПолейСтрокой) Тогда
ИменаПолейСтрокой = "," + ИменаПолей.ИменаПолейСтрокой;
КонецЕсли;
Запрос.Текст = "
|ВЫБРАТЬ
| Код, Наименование " + ИменаПолейСтрокой + "
ТекстЗапросаКлассификатор = "ВЫБРАТЬ
| " + ИменаПолейСтрокой + "
|ПОМЕСТИТЬ
| Классификатор
|ИЗ
| &Классификатор КАК Классификатор
|ИНДЕКСИРОВАТЬ ПО
| Код, Наименование
| " + ИменаПолейСтрокой + "
|";
Запрос.УстановитьПараметр("Классификатор", УправлениеКонтактнойИнформацией.ТаблицаКлассификатора());
Запрос.Выполнить();
Запрос.УстановитьПараметр("СтрокаПоиска", ЭкранироватьСимволыПодобия(Параметры.СтрокаПоиска) + "%");
НаборЗапросов = Новый Массив;
Для Каждого ДанныеПоля Из ИменаПолей.СписокПолей Цикл
ТекстЗапроса = СтрЗаменить(ШаблонЗапроса, "%1", ДанныеПоля.Имя);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%2", СтрЗаменить(ДанныеПоля.ШаблонПредставления, "%1", "Классификатор"));
Запрос.Текст = СтрЗаменить(ТекстЗапроса, "%3", СтрЗаменить(ДанныеПоля.ШаблонПредставления, "%1", "СтраныМира"));
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%3", СтрЗаменить(ДанныеПоля.ШаблонПредставления, "%1", "СтраныМира"));
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
НаборЗапросов.Добавить(ТекстЗапроса);
КонецЦикла;
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Если ЗначениеЗаполнено(Выборка.Ссылка) Тогда
// Данные справочника
ЭлементВыбора = Выборка.Ссылка;
Иначе
// Данные классификатора
РезультатВыбора = Новый Структура("Код, Наименование",
Выборка.Код, Выборка.Наименование);
Запрос.Текст = ТекстЗапросаКлассификатор + "
|;
|" + СтрСоединить(НаборЗапросов, " ОБЪЕДИНИТЬ ВСЕ ") + "
|УПОРЯДОЧИТЬ ПО Представление";
ЭлементВыбора = Новый Структура("Значение, ПометкаУдаления, Предупреждение",
РезультатВыбора, Выборка.ПометкаУдаления, Неопределено);
КонецЕсли;
Запрос.УстановитьПараметр("Классификатор", УправлениеКонтактнойИнформацией.ТаблицаКлассификатора());
Запрос.УстановитьПараметр("СтрокаПоиска", ЭкранироватьСимволыПодобия(Параметры.СтрокаПоиска) + "%");
ДанныеВыбора.Добавить(ЭлементВыбора, Выборка.Представление);
КонецЦикла;
РезультатЗапроса = Запрос.Выполнить();
Прервать;
Если РезультатЗапроса.Пустой() Тогда
Возврат ДанныеВыбора;
КонецЕсли;
ДлинаСтрокиПоиска = СтрДлина(Параметры.СтрокаПоиска);
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Если ЗначениеЗаполнено(Выборка.Ссылка) Тогда
// Данные справочника
ЭлементВыбора = Выборка.Ссылка;
Иначе
// Данные классификатора
РезультатВыбора = Новый Структура("Код, Наименование",
Выборка.Код, Выборка.Наименование);
ЭлементВыбора = Новый Структура("Значение, ПометкаУдаления, Предупреждение",
РезультатВыбора, Выборка.ПометкаУдаления, Неопределено);
КонецЕсли;
ВыделенныйТекст = Новый ФорматированнаяСтрока(Лев(Выборка.Представление, ДлинаСтрокиПоиска), Новый Шрифт(,, Истина), ЦветаСтиля.РезультатУспехЦвет);
Представление = Новый ФорматированнаяСтрока(ВыделенныйТекст, Сред(Выборка.Представление, ДлинаСтрокиПоиска + 1));
ДанныеВыбора.Добавить(ЭлементВыбора, Представление);
КонецЦикла;
Возврат ДанныеВыбора;
КонецФункции
// Возвращает поля поиска в порядке предпочтения для справочника стран мира.
//
// Возвращаемое значение:
@@ -1976,41 +1993,39 @@
// реквизитов,
// "%1" - заполнитель для передачи псевдонима таблицы.
//
Функция ПоляПоиска()
Функция ПоляПоиска(ПоляОтбора)
Результат = Новый Массив;
СписокПолей = Справочники.СтраныМира.ПустаяСсылка().Метаданные().ВводПоСтроке;
ГраницаПолей = СписокПолей.Количество() - 1;
ИменаПолейПоиска = Новый Массив;
ПредставлениеРазделителя = ", ";
РазделительПредставлений = " + """ + ПредставлениеРазделителя + """ + ";
Для Индекс=0 По ГраницаПолей Цикл
Для Индекс = 0 По ГраницаПолей Цикл
ИмяПоля = СписокПолей[Индекс].Имя;
Если СтрСравнить(ИмяПоля, "Наименование") <> 0 И СтрСравнить(ИмяПоля, "Код") <> 0 Тогда
ИменаПолейПоиска.Добавить(ИмяПоля);
Если ПоляОтбора.Найти(ИмяПоля) = Неопределено Тогда
ПоляОтбора.Добавить(ИмяПоля);
КонецЕсли;
ШаблонПредставления = "%1." + ИмяПоля;
ОстальныеПоля = "";
Для Позиция=0 По ГраницаПолей Цикл
ОстальныеПоля = Новый Массив;
Для Позиция = 0 По ГраницаПолей Цикл
Если Позиция <> Индекс Тогда
ОстальныеПоля = ОстальныеПоля + РазделительПредставлений + СписокПолей[Позиция].Имя;
ОстальныеПоля.Добавить("%1." + СписокПолей[Позиция].Имя);
КонецЕсли;
КонецЦикла;
Если Не ПустаяСтрока(ОстальныеПоля) Тогда
Если ОстальныеПоля.Количество() > 0 Тогда
ШаблонПредставления = ШаблонПредставления
+ " + "" ("" + "
+ "%1." + Сред(ОстальныеПоля, СтрДлина(РазделительПредставлений) + 1)
+ " + "")""";
+ " + "" ("" + " + СтрСоединить(ОстальныеПоля, " + "", "" + ") + " + "")""";
КонецЕсли;
Результат.Добавить(
Новый Структура("Имя, ШаблонПредставления", ИмяПоля, ШаблонПредставления));
КонецЦикла;
Возврат Новый Структура("СписокПолей, ИменаПолейСтрокой", Результат, СтрСоединить(ИменаПолейПоиска,","));
Возврат Новый Структура("СписокПолей, ИменаПолейДляОтбораВКлассификаторе", Результат, ПоляОтбора);
КонецФункции
// Экранирует символы для использования в функции запроса ПОДОБНО.
@@ -1121,6 +1121,7 @@
ТаблицаДопРеквизитов = Новый ТаблицаЗначений;
ТаблицаДопРеквизитов.Колонки.Добавить("Свойство", Новый ОписаниеТипов("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения"));
ТаблицаДопРеквизитов.Колонки.Добавить("Значение");
ТаблицаДопРеквизитов.Колонки.Добавить("ТекстоваяСтрока");
ТаблицаДопСведений = ТаблицаДопРеквизитов.СкопироватьКолонки();
@@ -1129,6 +1130,11 @@
НоваяСтрока = ТаблицаДопСведений.Добавить();
Иначе
НоваяСтрока = ТаблицаДопРеквизитов.Добавить();
Если ТипЗнч(СтрокаТаблицыСвойств.Значение) = Тип("Строка")
И СтрДлина(СтрокаТаблицыСвойств.Значение) > 1024 Тогда
НоваяСтрока.ТекстоваяСтрока = СтрокаТаблицыСвойств.Значение;
КонецЕсли;
КонецЕсли;
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаТаблицыСвойств, "Свойство,Значение");
КонецЦикла;
@@ -1164,7 +1170,7 @@
Иначе
СтрокаСвойства = ВладелецСвойствОбъект.ДополнительныеРеквизиты.Добавить();
КонецЕсли;
ЗаполнитьЗначенияСвойств(СтрокаСвойства, ДопРеквизит, "Свойство,Значение");
ЗаполнитьЗначенияСвойств(СтрокаСвойства, ДопРеквизит, "Свойство,Значение,ТекстоваяСтрока");
КонецЦикла;
ВладелецСвойствОбъект.Записать();
КонецЕсли;
@@ -182,6 +182,12 @@
Обработчик.Процедура = "УправлениеСвойствамиСлужебный.ЗаполнитьНовыеСвойстваДополнительныхРеквизитовИСведений";
Обработчик.РежимВыполнения = "Монопольно";
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "2.3.1.21";
Обработчик.Процедура = "УправлениеСвойствамиСлужебный.УстановитьЗначениеПризнакаИспользуется";
Обработчик.РежимВыполнения = "Оперативно";
Обработчик.НачальноеЗаполнение = Истина;
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "3.0.1.101";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("ecd6aad4-4b04-43be-82bc-cd4f563beb0b");
@@ -1766,4 +1772,30 @@
КонецПроцедуры
// Устанавливает значения свойства Используется в значение Истина.
//
Процедура УстановитьЗначениеПризнакаИспользуется() Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| НаборыДополнительныхРеквизитовИСведений.Ссылка
|ИЗ
| Справочник.НаборыДополнительныхРеквизитовИСведений КАК НаборыДополнительныхРеквизитовИСведений
|ГДЕ
| НЕ НаборыДополнительныхРеквизитовИСведений.Используется";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
НаборОбъект = Выборка.Ссылка.ПолучитьОбъект();
НаборОбъект.Используется = Истина;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборОбъект);
КонецЦикла;
КонецПроцедуры
#КонецОбласти
@@ -773,14 +773,11 @@
#Иначе
ПозицияРасширения = СтрНайти(ИмяФайла, ".");
Пока ПозицияРасширения > 0 Цикл
ИмяФайла = Сред(ИмяФайла, ПозицияРасширения + 1);
ПозицияРасширения = СтрНайти(ИмяФайла, ".");
КонецЦикла;
Возврат ПолучитьИмяВременногоФайла(ИмяФайла);
Если ПозицияРасширения = 0 Тогда
Возврат ПолучитьИмяВременногоФайла(ИмяФайла);
Иначе
Возврат КаталогВременныхФайлов() + ИмяФайла;
КонецЕсли;
#КонецЕсли
@@ -47,9 +47,11 @@
// См. ОчередьЗаданийПереопределяемый.ПриОпределенииПсевдонимовОбработчиков.
Процедура ПриОпределенииПсевдонимовОбработчиков(СоответствиеИменПсевдонимам) Экспорт
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.ИзвлечьТекстИзФайлов");
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.ОчиститьНенужныеФайлы");
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.РегламентнаяСинхронизацияФайловWebdav");
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.ИзвлечьТекстИзФайлов");
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.ОчиститьНенужныеФайлы");
СоответствиеИменПсевдонимам.Вставить("РаботаСФайламиСлужебный.РегламентнаяСинхронизацияФайловWebdav");
КонецЕсли;
КонецПроцедуры
@@ -614,6 +614,8 @@
Свойства.Вставить("Организация");
Свойства.Вставить("Подразделение");
Свойства.Вставить("ЭлектроннаяПочта");
Свойства.Вставить("Фамилия");
Свойства.Вставить("Имя");
Если Субъект.Свойство("CN") Тогда
Свойства.ОбщееИмя = ПодготовитьСтроку(Субъект.CN);
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="046e6f4f-3d92-4b20-b19f-fca608fa0f11">
<name>ОжидаемаяДлительнаяОперация16</name>
<synonym>
<key>ru</key>
<value>Ожидаемая длительная операция 16</value>
</synonym>
</mdclass:CommonPicture>
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="74bea66f-15bf-48de-9ff9-f9c35a8bf5cc">
<name>ОжидаемаяДлительнаяОперация48</name>
<synonym>
<key>ru</key>
<value>Ожидаемая длительная операция 48</value>
</synonym>
</mdclass:CommonPicture>
+11 -9
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d6699c7b-2376-4408-b59d-50fbfb1589a9">
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="1a36fc97-34b5-4217-ab6b-10c65b205d1c">
<name>БиблиотекаСтандартныхПодсистем</name>
<synonym>
<key>ru</key>
<value>Библиотека стандартных подсистем, редакция 3.0</value>
</synonym>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="90ffad38-9d8f-44f0-8da4-b8801a33f9ca"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="3b046a4e-3332-45d8-995a-46163d0dc373"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="ccd67260-4a4d-418b-90dc-1c4c5528a3b6"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="fe0b7538-5d5a-4064-b12e-706cb3f6f992"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="d9fd6d51-eee8-48c6-9fe9-18716ec9e6c8"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="e42e2dbc-59e4-496e-8c4c-0198325102b0"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="63d144ef-5bf2-4e1c-97e1-232e9857e2e7"/>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="214d93d1-1a21-45ee-bccf-e4a5ca2c2f6e"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="8d91c54c-bd67-4804-8bf7-5b24c48b7911"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="cba24267-b478-4297-a0d6-f48ed76f0dc5"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="855a4cde-2e5c-4e3d-9982-73a57e2a7d9b"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="a910b8a0-bfc8-4bbe-a95f-f996f885a8d5"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="e76877af-dfa8-4ce1-ad4a-0ae5dd402228"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="0f4e8505-b194-4e9c-ad39-b3c2eb96d82a"/>
<defaultRunMode>ManagedApplication</defaultRunMode>
<usePurposes>PersonalComputer</usePurposes>
<scriptVariant>Russian</scriptVariant>
@@ -19,7 +19,7 @@
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
<vendor>Фирма &quot;1С&quot;</vendor>
<version>3.0.2.164</version>
<version>3.0.2.175</version>
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
<includeHelpInContents>true</includeHelpInContents>
<usedMobileApplicationFunctionalities>
@@ -249,6 +249,8 @@
<commonPictures>CommonPicture.ОбновлениеВнешнихКомпонентССайта</commonPictures>
<commonPictures>CommonPicture.ОбъединитьЯчейки</commonPictures>
<commonPictures>CommonPicture.ОбычныйДоступСФлажком</commonPictures>
<commonPictures>CommonPicture.ОжидаемаяДлительнаяОперация16</commonPictures>
<commonPictures>CommonPicture.ОжидаемаяДлительнаяОперация48</commonPictures>
<commonPictures>CommonPicture.ОпубликоватьФайл</commonPictures>
<commonPictures>CommonPicture.Органайзер</commonPictures>
<commonPictures>CommonPicture.ОсвободитьФайл</commonPictures>
@@ -1 +1 @@
{6,1,1,96b50267-732e-4538-a569-97860726a2e6,1,dfde0fba-cffa-4ea4-be72-51e95fd62fd1,"3.0.2.164","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5990,1,0,d6699c7b-2376-4408-b59d-50fbfb1589a9,d6699c7b-2376-4408-b59d-50fbfb1589a9,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,c27472ee-879a-4746-9d21-122738ec80b7,c27472ee-879a-4746-9d21-122738ec80b7,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8Line truncated
{6,1,1,6e88fa62-110f-4630-ad28-c4e209b729fa,1,7dc63f5c-4172-4ed0-9e51-f98a078070db,"3.0.2.175","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5992,1,0,1a36fc97-34b5-4217-ab6b-10c65b205d1c,1a36fc97-34b5-4217-ab6b-10c65b205d1c,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,c27472ee-879a-4746-9d21-122738ec80b7,c27472ee-879a-4746-9d21-122738ec80b7,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8Line truncated
@@ -45,7 +45,7 @@
Функция ВерсияКалендарей() Экспорт
Возврат 21;
Возврат 23;
КонецФункции
@@ -57,7 +57,7 @@
Функция ВерсияОбновленияДанныхПроизводственныхКалендарей() Экспорт
Возврат "3.0.2.144";
Возврат "3.0.2.167";
КонецФункции
@@ -17,6 +17,7 @@
<Item Calendar="01" Year="2019" DayType="Предпраздничный" Date="20191004" SwapDate=""/>
<Item Calendar="01" Year="2019" DayType="Праздник" Date="20191005" SwapDate="20191007"/>
<Item Calendar="01" Year="2019" DayType="Суббота" Date="20191007" SwapDate="20191005"/>
<Item Calendar="01" Year="2020" DayType="Праздник" Date="20201005" SwapDate=""/>
<Item Calendar="02" Year="2014" DayType="Праздник" Date="20140728" SwapDate=""/>
<Item Calendar="02" Year="2014" DayType="Предпраздничный" Date="20141003" SwapDate=""/>
<Item Calendar="02" Year="2014" DayType="Праздник" Date="20141004" SwapDate="20141006"/>
@@ -53,6 +54,8 @@
<Item Calendar="02" Year="2019" DayType="Воскресенье" Date="20190812" SwapDate="20190811"/>
<Item Calendar="02" Year="2019" DayType="Предпраздничный" Date="20191010" SwapDate=""/>
<Item Calendar="02" Year="2019" DayType="Праздник" Date="20191011" SwapDate=""/>
<Item Calendar="02" Year="2020" DayType="Праздник" Date="20201011" SwapDate="20201012"/>
<Item Calendar="02" Year="2020" DayType="Воскресенье" Date="20201012" SwapDate="20201011"/>
<Item Calendar="03" Year="2016" DayType="Предпраздничный" Date="20160208" SwapDate=""/>
<Item Calendar="03" Year="2016" DayType="Праздник" Date="20160209" SwapDate=""/>
<Item Calendar="03" Year="2017" DayType="Праздник" Date="20170227" SwapDate=""/>
@@ -60,6 +63,8 @@
<Item Calendar="03" Year="2018" DayType="Праздник" Date="20180216" SwapDate=""/>
<Item Calendar="03" Year="2019" DayType="Предпраздничный" Date="20190204" SwapDate=""/>
<Item Calendar="03" Year="2019" DayType="Праздник" Date="20190205" SwapDate=""/>
<Item Calendar="03" Year="2020" DayType="Праздник" Date="20200224" SwapDate="20200225"/>
<Item Calendar="03" Year="2020" DayType="Воскресенье" Date="20200225" SwapDate="20200224"/>
<Item Calendar="04" Year="2016" DayType="Праздник" Date="20160214" SwapDate="20160215"/>
<Item Calendar="04" Year="2016" DayType="Воскресенье" Date="20160215" SwapDate="20160214"/>
<Item Calendar="04" Year="2017" DayType="Предпраздничный" Date="20170203" SwapDate=""/>
@@ -103,6 +108,10 @@
<Item Calendar="05" Year="2019" DayType="Воскресенье" Date="20190812" SwapDate="20190811"/>
<Item Calendar="05" Year="2019" DayType="Праздник" Date="20190915" SwapDate="20190916"/>
<Item Calendar="05" Year="2019" DayType="Воскресенье" Date="20190916" SwapDate="20190915"/>
<Item Calendar="05" Year="2020" DayType="Праздник" Date="20200726" SwapDate="20200727"/>
<Item Calendar="05" Year="2020" DayType="Воскресенье" Date="20200727" SwapDate="20200726"/>
<Item Calendar="05" Year="2020" DayType="Предпраздничный" Date="20200914" SwapDate=""/>
<Item Calendar="05" Year="2020" DayType="Праздник" Date="20200915" SwapDate=""/>
<Item Calendar="06" Year="2016" DayType="Предпраздничный" Date="20160705" SwapDate=""/>
<Item Calendar="06" Year="2016" DayType="Праздник" Date="20160706" SwapDate=""/>
<Item Calendar="06" Year="2016" DayType="Праздник" Date="20160707" SwapDate=""/>
@@ -151,6 +160,10 @@
<Item Calendar="07" Year="2019" DayType="Воскресенье" Date="20190812" SwapDate="20190811"/>
<Item Calendar="07" Year="2019" DayType="Праздник" Date="20190901" SwapDate=""/>
<Item Calendar="07" Year="2019" DayType="Праздник" Date="20190920" SwapDate=""/>
<Item Calendar="07" Year="2020" DayType="Праздник" Date="20200328" SwapDate=""/>
<Item Calendar="07" Year="2020" DayType="Праздник" Date="20200521" SwapDate=""/>
<Item Calendar="07" Year="2020" DayType="Праздник" Date="20200901" SwapDate=""/>
<Item Calendar="07" Year="2020" DayType="Праздник" Date="20200920" SwapDate=""/>
<Item Calendar="08" Year="2016" DayType="Предпраздничный" Date="20160208" SwapDate=""/>
<Item Calendar="08" Year="2016" DayType="Праздник" Date="20160209" SwapDate=""/>
<Item Calendar="08" Year="2016" DayType="Предпраздничный" Date="20160404" SwapDate=""/>
@@ -187,6 +200,11 @@
<Item Calendar="08" Year="2019" DayType="Предпраздничный" Date="20191219" SwapDate=""/>
<Item Calendar="08" Year="2019" DayType="Праздник" Date="20191220" SwapDate=""/>
<Item Calendar="08" Year="2019" DayType="Нерабочий" Date="20191228" SwapDate=""/>
<Item Calendar="08" Year="2020" DayType="Праздник" Date="20200224" SwapDate="20200225"/>
<Item Calendar="08" Year="2020" DayType="Воскресенье" Date="20200225" SwapDate="20200224"/>
<Item Calendar="08" Year="2020" DayType="Праздник" Date="20200405" SwapDate="20200406"/>
<Item Calendar="08" Year="2020" DayType="Воскресенье" Date="20200406" SwapDate="20200405"/>
<Item Calendar="08" Year="2020" DayType="Нерабочий" Date="20201228" SwapDate=""/>
<Item Calendar="09" Year="2016" DayType="Праздник" Date="20160503" SwapDate="20160504"/>
<Item Calendar="09" Year="2016" DayType="Суббота" Date="20160504" SwapDate="20160503"/>
<Item Calendar="09" Year="2016" DayType="Нерабочий" Date="20160705" SwapDate=""/>
@@ -212,6 +230,9 @@
<Item Calendar="09" Year="2019" DayType="Предпраздничный" Date="20190906" SwapDate=""/>
<Item Calendar="09" Year="2019" DayType="Праздник" Date="20190907" SwapDate="20190909"/>
<Item Calendar="09" Year="2019" DayType="Суббота" Date="20190909" SwapDate="20190907"/>
<Item Calendar="09" Year="2020" DayType="Нерабочий" Date="20200428" SwapDate=""/>
<Item Calendar="09" Year="2020" DayType="Праздник" Date="20200503" SwapDate="20200505"/>
<Item Calendar="09" Year="2020" DayType="Воскресенье" Date="20200505" SwapDate="20200503"/>
<Item Calendar="11" Year="2016" DayType="Праздник" Date="20160822" SwapDate=""/>
<Item Calendar="11" Year="2017" DayType="Предпраздничный" Date="20170821" SwapDate=""/>
<Item Calendar="11" Year="2017" DayType="Праздник" Date="20170822" SwapDate=""/>
@@ -219,6 +240,8 @@
<Item Calendar="11" Year="2018" DayType="Праздник" Date="20180822" SwapDate=""/>
<Item Calendar="11" Year="2019" DayType="Предпраздничный" Date="20190821" SwapDate=""/>
<Item Calendar="11" Year="2019" DayType="Праздник" Date="20190822" SwapDate=""/>
<Item Calendar="11" Year="2020" DayType="Предпраздничный" Date="20200821" SwapDate=""/>
<Item Calendar="11" Year="2020" DayType="Праздник" Date="20200822" SwapDate=""/>
<Item Calendar="14" Year="2016" DayType="Предпраздничный" Date="20160426" SwapDate=""/>
<Item Calendar="14" Year="2016" DayType="Праздник" Date="20160427" SwapDate=""/>
<Item Calendar="14" Year="2016" DayType="Предпраздничный" Date="20160620" SwapDate=""/>
@@ -236,6 +259,9 @@
<Item Calendar="14" Year="2019" DayType="Суббота" Date="20190429" SwapDate="20190427"/>
<Item Calendar="14" Year="2019" DayType="Предпраздничный" Date="20190620" SwapDate=""/>
<Item Calendar="14" Year="2019" DayType="Праздник" Date="20190621" SwapDate=""/>
<Item Calendar="14" Year="2020" DayType="Праздник" Date="20200427" SwapDate=""/>
<Item Calendar="14" Year="2020" DayType="Праздник" Date="20200621" SwapDate="20200622"/>
<Item Calendar="14" Year="2020" DayType="Воскресенье" Date="20200622" SwapDate="20200621"/>
<Item Calendar="15" Year="2018" DayType="Праздник" Date="20181119" SwapDate=""/>
<Item Calendar="15" Year="2019" DayType="Праздник" Date="20191118" SwapDate=""/>
<Item Calendar="16" Year="2016" DayType="Предпраздничный" Date="20160704" SwapDate=""/>
@@ -265,6 +291,9 @@
<Item Calendar="16" Year="2019" DayType="Праздник" Date="20190830" SwapDate=""/>
<Item Calendar="16" Year="2019" DayType="Предпраздничный" Date="20191105" SwapDate=""/>
<Item Calendar="16" Year="2019" DayType="Праздник" Date="20191106" SwapDate=""/>
<Item Calendar="16" Year="2020" DayType="Праздник" Date="20200830" SwapDate=""/>
<Item Calendar="16" Year="2020" DayType="Предпраздничный" Date="20201105" SwapDate=""/>
<Item Calendar="16" Year="2020" DayType="Праздник" Date="20201106" SwapDate=""/>
<Item Calendar="17" Year="2016" DayType="Предпраздничный" Date="20160208" SwapDate=""/>
<Item Calendar="17" Year="2016" DayType="Праздник" Date="20160209" SwapDate=""/>
<Item Calendar="17" Year="2016" DayType="Предпраздничный" Date="20160505" SwapDate=""/>
@@ -295,6 +324,13 @@
<Item Calendar="17" Year="2019" DayType="Праздник" Date="20190506" SwapDate=""/>
<Item Calendar="17" Year="2019" DayType="Предпраздничный" Date="20190814" SwapDate=""/>
<Item Calendar="17" Year="2019" DayType="Праздник" Date="20190815" SwapDate=""/>
<Item Calendar="17" Year="2020" DayType="Праздник" Date="20200224" SwapDate="20200225"/>
<Item Calendar="17" Year="2020" DayType="Воскресенье" Date="20200225" SwapDate="20200224"/>
<Item Calendar="17" Year="2020" DayType="Предпраздничный" Date="20200505" SwapDate=""/>
<Item Calendar="17" Year="2020" DayType="Праздник" Date="20200506" SwapDate=""/>
<Item Calendar="17" Year="2020" DayType="Предпраздничный" Date="20200814" SwapDate=""/>
<Item Calendar="17" Year="2020" DayType="Праздник" Date="20200815" SwapDate="20200817"/>
<Item Calendar="17" Year="2020" DayType="Суббота" Date="20200817" SwapDate="20200815"/>
<Item Calendar="20" Year="2016" DayType="Предпраздничный" Date="20160322" SwapDate=""/>
<Item Calendar="20" Year="2016" DayType="Праздник" Date="20160323" SwapDate=""/>
<Item Calendar="20" Year="2016" DayType="Предпраздничный" Date="20160415" SwapDate=""/>
@@ -338,6 +374,9 @@
<Item Calendar="20" Year="2019" DayType="Суббота" Date="20190325" SwapDate="20190323"/>
<Item Calendar="20" Year="2019" DayType="Предпраздничный" Date="20190415" SwapDate=""/>
<Item Calendar="20" Year="2019" DayType="Праздник" Date="20190416" SwapDate=""/>
<Item Calendar="20" Year="2020" DayType="Праздник" Date="20200323" SwapDate=""/>
<Item Calendar="20" Year="2020" DayType="Предпраздничный" Date="20200415" SwapDate=""/>
<Item Calendar="20" Year="2020" DayType="Праздник" Date="20200416" SwapDate=""/>
<Item Calendar="21" Year="2016" DayType="Предпраздничный" Date="20160623" SwapDate=""/>
<Item Calendar="21" Year="2016" DayType="Праздник" Date="20160624" SwapDate=""/>
<Item Calendar="21" Year="2017" DayType="Предпраздничный" Date="20170623" SwapDate=""/>
@@ -346,6 +385,8 @@
<Item Calendar="21" Year="2018" DayType="Праздник" Date="20180624" SwapDate="20180625"/>
<Item Calendar="21" Year="2018" DayType="Воскресенье" Date="20180625" SwapDate="20180624"/>
<Item Calendar="21" Year="2019" DayType="Праздник" Date="20190624" SwapDate=""/>
<Item Calendar="21" Year="2020" DayType="Предпраздничный" Date="20200623" SwapDate=""/>
<Item Calendar="21" Year="2020" DayType="Праздник" Date="20200624" SwapDate=""/>
<Item Calendar="26" Year="2016" DayType="Праздник" Date="20160510" SwapDate=""/>
<Item Calendar="26" Year="2017" DayType="Предпраздничный" Date="20170424" SwapDate=""/>
<Item Calendar="26" Year="2017" DayType="Праздник" Date="20170425" SwapDate=""/>
@@ -353,6 +394,8 @@
<Item Calendar="26" Year="2018" DayType="Праздник" Date="20180417" SwapDate=""/>
<Item Calendar="26" Year="2019" DayType="Предпраздничный" Date="20190506" SwapDate=""/>
<Item Calendar="26" Year="2019" DayType="Праздник" Date="20190507" SwapDate=""/>
<Item Calendar="26" Year="2020" DayType="Предпраздничный" Date="20200427" SwapDate=""/>
<Item Calendar="26" Year="2020" DayType="Праздник" Date="20200428" SwapDate=""/>
<Item Calendar="58" Year="2016" DayType="Праздник" Date="20160510" SwapDate=""/>
<Item Calendar="58" Year="2017" DayType="Предпраздничный" Date="20170424" SwapDate=""/>
<Item Calendar="58" Year="2017" DayType="Праздник" Date="20170425" SwapDate=""/>
@@ -360,6 +403,8 @@
<Item Calendar="58" Year="2018" DayType="Праздник" Date="20180417" SwapDate=""/>
<Item Calendar="58" Year="2019" DayType="Предпраздничный" Date="20190506" SwapDate=""/>
<Item Calendar="58" Year="2019" DayType="Праздник" Date="20190507" SwapDate=""/>
<Item Calendar="58" Year="2020" DayType="Предпраздничный" Date="20200427" SwapDate=""/>
<Item Calendar="58" Year="2020" DayType="Праздник" Date="20200428" SwapDate=""/>
<Item Calendar="64" Year="2016" DayType="Праздник" Date="20160510" SwapDate=""/>
<Item Calendar="64" Year="2017" DayType="Предпраздничный" Date="20170424" SwapDate=""/>
<Item Calendar="64" Year="2017" DayType="Праздник" Date="20170425" SwapDate=""/>
@@ -367,6 +412,8 @@
<Item Calendar="64" Year="2018" DayType="Праздник" Date="20180417" SwapDate=""/>
<Item Calendar="64" Year="2019" DayType="Предпраздничный" Date="20190506" SwapDate=""/>
<Item Calendar="64" Year="2019" DayType="Праздник" Date="20190507" SwapDate=""/>
<Item Calendar="64" Year="2020" DayType="Предпраздничный" Date="20200427" SwapDate=""/>
<Item Calendar="64" Year="2020" DayType="Праздник" Date="20200428" SwapDate=""/>
<Item Calendar="75" Year="2016" DayType="Предпраздничный" Date="20160208" SwapDate=""/>
<Item Calendar="75" Year="2016" DayType="Праздник" Date="20160209" SwapDate=""/>
<Item Calendar="75" Year="2017" DayType="Праздник" Date="20170227" SwapDate=""/>
@@ -374,6 +421,8 @@
<Item Calendar="75" Year="2018" DayType="Праздник" Date="20180216" SwapDate=""/>
<Item Calendar="75" Year="2019" DayType="Предпраздничный" Date="20190204" SwapDate=""/>
<Item Calendar="75" Year="2019" DayType="Праздник" Date="20190205" SwapDate=""/>
<Item Calendar="75" Year="2020" DayType="Праздник" Date="20200224" SwapDate="20200225"/>
<Item Calendar="75" Year="2020" DayType="Воскресенье" Date="20200225" SwapDate="20200224"/>
<Item Calendar="85" Year="2016" DayType="Предпраздничный" Date="20160208" SwapDate=""/>
<Item Calendar="85" Year="2016" DayType="Праздник" Date="20160209" SwapDate=""/>
<Item Calendar="85" Year="2017" DayType="Праздник" Date="20170227" SwapDate=""/>
@@ -381,6 +430,8 @@
<Item Calendar="85" Year="2018" DayType="Праздник" Date="20180216" SwapDate=""/>
<Item Calendar="85" Year="2019" DayType="Предпраздничный" Date="20190204" SwapDate=""/>
<Item Calendar="85" Year="2019" DayType="Праздник" Date="20190205" SwapDate=""/>
<Item Calendar="85" Year="2020" DayType="Праздник" Date="20200224" SwapDate="20200225"/>
<Item Calendar="85" Year="2020" DayType="Воскресенье" Date="20200225" SwapDate="20200224"/>
<Item Calendar="91" Year="2016" DayType="Предпраздничный" Date="20160317" SwapDate=""/>
<Item Calendar="91" Year="2016" DayType="Праздник" Date="20160318" SwapDate=""/>
<Item Calendar="91" Year="2016" DayType="Праздник" Date="20160620" SwapDate=""/>
@@ -409,6 +460,8 @@
<Item Calendar="91" Year="2019" DayType="Праздник" Date="20190604" SwapDate=""/>
<Item Calendar="91" Year="2019" DayType="Праздник" Date="20190617" SwapDate=""/>
<Item Calendar="91" Year="2019" DayType="Праздник" Date="20190811" SwapDate=""/>
<Item Calendar="91" Year="2020" DayType="Предпраздничный" Date="20200317" SwapDate=""/>
<Item Calendar="91" Year="2020" DayType="Праздник" Date="20200318" SwapDate=""/>
<Item Calendar="92" Year="2016" DayType="Предпраздничный" Date="20160317" SwapDate=""/>
<Item Calendar="92" Year="2016" DayType="Праздник" Date="20160318" SwapDate=""/>
<Item Calendar="92" Year="2017" DayType="Предпраздничный" Date="20170317" SwapDate=""/>
@@ -417,6 +470,8 @@
<Item Calendar="92" Year="2018" DayType="Праздник" Date="20180318" SwapDate="20180319"/>
<Item Calendar="92" Year="2018" DayType="Воскресенье" Date="20180319" SwapDate="20180318"/>
<Item Calendar="92" Year="2019" DayType="Праздник" Date="20190318" SwapDate=""/>
<Item Calendar="92" Year="2020" DayType="Предпраздничный" Date="20200317" SwapDate=""/>
<Item Calendar="92" Year="2020" DayType="Праздник" Date="20200318" SwapDate=""/>
<Item Calendar="РФ" Year="2001" DayType="Праздник" Date="20010101" SwapDate=""/>
<Item Calendar="РФ" Year="2001" DayType="Праздник" Date="20010102" SwapDate=""/>
<Item Calendar="РФ" Year="2001" DayType="Праздник" Date="20010107" SwapDate="20010108"/>
@@ -864,4 +919,28 @@
<Item Calendar="РФ" Year="2019" DayType="Праздник" Date="20190612" SwapDate=""/>
<Item Calendar="РФ" Year="2019" DayType="Праздник" Date="20191104" SwapDate=""/>
<Item Calendar="РФ" Year="2019" DayType="Предпраздничный" Date="20191231" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200101" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200102" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200103" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200104" SwapDate="20200504"/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200105" SwapDate="20200512"/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200106" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200107" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200108" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200223" SwapDate="20200224"/>
<Item Calendar="РФ" Year="2020" DayType="Воскресенье" Date="20200224" SwapDate="20200223"/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200308" SwapDate="20200309"/>
<Item Calendar="РФ" Year="2020" DayType="Воскресенье" Date="20200309" SwapDate="20200308"/>
<Item Calendar="РФ" Year="2020" DayType="Предпраздничный" Date="20200430" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200501" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Суббота" Date="20200504" SwapDate="20200104"/>
<Item Calendar="РФ" Year="2020" DayType="Предпраздничный" Date="20200508" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200509" SwapDate="20200511"/>
<Item Calendar="РФ" Year="2020" DayType="Суббота" Date="20200511" SwapDate="20200509"/>
<Item Calendar="РФ" Year="2020" DayType="Воскресенье" Date="20200512" SwapDate="20200105"/>
<Item Calendar="РФ" Year="2020" DayType="Предпраздничный" Date="20200611" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20200612" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Предпраздничный" Date="20201103" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Праздник" Date="20201104" SwapDate=""/>
<Item Calendar="РФ" Year="2020" DayType="Предпраздничный" Date="20201231" SwapDate=""/>
</Items>
@@ -1,6 +1,7 @@
<!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> из списка <a href="Catalog.КлючевыеОперации/Help">Ключевые операции</a>.</p>
<p>Необходимо получить качественную оценку пользователя о работе <a href="Catalog.КлючевыеОперации.Form.ФормаЭлемента/Help">ключевой операции</a>, например, плохо или неприемлемо.</p>
<p>Далее необходимо соотнести качественную оценку со значением APDEX в соответствии с таблицей.</p>
<table style="FONT-SIZE: 11px" border="1"><tbody><tr><td colspan="3">
<p align="center"><strong>Шкала APDEX</strong></p></td></tr><tr><td colspan="2">
@@ -20,5 +21,8 @@
<td style="BACKGROUND-COLOR: rgb(204,255,153)">хорошо</td></tr><tr><td>0.94</td>
<td>1.00</td>
<td style="BACKGROUND-COLOR: rgb(204,255,255)">отлично<br><br></td></tr></tbody></table><p><br></p>
<p>В обработке необходимо указать <b>Период</b>, за который будут получены замеры для дальнейшего анализа, <b>Ключевую операцию, </b>для которой выполняется поиск целевого времени, и <b>Текущий APDEX</b> согласно оценке пользователя. При выборе значение APDEX из таблицы рекомендуется выбирать минимальное подходящее значение.</p>
<p>После нажатия на кнопку <b>Подобрать целевое время </b>в поле <b>Целевое время </b>будет указано расчетное целевое время. В поле <b>Расчетный APDEX </b>будет указано значение APDEX, которое получается при таком значении целевого времени.</p></body></html>
<p>Укажите <b>Период</b>, за который будут получены замеры для дальнейшего анализа, <b>Ключевую операцию, </b>для которой выполняется поиск целевого времени, и <b>Текущий APDEX</b> согласно оценке пользователя. При выборе значение APDEX из таблицы рекомендуется выбирать минимальное подходящее значение.</p>
<p>После нажатия на кнопку <b>Подобрать целевое время </b>в поле <b>Целевое время </b>будет указано расчетное целевое время. В поле <b>Расчетный APDEX </b>будет указано значение APDEX, которое получается при таком значении целевого времени.</p>
<p>Программа проводит <a href="DataProcessor.ОценкаПроизводительности/Help">оценку производительности</a>, для которой важно задать целевое время ключевой операции. Результаты выводятся в <a href="Report.ОценкаПроизводительности/Help">отчет</a>.</p>
<h3>См. также:</h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>
@@ -28,7 +28,7 @@ TD {
<p>Программа позволяет вести историю изменения списков, просматривать любую версию объекта или сравнивать любые версии объекта между собой.</p>
<ul><li><strong>Хранить историю изменений - </strong>Включите флажок для ведения истории изменения объектов программы. После этого становится доступной команда:
</li><li><a href="InformationRegister.НастройкиВерсионированияОбъектов/Help">Настройки хранения</a> - Настройка хранения и очистка версий документов и справочников.</li></ul></a><a name="СтандартныеПодсистемы.ПолнотекстовыйПоиск">
<h3>Полнотекстовый поиск данных</h3>
<h3>Поиск данных</h3>
<ul><li><a href="DataProcessor.ПолнотекстовыйПоискВДанных.Form.УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Help">Полнотекстовый поиск данных</a> - Включите флажок, после этого становится доступной команда:
</li><li><strong>Настроить </strong>- Настройка полнотекстового поиска и поддержка индекса полнотекстового поиска в актуальном состоянии.</li></ul></a><a name="СтандартныеПодсистемы.ЭлектроннаяПодпись"></a>
<h3>Электронная подпись и шифрование</h3>
@@ -6,11 +6,15 @@ TD {
}
</style><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> раздела <strong>Администрирование - Общие настройки - Полнотекстовый поиск данных</strong>.</p><a name="СтандартныеПодсистемы.ПолнотекстовыйПоиск">
<p>Открывается по ссылке <strong>Настроить</strong> раздела <strong>Администрирование - Общие настройки - Поиск данных</strong>.</p><a name="СтандартныеПодсистемы.ПолнотекстовыйПоиск">
<p>Программа позволяет производить <a href="DataProcessor.ПолнотекстовыйПоискВДанных/Help">полнотекстовый поиск</a> в любых справочниках, документах и других объектах, отыскивая заданную строку во всех полях объектов. При наличии присоединенных файлов, содержащих текстовую информацию, поиск осуществляется также и по ним. Полнотекстовый поиск используется при поиске данных в программе по содержимому справочников, документов и других объектов программы. </p>
<p>Также полнотекстовый поиск предоставляет такие возможности как: поддержка транслитерации (написание русских слов символами латиницы в соответствии с ГОСТ); поддержка замещения (написание части символов в русских словах одноклавишными латинскими символами); нечеткий поиск (буквы в найденных словах могут отличаться).</p>
<p>Для начала работы с полнотекстовым поиском необходимо включить флажок <strong>Полнотекстовый поиск данных</strong>. В этом случае становятся доступными команды, которые позволяют настроить полнотекстовый поиск данных в программе, управлять индексом полнотекстового поиска, обновлять и очищать его.  По умолчанию флажок включен.</p>
<p>В файловом режиме работы программы доступны только команды управления полнотекстовым индексом, тексты извлекаются автоматически при загрузке файла в программу.</p></a>
<p>В файловом режиме работы программы доступны только команды управления полнотекстовым индексом, тексты извлекаются автоматически при загрузке файла в программу.</p>
<h3>Временное отключение полнотекстового поиска</h3>
<ul><li>
<div>Флажок <strong>Использовать полнотекстовый поиск</strong> включен по умолчанию. Полнотекстовый поиск имеет смысл отключать в случае, если необходимо немного повысить быстродействие программы и пользователям не требуется поиск данных в программе. </div></li></ul><h3>Размер индексируемых данных</h3>
<ul><li>С помощью соответствующего флажка можно <strong>Ограничить максимальный размер индексируемых данных</strong>. По умолчанию ограничение равно 1 Мб. Это может быть востребовано, если ресурсы компьютера, на котором установлена программа, ограничены.</li></ul></a>
<h3>Обновление индекса полнотекстового поиска</h3>
<ul><li>Для того чтобы можно было осуществлять поиск по всем введенным в программу данным, необходимо регулярно актуализировать индекс полнотекстового поиска. Для регулярного автоматического обновления индекса предназначены регламентные задания <strong>Обновление индекса ППД</strong> и <strong>Слияние индекса ППД</strong> (выполняется раз в сутки).
</li><li>Если индекс уже был обновлен, то отображается <strong>Дата актуальности индекса</strong> - дата последнего обновления индекса.
@@ -19,7 +23,7 @@ TD {
<ul><li>
<div>В любой момент можно проверить состояние индекса полнотекстового поиска с помощью кнопки <strong>Проверить индекс</strong>.</div></li></ul><p>В клиент-серверном режиме доступны команды по настройке автоматического извлечения текстов.</p>
<h3>Автоматическое извлечение текстов</h3>
<p>Извлечение текстов из файлов необходимо для полнотекстового поиска в программе.  </p>
<p>Извлечение текстов из файлов необходимо для полнотекстового поиска в программе.</p>
<p>Для настройки необходимо с помощью переключателя выбрать:</p>
<ul><a name="СтандартныеПодсистемы.РегламентныеЗадания">
<li><strong>В кластере серверов настроено выполнение на сервере под управлением ОС Windows</strong> - в этом случае становится доступной команда <strong>Настроить расписание</strong>, с помощью которой можно  <a href="DataProcessor.РегламентныеИФоновыеЗадания.Form.РегламентноеЗадание/Help">настроить регламентное задание</a>. Укажите <a href="v8help://mngbase/jobschedule.lf">расписание</a> и другие параметры регламентного задания по извлечению текстов из файлов.</li></a> <br>Данный вариант подходит, когда в Администрировании серверов 1С Предприятия задано следующее правило для сервера под управлением ОС Microsoft Windows:
@@ -145,7 +145,8 @@
КонецЕсли;
Если ПолученоСообщениеДляСопоставленияДанных Тогда
Если ЗакончитьСопоставлениеДанных Тогда
Если ЗакончитьСопоставлениеДанных
И Не ПропуститьПолучениеДанных Тогда
УдалитьСообщениеДляСопоставленияДанных(Объект.УзелИнформационнойБазы);
КонецЕсли;
КонецЕсли;
@@ -45,7 +45,6 @@
ЕстьЗагруженныйКлассификатор = СведенияОАдресномКлассификаторе["ИспользоватьЗагруженные"];
ВебКлассификаторДоступен = СведенияОАдресномКлассификаторе["КлассификаторДоступен"];
ВебСервисИспользуется = ВебКлассификаторДоступен;
АвтоподборДоступен = ВебКлассификаторДоступен Или ЕстьЗагруженныйКлассификатор;
ЕстьПравоЗагружатьКлассификатор = Обработки.РасширенныйВводКонтактнойИнформации.ЕстьВозможностьИзмененияАдресногоКлассификатора();
@@ -676,7 +675,7 @@
ДанныеВыбора = Новый СписокЗначений;
ТекстДляАвтоПодбора = СокрЛП(Текст);
Если СтрДлина(ТекстДляАвтоПодбора) < 3 Тогда
Если СтрДлина(ТекстДляАвтоПодбора) < 3 Или Не АвтоподборДоступен Тогда
// Нет вариантов, список пуст, стандартную обработку не надо трогать.
Возврат;
КонецЕсли;
@@ -1890,6 +1889,8 @@
ЭтоНациональныйАдрес = (Страна = ОсновнаяСтрана И Не МеждународныйФорматАдреса);
ЭтоСтранаУчастникЕАЭС = ЭтоСтранаУчастникЕАЭС(Страна);
ОпределитьДоступностьАвтоПодборАдреса();
НаселенныйПунктДетально.Country = СокрЛП(Страна);
Если ЭтоНациональныйАдрес Тогда
@@ -1960,6 +1961,18 @@
КонецПроцедуры
&НаКлиенте
Процедура ОпределитьДоступностьАвтоПодборАдреса()
Если Не РаботаСАдресамиКлиентСервер.ЭтоОсновнаяСтрана(Страна) Тогда
АвтоподборДоступен = Ложь;
Возврат;
КонецЕсли;
АвтоподборДоступен = ВебКлассификаторДоступен Или ЕстьЗагруженныйКлассификатор;
КонецПроцедуры
&НаСервере
Процедура ОпределитьОтображениеЭлементовНаФорме()
// Разовые настройки отображения формы.
@@ -17,7 +17,7 @@
Если ЗначениеЗаполнено(Параметры.ТекстПредупреждения) Тогда
Элементы.Надпись.Заголовок = Параметры.ТекстПредупреждения;
ИначеЕсли Параметры.НазваниеРегиона Тогда
ИначеЕсли ЗначениеЗаполнено(Параметры.НазваниеРегиона) Тогда
ТекстВопроса = НСтр("ru = 'Для автоподбора и выбора адресных сведений необходимо загрузить классификатор по региону ""%1"".'");
Элементы.Надпись.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстВопроса, Параметры.НазваниеРегиона);
КонецЕсли;
@@ -1828,6 +1828,32 @@
<importance>Normal</importance>
</extInfo>
</items>
<items xsi:type="form:Button">
<name>ФормаСформироватьПоШаблону</name>
<id>199</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаСформироватьПоШаблонуРасширеннаяПодсказка</name>
<id>200</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.СформироватьПоШаблону</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button">
<name>ФормаСправка</name>
<id>89</id>
@@ -2216,6 +2242,28 @@
<currentRowUse>DontUse</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<formCommands>
<name>СформироватьПоШаблону</name>
<title>
<key>ru</key>
<value>Сформировать по шаблону</value>
</title>
<id>4</id>
<toolTip>
<key>ru</key>
<value>Сформировать по шаблону</value>
</toolTip>
<use>
<common>true</common>
</use>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>СформироватьПоШаблону</name>
</handler>
</action>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<parameters>
<name>Адресаты</name>
<valueType/>
@@ -72,6 +72,10 @@
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
// СтандартныеПодсистемы.ШаблоныСообщений
ОпределитьВозможностьЗаполненияПисьмаПоШаблону();
// Конец СтандартныеПодсистемы.ШаблоныСообщений
КонецПроцедуры
&НаСервере
@@ -171,6 +175,12 @@
КонецЕсли;
// Конец СтандартныеПодсистемы.РаботаСФайлами
// СтандартныеПодсистемы.ШаблоныСообщений
Если ИмяСобытия = "Запись_ШаблоныСообщений" Тогда
ОпределитьВозможностьЗаполненияПисьмаПоШаблону();
КонецЕсли;
// Конец СтандартныеПодсистемы.ШаблоныСообщений
КонецПроцедуры
&НаСервере
@@ -449,6 +459,22 @@
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами
// СтандартныеПодсистемы.ШаблоныСообщений
&НаКлиенте
Процедура СформироватьПоШаблону(Команда)
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда
МодульШаблоныСообщенийКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ШаблоныСообщенийКлиент");
Оповещение = Новый ОписаниеОповещения("ЗаполнитьПоШаблонуПослеВыбораШаблона", ЭтотОбъект);
ПредметСообщения = ?(ЗначениеЗаполнено(Предмет), Предмет, "Общий");
МодульШаблоныСообщенийКлиент.ПодготовитьСообщениеПоШаблону(ПредметСообщения, "СообщениеSMS", Оповещение);
КонецЕсли
КонецПроцедуры
// Конец СтандартныеПодсистемы.ШаблоныСообщений
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -779,4 +805,40 @@
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// СтандартныеПодсистемы.ШаблоныСообщений
&НаКлиенте
Процедура ЗаполнитьПоШаблонуПослеВыбораШаблона(Результат, ДополнительныеПараметры) Экспорт
Если ТипЗнч(Результат) = Тип("Структура") Тогда
ЗаполнитьШаблонПослеВыбора(Результат.Шаблон);
Элементы.ТекстСообщения.ОбновитьТекстРедактирования();
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьШаблонПослеВыбора(ШаблонСсылка)
ОбъектСообщение = РеквизитФормыВЗначение("Объект");
ОбъектСообщение.Заполнить(ШаблонСсылка);
ЗначениеВРеквизитФормы(ОбъектСообщение, "Объект");
КонецПроцедуры
&НаСервере
Процедура ОпределитьВозможностьЗаполненияПисьмаПоШаблону()
ИспользуютсяШаблоныСообщений = Ложь;
Если Объект.Состояние = Перечисления.СостоянияДокументаСообщениеSMS.Черновик
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда
МодульШаблоныСообщенийСлужебный = ОбщегоНазначения.ОбщийМодуль("ШаблоныСообщенийСлужебный");
Если МодульШаблоныСообщенийСлужебный.ИспользуютсяШаблоныСообщений() Тогда
ИспользуютсяШаблоныСообщений = МодульШаблоныСообщенийСлужебный.ЕстьДоступныеШаблоны("SMS");
КонецЕсли;
КонецЕсли;
Элементы.ФормаСформироватьПоШаблону.Видимость = ИспользуютсяШаблоныСообщений;
КонецПроцедуры
// Конец СтандартныеПодсистемы.ШаблоныСообщений
#КонецОбласти
@@ -46,6 +46,14 @@
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда
МодульШаблоныСообщений = ОбщегоНазначения.ОбщийМодуль("ШаблоныСообщений");
Если МодульШаблоныСообщений.ЭтоШаблон(ДанныеЗаполнения) Тогда
ЗаполнитьНаОснованииШаблона(ДанныеЗаполнения);
Возврат;
КонецЕсли;
КонецЕсли;
Взаимодействия.ЗаполнитьРеквизитыПоУмолчанию(ЭтотОбъект, ДанныеЗаполнения);
КонецПроцедуры
@@ -80,6 +88,19 @@
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура ЗаполнитьНаОснованииШаблона(ШаблонСсылка)
МодульШаблоныСообщений = ОбщегоНазначения.ОбщийМодуль("ШаблоныСообщений");
Сообщение = МодульШаблоныСообщений.СформироватьСообщение(ШаблонСсылка, Неопределено, Новый УникальныйИдентификатор);
ТекстСообщения = Сообщение.Текст;
КонецПроцедуры
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли
@@ -295,6 +295,7 @@
НастройкаПрав.Объект = СсылкаНаОбъект;
НастройкаПрав.Пользователь = Настройка.Пользователь;
НастройкаПрав.Право = ОписаниеПрава.Имя;
НастройкаПрав.Таблица = ТаблицаОбщихПрав;
НастройкаПрав.ПравоЗапрещено = НЕ Настройка[ОписаниеПрава.Имя];
НастройкаПрав.НаследованиеРазрешено = Настройка.НаследованиеРазрешено;
// Кэш-реквизиты
@@ -626,6 +627,23 @@
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// Обновление информационной базы.
Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт
// Регистрация данных не требуется.
КонецПроцедуры
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
ОбновитьВспомогательныеДанныеРегистра();
Параметры.ОбработкаЗавершена = Истина;
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Вспомогательные процедуры и функции.
@@ -273,6 +273,8 @@
Возврат РегистрыСведений["НастройкиТранспортаОбменаОбластиДанных"].НастройкиТранспорта(Корреспондент);
КонецЕсли;
Возврат НастройкиТранспортаОбмена(Корреспондент, ВидТранспортаОбмена);
КонецФункции
Функция ВидТранспортаСообщенийОбменаПоУмолчанию(Корреспондент) Экспорт
@@ -9,7 +9,7 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем АдресРезультата, АдресХранимыхДанных, ИдентификаторЗаданияОбновленияПрогресса, ТекстОшибкиЗавершенияРегламентногоЗадания;
Перем АдресРезультата, АдресХранимыхДанных, ИдентификаторЗаданияОбновленияПрогресса, ТекстОшибкиОбновленияДоступа;
#КонецОбласти
@@ -35,7 +35,8 @@
Если Не УправлениеДоступомСлужебный.ОграничиватьДоступНаУровнеЗаписейУниверсально(Истина) Тогда
Элементы.ГруппаПредупреждениеУниверсальноеОграничениеОтключено.Видимость = Истина;
Элементы.ЗапуститьРегламентноеЗаданиеСейчас.Доступность = Ложь;
Элементы.ЗапуститьОбновлениеДоступаСейчас.Доступность = Ложь;
Элементы.РазрешитьОбновлениеДоступа.Доступность = Ложь;
Элементы.ВключитьРегламентноеЗадание.Доступность = Ложь;
КонецЕсли;
@@ -43,11 +44,29 @@
Элементы.КраткоПодробно.Показать();
КонецЕсли;
КоличествоПотоковОбновленияДоступа = Константы.КоличествоПотоковОбновленияДоступа.Получить();
Если КоличествоПотоковОбновленияДоступа = 0 Тогда
КоличествоПотоковОбновленияДоступа = 1;
КонецЕсли;
Элементы.КоличествоПотоковОбновленияДоступа1.Подсказка =
Метаданные.Константы.КоличествоПотоковОбновленияДоступа.Подсказка;
Элементы.КоличествоПотоковОбновленияДоступа2.Подсказка =
Метаданные.Константы.КоличествоПотоковОбновленияДоступа.Подсказка;
Если ОбщегоНазначения.ИнформационнаяБазаФайловая()
Или ОбщегоНазначения.РазделениеВключено() Тогда
Элементы.ГруппаКоличествоПотоковОбновленияДоступа1.Видимость = Ложь;
Элементы.ГруппаКоличествоПотоковОбновленияДоступа2.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ОбновитьЗаголовокГруппыКоличествоПотоковОбновленияДоступа();
ПриПовторномОткрытии();
КонецПроцедуры
@@ -91,10 +110,40 @@
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура РассчитыватьПоКоличествуДанныхПриИзменении(Элемент)
Процедура КоличествоПотоковОбновленияДоступаПриИзменении(Элемент)
ЭтоПовторноеОбновлениеПрогресса = Ложь;
НачатьОбновлениеПрогресса(Истина);
Если КоличествоПотоковОбновленияДоступа = 0 Тогда
КоличествоПотоковОбновленияДоступа = 1;
КонецЕсли;
УстановитьКоличествоПотоковОбновленияДоступаНаСервере(КоличествоПотоковОбновленияДоступа);
ОбновитьЗаголовокГруппыКоличествоПотоковОбновленияДоступа();
КонецПроцедуры
&НаКлиенте
Процедура КоличествоПотоковОбновленияДоступаИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если ЗначениеЗаполнено(Текст) Тогда
КоличествоПотоковОбновленияДоступа = Число(Текст);
Иначе
КоличествоПотоковОбновленияДоступа = 1;
КонецЕсли;
КоличествоПотоковОбновленияДоступаПриИзменении(Элемент);
КонецПроцедуры
&НаКлиенте
Процедура ПоследнееЗавершениеОбновленияДоступаОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если НавигационнаяСсылкаФорматированнойСтроки = "ПоказатьТекстОшибки" Тогда
ПоказатьПредупреждение(, ТекстОшибкиОбновленияДоступа);
КонецЕсли;
КонецПроцедуры
@@ -105,16 +154,67 @@
КонецПроцедуры
&НаКлиенте
Процедура РассчитыватьПоКоличествуДанныхПриИзменении(Элемент)
ОбновитьВидимостьНастроекОтображения();
ЭтоПовторноеОбновлениеПрогресса = Ложь;
НачатьОбновлениеПрогресса(Истина);
КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьКоличествоЭлементовПриИзменении(Элемент)
Элементы.СпискиКоличествоЭлементов.Видимость = ПоказыватьКоличествоЭлементов;
Элементы.СпискиКоличествоОбработанныхЭлементов.Видимость = ПоказыватьКоличествоЭлементов;
КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьКоличествоКлючейДоступаПриИзменении(Элемент)
Элементы.СпискиКоличествоКлючейДоступа.Видимость = ПоказыватьКоличествоКлючейДоступа;
Элементы.СпискиКоличествоОбработанныхКлючейДоступа.Видимость = ПоказыватьКоличествоКлючейДоступа;
КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьИмяТаблицыПриИзменении(Элемент)
Элементы.СпискиИмяТаблицы.Видимость = ПоказыватьИмяТаблицы;
КонецПроцедуры
&НаКлиенте
Процедура ПоказыватьОбработанныеСпискиПриИзменении(Элемент)
НачатьОбновлениеПрогресса(Истина);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСписки
&НаКлиенте
Процедура СпискиПриАктивизацииСтроки(Элемент)
ПодключитьОбработчикОжидания("ОбновитьВидимостьНастроекОтображения", 0.1, Истина);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ЗапуститьРегламентноеЗаданиеСейчас(Команда)
Процедура ЗапуститьОбновлениеДоступаСейчас(Команда)
СостояниеЗаданияОбновленияДоступа = Неопределено;
ТекстПредупреждения = ЗапуститьРегламентноеЗаданиеСейчасНаСервере(СостояниеЗаданияОбновленияДоступа);
ТекстПредупреждения = ЗапуститьОбновлениеДоступаСейчасНаСервере(СостояниеЗаданияОбновленияДоступа);
Если ЗначениеЗаполнено(ТекстПредупреждения) Тогда
ПоказатьПредупреждение(, ТекстПредупреждения);
@@ -126,9 +226,11 @@
КонецПроцедуры
&НаКлиенте
Процедура ВключитьРегламентноеЗадание(Команда)
Процедура ВключитьОбновлениеДоступа(Команда)
ВключитьРегламентноеЗаданиеНаСервере();
ВключитьОбновлениеДоступаНаСервере();
Элементы.ОбновлениеДоступаЗапрещено.Видимость = Ложь;
Элементы.РегламентноеЗаданиеОтключено.Видимость = Ложь;
НачатьОбновлениеПрогресса(Истина);
@@ -136,9 +238,12 @@
КонецПроцедуры
&НаКлиенте
Процедура ОтменитьИВыключитьОбновлениеДоступа(Команда)
Процедура ОстановитьИЗапретитьОбновлениеДоступа(Команда)
ОтменитьИВыключитьОбновлениеДоступаНаСервере();
ОстановитьИЗапретитьОбновлениеДоступаНаСервере();
Элементы.ОбновлениеДоступаЗапрещено.Видимость = Истина;
Элементы.РегламентноеЗаданиеОтключено.Видимость = Ложь;
НачатьОбновлениеПрогресса(Истина);
@@ -166,18 +271,11 @@
Пояснение);
КонецЕсли;
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеЗавершено;
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеПрогрессаЗавершено;
Элементы.ОтменитьОбновлениеПрогресса.Доступность = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ПоказатьТекстОшибкиЗавершенияРегламентногоЗадания(Команда)
ПоказатьПредупреждение(, ТекстОшибкиЗавершенияРегламентногоЗадания);
КонецПроцедуры
&НаКлиенте
Процедура РучноеУправление(Команда)
@@ -199,20 +297,32 @@
КонецПроцедуры
&НаКлиенте
Процедура ПоказатьОбработанныеСписки(Команда)
Элементы.ФормаПоказатьОбработанныеСписки.Пометка =
Не Элементы.ФормаПоказатьОбработанныеСписки.Пометка;
НачатьОбновлениеПрогресса(Истина);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервереБезКонтекста
Процедура УстановитьКоличествоПотоковОбновленияДоступаНаСервере(Знач Количество)
Если Константы.КоличествоПотоковОбновленияДоступа.Получить() <> Количество Тогда
Константы.КоличествоПотоковОбновленияДоступа.Установить(Количество);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьЗаголовокГруппыКоличествоПотоковОбновленияДоступа()
Элементы.ГруппаКоличествоПотоковОбновленияДоступа1.Заголовок =
Формат(КоличествоПотоковОбновленияДоступа, "ЧГ=") + " "
+ ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоПотоковОбновленияДоступа,
"", НСтр("ru = 'поток,потока,потоков,,,,,,0'"));
Элементы.ГруппаКоличествоПотоковОбновленияДоступа2.Заголовок =
Элементы.ГруппаКоличествоПотоковОбновленияДоступа1.Заголовок;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСостояниеЗаданияОбновленияДоступаЧерезТриСекунды()
@@ -231,41 +341,68 @@
&НаКлиенте
Процедура ОбновитьСостояниеЗаданияОбновленияДоступа(Состояние = Неопределено)
ОбновитьВидимостьНастроекОтображения();
Если Состояние = Неопределено Тогда
Состояние = СостояниеЗаданияОбновленияДоступа();
КонецЕсли;
Если Не ЗначениеЗаполнено(Состояние.ПоследнееЗавершениеРегламентногоЗадания) Тогда
Элементы.ПоследнееЗавершениеРегламентногоЗадания.Формат =
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ДЛФ=DT; ДП='%1'",
?(Состояние.РегламентноеЗаданиеВыполняется,
НСтр("ru = 'Не завершалось'"), НСтр("ru = 'Не запускалось'")));
Элементы.ОбновлениеДоступаЗапрещено.Видимость = Состояние.ОбновлениеДоступаЗапрещено;
ТекстОшибкиОбновленияДоступа = Состояние.ТекстОшибкиОбновленияДоступа;
Если ЗначениеЗаполнено(Состояние.ПоследнееЗавершениеОбновленияДоступа) Тогда
ФорматЧастей = Новый Соответствие;
ЖирныйШрифт = Новый Шрифт(Элементы.ПоследнееЗавершениеОбновленияДоступа.Шрифт,,, Истина);
Если ЗначениеЗаполнено(ТекстОшибкиОбновленияДоступа) Тогда
Если Состояние.ПоследнееЗавершениеСегодня Тогда
Шаблон = НСтр("ru = '<1>завершено</1> <2>с ошибкой</2> в %1 за %2'");
Иначе
Шаблон = НСтр("ru = '<1>завершено</1> <2>с ошибкой</2> %1 за %2'");
КонецЕсли;
ФорматЧастей.Вставить(1, Новый Структура("Шрифт, ЦветТекста", ЖирныйШрифт, Новый Цвет(255, 0, 0)));
ФорматЧастей.Вставить(2, Новый Структура("Ссылка", "ПоказатьТекстОшибки"));
Иначе
Если Состояние.ПоследнееЗавершениеСегодня Тогда
Шаблон = НСтр("ru = 'завершено в %1 за %2'")
Иначе
Шаблон = НСтр("ru = 'завершено %1 за %2'")
КонецЕсли;
КонецЕсли;
Если Состояние.ПоследнееЗавершениеСегодня Тогда
Шаблон = СтрЗаменить(Шаблон, "%1", "<3>%1</3>");
ФорматЧастей.Вставить(3, Новый Структура("Шрифт", ЖирныйШрифт));
ПоследнееЗавершение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон,
Формат(Состояние.ПоследнееЗавершениеОбновленияДоступа, "ДЛФ=T"),
Состояние.ПоследнееВыполнениеПродолжительность);
Иначе
ПоследнееЗавершение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон,
Формат(Состояние.ПоследнееЗавершениеОбновленияДоступа, "ДЛФ=DT"),
Состояние.ПоследнееВыполнениеПродолжительность);
КонецЕсли;
ПоследнееЗавершение = СтрокаСФорматированнымиЧастями("(" + ПоследнееЗавершение + ")", ФорматЧастей, 3);
Иначе
ПоследнееЗавершение = "(" + ?(Состояние.ОбновлениеДоступаВыполняется,
НСтр("ru = 'не завершалось'"), НСтр("ru = 'не запускалось'")) + ")";
КонецЕсли;
Элементы.ПоследнееЗавершениеОбновленияДоступа.Заголовок = ПоследнееЗавершение;
ВыполнениеЗаданияЗавершено = ЗначениеЗаполнено(ПоследнееЗавершениеРегламентногоЗадания)
И ЗначениеЗаполнено(Состояние.ПоследнееЗавершениеРегламентногоЗадания)
И ПоследнееЗавершениеРегламентногоЗадания <> Состояние.ПоследнееЗавершениеРегламентногоЗадания;
ВыполнениеЗаданияЗавершено = ЗначениеЗаполнено(ПоследнееЗавершениеОбновленияДоступа)
И ЗначениеЗаполнено(Состояние.ПоследнееЗавершениеОбновленияДоступа)
И ПоследнееЗавершениеОбновленияДоступа <> Состояние.ПоследнееЗавершениеОбновленияДоступа;
ПоследнееЗавершениеРегламентногоЗадания = Состояние.ПоследнееЗавершениеРегламентногоЗадания;
ПоследнееЗавершениеРегламентногоЗаданияВремя = Состояние.ПоследнееЗавершениеРегламентногоЗадания;
ПоследнееВыполнениеПродолжительность = Состояние.ПоследнееВыполнениеПродолжительность;
ТекстОшибкиЗавершенияРегламентногоЗадания = Состояние.ТекстОшибкиЗавершенияРегламентногоЗадания;
ПоследнееЗавершениеОбновленияДоступа = Состояние.ПоследнееЗавершениеОбновленияДоступа;
Элементы.ПоследнееЗавершениеРегламентногоЗадания.Видимость = Не Состояние.ПоследнееЗавершениеСегодня;
Элементы.ПоследнееЗавершениеРегламентногоЗаданияВремя.Видимость = Состояние.ПоследнееЗавершениеСегодня;
Элементы.ОбновлениеДоступаВыполняется.Видимость = Состояние.ОбновлениеДоступаВыполняется;
Элементы.ОбновлениеДоступаНеВыполняется.Видимость = Не Состояние.ОбновлениеДоступаВыполняется;
Элементы.РегламентноеЗаданиеЗавершилосьОшибкой.Видимость =
ЗначениеЗаполнено(ТекстОшибкиЗавершенияРегламентногоЗадания);
Элементы.КартинкаФоновоеЗаданиеВыполняется.Видимость = Состояние.ФоновоеЗаданиеВыполняется;
Элементы.КартинкаФоновоеЗаданиеОжидаетВыполнения.Видимость = Не Состояние.ФоновоеЗаданиеВыполняется;
Элементы.РегламентноеЗаданиеВыполняется.Видимость = Состояние.РегламентноеЗаданиеВыполняется;
Элементы.РегламентноеЗаданиеНеВыполняется.Видимость = Не Состояние.РегламентноеЗаданиеВыполняется;
Элементы.КартинкаРегламентноеЗаданиеВыполняется.Видимость = Состояние.ФоновоеЗаданиеВыполняется;
Элементы.КартинкаРегламентноеЗаданиеОжидаетВыполнения.Видимость = Не Состояние.ФоновоеЗаданиеВыполняется;
Если Не Состояние.РегламентноеЗаданиеВыполняется Тогда
Элементы.ВремяВыполненияРегламентногоЗадания1.Заголовок = "";
Элементы.ВремяВыполненияРегламентногоЗадания2.Заголовок = "";
Если Не Состояние.ОбновлениеДоступаВыполняется Тогда
Элементы.ВремяВыполненияФоновогоЗадания1.Заголовок = "";
Элементы.ВремяВыполненияФоновогоЗадания2.Заголовок = "";
Если ВыполнениеЗаданияЗавершено И Не АвтообновлениеПрогресса Тогда
НачатьОбновлениеПрогресса(Истина);
КонецЕсли;
@@ -275,14 +412,14 @@
ТекстЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Выполняется %1'"),
ВремяВыполненияСтрокой(Состояние.ВыполняетсяСекунд));
Элементы.ВремяВыполненияРегламентногоЗадания1.Заголовок = ТекстЗаголовка;
Элементы.ВремяВыполненияРегламентногоЗадания2.Заголовок = ТекстЗаголовка;
Элементы.ВремяВыполненияФоновогоЗадания1.Заголовок = ТекстЗаголовка;
Элементы.ВремяВыполненияФоновогоЗадания2.Заголовок = ТекстЗаголовка;
ВидимостьПервого = Элементы.ВремяВыполненияРегламентногоЗадания1.Видимость;
ВидимостьПервого = Элементы.ВремяВыполненияФоновогоЗадания1.Видимость;
ВидимостьПервого = Не ВидимостьПервого;
Элементы.ВремяВыполненияРегламентногоЗадания1.Видимость = ВидимостьПервого;
Элементы.ВремяВыполненияРегламентногоЗадания2.Видимость = Не ВидимостьПервого;
Элементы.ВремяВыполненияФоновогоЗадания1.Видимость = ВидимостьПервого;
Элементы.ВремяВыполненияФоновогоЗадания2.Видимость = Не ВидимостьПервого;
КонецПроцедуры
@@ -316,35 +453,38 @@
Состояние = Новый Структура;
Состояние.Вставить("ПоследнееЗавершениеРегламентногоЗадания",
Состояние.Вставить("ПоследнееЗавершениеОбновленияДоступа",
ПоследнееОбновлениеДоступа.ДатаЗавершенияНаСервере);
Состояние.Вставить("ПоследнееВыполнениеПродолжительность",
ВремяВыполненияСтрокой(ПоследнееОбновлениеДоступа.ПоследнееВыполнениеСекунд));
Состояние.Вставить("ПоследнееЗавершениеСегодня",
ЭтоСегодняшняяДата(ТекущаяДатаНаСервере, Состояние.ПоследнееЗавершениеРегламентногоЗадания));
ЭтоСегодняшняяДата(ТекущаяДатаНаСервере, Состояние.ПоследнееЗавершениеОбновленияДоступа));
Состояние.Вставить("ТекстОшибкиЗавершенияРегламентногоЗадания",
Состояние.Вставить("ТекстОшибкиОбновленияДоступа",
ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения);
Состояние.Вставить("ОбновлениеДоступаЗапрещено",
ПоследнееОбновлениеДоступа.ОбновлениеДоступаЗапрещено);
Состояние.Вставить("ВыполняетсяСекунд", 0);
Исполнитель = УправлениеДоступомСлужебный.ИсполнительОбновленияДоступа(ПоследнееОбновлениеДоступа);
Если Исполнитель = Неопределено Тогда
Состояние.Вставить("РегламентноеЗаданиеВыполняется", Ложь);
Состояние.Вставить("ОбновлениеДоступаВыполняется", Ложь);
Состояние.Вставить("ФоновоеЗаданиеВыполняется", Ложь);
ИначеЕсли ТипЗнч(Исполнитель) = Тип("ФоновоеЗадание")
И Исполнитель.УникальныйИдентификатор <> ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания Тогда
Состояние.Вставить("РегламентноеЗаданиеВыполняется", Истина);
Состояние.Вставить("ОбновлениеДоступаВыполняется", Истина);
ОжидаетВыполненияСекунд = ТекущаяДатаНаСервере - Исполнитель.Начало;
ОжидаетВыполненияСекунд = ?(ОжидаетВыполненияСекунд < 0, 0, ОжидаетВыполненияСекунд);
Состояние.Вставить("ФоновоеЗаданиеВыполняется", ОжидаетВыполненияСекунд < 2);
Иначе
Состояние.Вставить("РегламентноеЗаданиеВыполняется", Истина);
Состояние.Вставить("ОбновлениеДоступаВыполняется", Истина);
Состояние.Вставить("ФоновоеЗаданиеВыполняется", Истина);
ВыполняетсяСекунд = ТекущаяДатаНаСервере - ПоследнееОбновлениеДоступа.ДатаЗапускаНаСервере;
Состояние.Вставить("ВыполняетсяСекунд", ?(ВыполняетсяСекунд < 0, 0, ВыполняетсяСекунд));
@@ -362,7 +502,7 @@
КонецФункции
&НаСервереБезКонтекста
Функция ЗапуститьРегламентноеЗаданиеСейчасНаСервере(СостояниеЗаданияОбновленияДоступа)
Функция ЗапуститьОбновлениеДоступаСейчасНаСервере(СостояниеЗаданияОбновленияДоступа)
Результат = УправлениеДоступомСлужебный.ЗапуститьОбновлениеДоступаНаУровнеЗаписей(Истина);
@@ -385,13 +525,13 @@
ОтменитьОбновлениеПрогрессаНаСервере(ИдентификаторЗаданияОбновленияПрогресса);
ИначеЕсли Не АвтообновлениеПрогресса И Не ЗапускВручную
Или Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеВыполняется Тогда
Или Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеПрогрессаВыполняется Тогда
Возврат;
КонецЕсли;
ПодключитьОбработчикОжидания("ОбновитьПрогрессОбработчикОжидания", 0.1, Истина);
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеВыполняется;
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеПрогрессаВыполняется;
Элементы.ОтменитьОбновлениеПрогресса.Доступность = Ложь;
Элементы.КартинкаОбновлениеПрогресса.Видимость = Истина;
Элементы.КартинкаОжиданиеОбновленияПрогресса.Видимость = Ложь;
@@ -410,7 +550,7 @@
Контекст = Новый Структура;
Контекст.Вставить("РассчитыватьПоКоличествуДанных", РассчитыватьПоКоличествуДанных);
Контекст.Вставить("ПоказыватьОбработанныеСписки", Элементы.ФормаПоказатьОбработанныеСписки.Пометка);
Контекст.Вставить("ПоказыватьОбработанныеСписки", ПоказыватьОбработанныеСписки И РассчитыватьПоКоличествуДанных);
Контекст.Вставить("ЭтоПовторноеОбновлениеПрогресса", ЭтоПовторноеОбновлениеПрогресса);
Контекст.Вставить("ВсегоОбновлено", ВсегоОбновлено);
Контекст.Вставить("ПериодОбновленияПрогресса", ПериодОбновленияПрогресса);
@@ -475,7 +615,9 @@
АвтообновлениеПрогресса = Контекст.АвтообновлениеПрогресса;
КонецЕсли;
Элементы.РегламентноеЗаданиеОтключено.Видимость = Контекст.Свойство("РегламентноеЗаданиеОтключено");
Элементы.РегламентноеЗаданиеОтключено.Видимость =
Не Элементы.ОбновлениеДоступаЗапрещено.Видимость
И Контекст.Свойство("РегламентноеЗаданиеОтключено");
Индекс = Списки.Количество() - 1;
Пока Индекс >= 0 Цикл
@@ -503,7 +645,7 @@
ПериодОбновленияПрогресса, Истина);
КонецЕсли;
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеЗавершено;
Элементы.ОбновлениеПрогресса.ТекущаяСтраница = Элементы.ОбновлениеПрогрессаЗавершено;
ЭтоПовторноеОбновлениеПрогресса = Истина;
ОбновитьСостояниеЗаданияОбновленияДоступа(Контекст.СостояниеЗаданияОбновленияДоступа);
@@ -588,6 +730,34 @@
КонецФункции
&НаКлиенте
Процедура ОбновитьВидимостьНастроекОтображения()
ОтображатьНастройки = РассчитыватьПоКоличествуДанных
И Не Элементы.КраткоПодробно.Скрыта();
Если Элементы.НастройкиОтображения.Видимость = ОтображатьНастройки Тогда
Возврат;
КонецЕсли;
Элементы.НастройкиОтображения.Видимость = ОтображатьНастройки;
Если ОтображатьНастройки Тогда
Элементы.СпискиКоличествоЭлементов.Видимость = ПоказыватьКоличествоЭлементов;
Элементы.СпискиКоличествоОбработанныхЭлементов.Видимость = ПоказыватьКоличествоЭлементов;
Элементы.СпискиКоличествоКлючейДоступа.Видимость = ПоказыватьКоличествоКлючейДоступа;
Элементы.СпискиКоличествоОбработанныхКлючейДоступа.Видимость = ПоказыватьКоличествоКлючейДоступа;
Элементы.СпискиИмяТаблицы.Видимость = ПоказыватьИмяТаблицы;
Иначе
Элементы.СпискиКоличествоЭлементов.Видимость = Ложь;
Элементы.СпискиКоличествоОбработанныхЭлементов.Видимость = Ложь;
Элементы.СпискиКоличествоКлючейДоступа.Видимость = Ложь;
Элементы.СпискиКоличествоОбработанныхКлючейДоступа.Видимость = Ложь;
Элементы.СпискиИмяТаблицы.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СортироватьСписок(ПоУбыванию = Ложь)
@@ -673,18 +843,62 @@
КонецФункции
&НаСервереБезКонтекста
Процедура ВключитьРегламентноеЗаданиеНаСервере()
Процедура ВключитьОбновлениеДоступаНаСервере()
УправлениеДоступомСлужебный.УстановитьЗапретОбновленияДоступа(Ложь);
УправлениеДоступомСлужебный.УстановитьОбновлениеДоступа(Истина);
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ОтменитьИВыключитьОбновлениеДоступаНаСервере()
Процедура ОстановитьИЗапретитьОбновлениеДоступаНаСервере()
УправлениеДоступомСлужебный.УстановитьОбновлениеДоступа(Ложь);
УправлениеДоступомСлужебный.ОтменитьОбновлениеДоступаНаУровнеЗаписей();
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Функция СтрокаСФорматированнымиЧастями(Шаблон, ФорматЧастей, КоличествоФорматируемыхЧастей)
Части = Новый Массив;
Для НомерФорматируемойЧасти = 1 По КоличествоФорматируемыхЧастей Цикл
РазделительНачало = "<" + НомерФорматируемойЧасти + ">";
РазделительКонец = "</" + НомерФорматируемойЧасти + ">";
Если СтрЧислоВхождений(Шаблон, РазделительНачало) <> 1
Или СтрЧислоВхождений(Шаблон, РазделительКонец) <> 1 Тогда
Шаблон = СтрЗаменить(Шаблон, РазделительНачало, "");
Шаблон = СтрЗаменить(Шаблон, РазделительКонец, "");
Продолжить;
КонецЕсли;
Позиция = СтрНайти(Шаблон, РазделительНачало);
Если Позиция > 1 Тогда
Строка = Лев(Шаблон, Позиция - 1);
Части.Добавить(СтрокаСФорматированнымиЧастями(Строка, ФорматЧастей, КоличествоФорматируемыхЧастей));
КонецЕсли;
Шаблон = Сред(Шаблон, Позиция + СтрДлина(РазделительНачало));
Позиция = СтрНайти(Шаблон, РазделительКонец);
ФорматируемаяСтрока = Лев(Шаблон, Позиция - 1);
Если ФорматЧастей.Получить(НомерФорматируемойЧасти) <> Неопределено Тогда
ПараметрыФормата = Новый Структура("Шрифт, ЦветТекста, ЦветФона, Ссылка");
ЗаполнитьЗначенияСвойств(ПараметрыФормата, ФорматЧастей.Получить(НомерФорматируемойЧасти));
ФорматируемаяСтрока = Новый ФорматированнаяСтрока(ФорматируемаяСтрока,
ПараметрыФормата.Шрифт, ПараметрыФормата.ЦветТекста, ПараметрыФормата.ЦветФона, ПараметрыФормата.Ссылка);
КонецЕсли;
Части.Добавить(ФорматируемаяСтрока);
Шаблон = Сред(Шаблон, Позиция + СтрДлина(РазделительКонец));
Если Шаблон = "" Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Если Шаблон <> "" Тогда
Части.Добавить(Шаблон);
КонецЕсли;
Возврат Новый ФорматированнаяСтрока(Части);
КонецФункции
#КонецОбласти
@@ -18,7 +18,8 @@
Если Не СтандартныеПодсистемыСервер.ВерсияПрограммыОбновленаДинамически() Тогда
СпискиСОграничением = УправлениеДоступомСлужебныйПовтИсп.СпискиСОграничением();
Иначе
СпискиСОграничением = УправлениеДоступомСлужебный.ДействующиеПараметрыОграниченияДоступа(Неопределено, Неопределено);
СпискиСОграничением = УправлениеДоступомСлужебный.ДействующиеПараметрыОграниченияДоступа(Неопределено,
Неопределено, Ложь);
КонецЕсли;
Списки = Новый Массив;
@@ -23,7 +23,7 @@
КонецЕсли;
УправлениеДоступомСлужебный.ДействующиеПараметрыОграниченияДоступа(Неопределено,
Неопределено, Ложь, Истина, ЕстьИзменения);
Неопределено, Истина, Ложь, Ложь, ЕстьИзменения);
КонецПроцедуры
@@ -39,6 +39,7 @@
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию1(Параметры) Экспорт
ОписаниеОграниченийДанных = УправлениеДоступомСлужебный.ОписаниеОграниченийДанных();
ВнешниеПользователиВключены = Константы.ИспользоватьВнешнихПользователей.Получить();
Списки = Новый Массив;
СпискиДляВнешнихПользователей = Новый Массив;
@@ -46,7 +47,8 @@
Если ЕстьПроверкаПраваНаСписок(КлючИЗначение.Значение.Текст) Тогда
Списки.Добавить(КлючИЗначение.Ключ);
КонецЕсли;
Если ЕстьПроверкаПраваНаСписок(КлючИЗначение.Значение.ТекстДляВнешнихПользователей) Тогда
Если ВнешниеПользователиВключены
И ЕстьПроверкаПраваНаСписок(КлючИЗначение.Значение.ТекстДляВнешнихПользователей) Тогда
СпискиДляВнешнихПользователей.Добавить(КлючИЗначение.Ключ);
КонецЕсли;
КонецЦикла;
@@ -113,7 +113,7 @@
ИмяВременнойПапки = ПолучитьИмяВременногоФайла("");
Если ОбменДаннымиСервер.РаспаковатьZipФайл(ИмяФайлаПравил, ИмяВременнойПапки) Тогда
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, "*.*", Истина);
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, ПолучитьМаскуВсеФайлы(), Истина);
// В архиве не было ни одного файла - отказываемся от загрузки.
Если СписокРаспакованныхФайлов.Количество() = 0 Тогда
@@ -402,7 +402,7 @@
ИмяВременнойПапки = ПолучитьИмяВременногоФайла("");
Если ОбменДаннымиСервер.РаспаковатьZipФайл(ИмяВременногоАрхива, ИмяВременнойПапки) Тогда
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, "*.*", Истина);
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, ПолучитьМаскуВсеФайлы(), Истина);
// В архиве не было ни одного файла - отказываемся от загрузки.
Если СписокРаспакованныхФайлов.Количество() = 0 Тогда
@@ -603,7 +603,7 @@
ИмяВременнойПапки = ПолучитьИмяВременногоФайла("");
Если ОбменДаннымиСервер.РаспаковатьZipФайл(ИмяВременногоАрхива, ИмяВременнойПапки) Тогда
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, "*.*", Истина);
СписокРаспакованныхФайлов = НайтиФайлы(ИмяВременнойПапки, ПолучитьМаскуВсеФайлы(), Истина);
// В архиве не было ни одного файла - отказываемся от загрузки.
Если СписокРаспакованныхФайлов.Количество() = 0 Тогда
@@ -10,19 +10,64 @@
#Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ, Замещение)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
СписокСубъектов = Новый Массив;
ДополнитьСписокСубъектамиПрежнегоНабора(СписокСубъектов);
ДополнительныеСвойства.Вставить("СписокСубъектов", СписокСубъектов);
КонецПроцедуры
Процедура ПриЗаписи(Отказ, Замещение)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ЗащитаПерсональныхДанных.ИспользоватьСкрытиеПерсональныхДанныхСубъектов() Тогда
СписокСубъектов = ДополнительныеСвойства["СписокСубъектов"];
ДополнитьСписокСубъектамиТекущегоНабора(СписокСубъектов);
ЗащитаПерсональныхДанных.ОбновитьДатыСкрытияПерсональныхДанныхСубъектов(СписокСубъектов);
Регистратор = Отбор.Регистратор.Значение;
ЗащитаПерсональныхДанных.РассчитатьДатуСкрытияПерсональныхДанныхПоОснованиям(Регистратор);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура ДополнитьСписокСубъектамиПрежнегоНабора(СписокСубъектов)
Если Не ЗащитаПерсональныхДанных.ИспользоватьСкрытиеПерсональныхДанныхСубъектов() Тогда
Возврат;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Регистратор", Отбор.Регистратор.Значение);
Запрос.Текст =
"ВЫБРАТЬ
| Согласия.Субъект КАК Субъект
|ИЗ
| РегистрСведений.СогласияНаОбработкуПерсональныхДанных КАК Согласия
|ГДЕ
| Согласия.Регистратор = &Регистратор";
Субъекты = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Субъект");
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(СписокСубъектов, Субъекты);
КонецПроцедуры
Процедура ДополнитьСписокСубъектамиТекущегоНабора(СписокСубъектов)
Если Не ЗащитаПерсональныхДанных.ИспользоватьСкрытиеПерсональныхДанныхСубъектов() Тогда
Возврат;
КонецЕсли;
Субъекты = ВыгрузитьКолонку("Субъект");
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(СписокСубъектов, Субъекты);
КонецПроцедуры
#КонецОбласти
@@ -7,7 +7,7 @@
</li><li>В поле <strong>Профиль</strong> выберите из списка один из <a href="Catalog.ПрофилиКлючевыхОпераций/Help">профилей ключевых операций</a>. Поле является обязательным.
</li><li>В поле <strong>Имя ключевой операции</strong> можно выбрать одну из ключевых операций.
</li><li>В поле <strong>Пользователь</strong> можно выбрать одного из пользователей программы.
</li><li>Нажмите кнопку <strong>Сформировать</strong>. Отчет состоит из двух частей: графика и таблицы.</li></ul><h3>Оценка производительности</h3>
</li><li>При необходимости включите флажок <strong>Выполнен с ошибкой</strong>, выберите значение для отбора, например, <strong>Нет</strong> (по умолчанию) для того чтобы выбрать замеры времени только по корректным операциям. Анализ корректных выполнений ключевых операций особенно актуален для операций, связанных с проведением документов. Это позволяет отделить корректные замеры проведения документов от ошибочных замеров, например, связанных с ошибками заполнения. Нажмите кнопку <strong>Сформировать</strong>. Отчет состоит из двух частей: графика и таблицы.</li></ul><h3>Оценка производительности</h3>
<ul><li>Оценка производительности выводится в диапазоне от нуля до единицы. В зависимости от значения оценки поле с оценкой выделяется определенным цветом. Полученные оценки можно интерпретировать следующим образом: </li></ul><p></p>
<p></p>
<table border="1"><tbody><tr><td colspan="3">
@@ -1875,6 +1875,9 @@
Запрос.УстановитьПараметр("ИспользуемыеВидыДоступа", ИспользуемыеВидыДоступа);
Запрос.УстановитьПараметр("ОграничиватьДоступНаУровнеЗаписейУниверсально",
УправлениеДоступомСлужебный.ОграничиватьДоступНаУровнеЗаписейУниверсально(Истина));
Запрос.Текст =
"ВЫБРАТЬ
| ПостоянныеВидыОграничений.Таблица,
@@ -1917,6 +1920,7 @@
| И (ПостоянныеВидыОграничений.ВидДоступа = НЕОПРЕДЕЛЕНО)
| И (ТИПЗНАЧЕНИЯ(НомераНаборов.Объект) = ТИПЗНАЧЕНИЯ(ПостоянныеВидыОграничений.ТаблицаОбъекта))
| И (НомераНаборов.Чтение)
| И НЕ (&ОграничиватьДоступНаУровнеЗаписейУниверсально)
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаборыЗначенийДоступа КАК СтрокиНаборов
| ПО (СтрокиНаборов.Объект = НомераНаборов.Объект)
| И (СтрокиНаборов.НомерНабора = НомераНаборов.НомерНабора)
@@ -1934,6 +1938,7 @@
| И (ПостоянныеВидыОграничений.ВидДоступа = НЕОПРЕДЕЛЕНО)
| И (ТИПЗНАЧЕНИЯ(НомераНаборов.Объект) = ТИПЗНАЧЕНИЯ(ПостоянныеВидыОграничений.ТаблицаОбъекта))
| И (НомераНаборов.Изменение)
| И НЕ (&ОграничиватьДоступНаУровнеЗаписейУниверсально)
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаборыЗначенийДоступа КАК СтрокиНаборов
| ПО (СтрокиНаборов.Объект = НомераНаборов.Объект)
| И (СтрокиНаборов.НомерНабора = НомераНаборов.НомерНабора)
@@ -815,6 +815,93 @@
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object>
<name>CommonCommand.НастройкаОбменаСообщениями</name>
<right>
@@ -4989,93 +5076,6 @@
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object>
<name>InformationRegister.УдалитьРейтингАктивностиОбластейДанных</name>
<right>
@@ -14,6 +14,37 @@
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object>
<name>Catalog.РассылкиОтчетов.Command.СобытияРассылки</name>
<right>
@@ -76,37 +107,6 @@
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<restrictionTemplate>
<name>ДляОбъекта(ПолеОбъекта)</name>
<condition>// ДляОбъекта(ПолеОбъекта = "")
@@ -1120,6 +1120,45 @@
<value>false</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object>
<name>Catalog.ШаблоныСообщенийПрисоединенныеФайлы</name>
<right>
@@ -6605,45 +6644,6 @@
<value>false</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object>
<name>Catalog.ВстречаПрисоединенныеФайлы</name>
<right>
@@ -3,13 +3,6 @@
<setForNewObjects>false</setForNewObjects>
<setForAttributesByDefault>true</setForAttributesByDefault>
<independentRightsOfChildObjects>false</independentRightsOfChildObjects>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
@@ -41,6 +34,13 @@
<value>true</value>
</right>
</object>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object>
<name>DataProcessor.ЖурналРегистрации</name>
<right>
@@ -51,6 +51,8 @@
ЛокализуемыеЭлементы.Добавить(Элементы.ОписаниеВнешнегоОтчета);
ЛокализуемыеЭлементы.Добавить(Элементы.Описание);
ЛокализацияСервер.ПриСозданииНаСервере(ЛокализуемыеЭлементы);
Элементы.Описание.КнопкаВыбора = Не Элементы.Описание.КнопкаОткрытия;
КонецПроцедуры
&НаСервере
@@ -109,5 +109,7 @@
<content>SessionParameter.РазрешенныйНаборГруппПользователей</content>
<content>SessionParameter.РазрешенныйПустойНаборГруппДоступа</content>
<content>SessionParameter.ТаблицыРасширенийСОграничениемДоступа</content>
<content>CommonPicture.ОжидаемаяДлительнаяОперация16</content>
<content>CommonPicture.ОжидаемаяДлительнаяОперация48</content>
<parentSubsystem>Subsystem.СтандартныеПодсистемы</parentSubsystem>
</mdclass:Subsystem>