diff --git a/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Form.form
index f757152b9..ca2298971 100644
--- a/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Form.form
+++ b/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Form.form
@@ -702,7 +702,6 @@
Left
- truetruetrue
@@ -8218,6 +8217,19 @@
true
+
+ ЕстьПравоРедактировать
+ 66
+
+ Boolean
+
+
+ true
+
+
+ true
+
+ ВыборТипаДоверителя
diff --git a/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Module.bsl
index 45aaa3aca..d704026cc 100644
--- a/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Module.bsl
+++ b/SSL/src/Catalogs/МашиночитаемыеДоверенности/Forms/ФормаЭлемента/Module.bsl
@@ -18,6 +18,8 @@
ПериодОпросаСтатусов = 300;
ТребуетсяОбновлениеДекораций = Истина;
+ ЕстьПравоРедактировать = ПравоДоступа("Изменение", Метаданные.Справочники.МашиночитаемыеДоверенности);
+
Если Параметры.Ключ.Пустая() Тогда
Объект.ФайлДоверенности = Неопределено;
@@ -807,7 +809,7 @@
ДанныеФайла.СсылкаНаДвоичныеДанныеФайла,
Элементы.ЭлектронныеПодписи.ВыделенныеСтроки, ДанныеФайла);
- Если Элементы.ФормаЗаписатьИЗакрыть.Видимость И Элементы.ФормаЗаписатьИЗакрыть.Доступность Тогда
+ Если ЕстьПравоРедактировать Тогда
Модифицированность = Истина;
СохранитьРезультатПроверкиПодписей = Истина;
КонецЕсли;
@@ -1708,13 +1710,10 @@
ВыполнитьОбработкуОповещения(Контекст.Оповещение, Новый Структура);
КонецЕсли;
- Если Элементы.ФормаЗаписатьИЗакрыть.Видимость И Элементы.ФормаЗаписатьИЗакрыть.Доступность Тогда
- Модифицированность = Истина;
- СохранитьРезультатПроверкиПодписей = Истина;
- КонецЕсли;
-
+ Модифицированность = Истина;
+ СохранитьРезультатПроверкиПодписей = Истина;
ОбновитьСтатусПослеПодписания();
-
+
КонецПроцедуры
&НаСервере
@@ -1902,7 +1901,8 @@
Если Условие = Неопределено Или Условие = "Подписание" Тогда
- РеквизитыНедоступныДляРедактирования = Форма.ЭлектронныеПодписи.Количество() > 0 Или ВнешнийСтатус(Форма);
+ РеквизитыНедоступныДляРедактирования = Не Форма.ЕстьПравоРедактировать
+ Или Форма.ЭлектронныеПодписи.Количество() > 0 Или ВнешнийСтатус(Форма);
Если Форма.РеквизитыНедоступныДляРедактирования <> РеквизитыНедоступныДляРедактирования Тогда
Форма.РеквизитыНедоступныДляРедактирования = РеквизитыНедоступныДляРедактирования;
@@ -3576,6 +3576,7 @@
Элементы.ГруппаРегистрацияВДругомРеестре.Видимость = Ложь;
Элементы.ГруппаСтатусВДругомРеестре.Видимость = Ложь;
+ Элементы.РегистрироватьВДругомРеестре.Доступность = ЕстьПравоРедактировать;
ПараметрыПереопределения = Новый Структура;
ПараметрыПереопределения.Вставить("ПоказыватьРегистрироватьВРеестре", Ложь);
diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/Токен/Module.bsl b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/Токен/Module.bsl
index 47c65d6b3..5e3ef0161 100644
--- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/Токен/Module.bsl
+++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/Токен/Module.bsl
@@ -43,6 +43,7 @@
Токен = Новый Структура;
Токен.Вставить("Слот");
Токен.Вставить("СерийныйНомер");
+ Токен.Вставить("Представление");
ЗаполнитьЗначенияСвойств(Токен, ЭтотОбъект);
Элементы.ГруппаОбновлениеСертификатов.Видимость = Истина;
diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl b/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl
index 101770b5e..6298e1b10 100644
--- a/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl
+++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl
@@ -236,7 +236,7 @@
//
Процедура ОбновитьНепоставляемыеПрофилиПоИзменениямКонфигурации() Экспорт
- Кэш = УправлениеДоступомСлужебныйПовтИсп.ОписаниеПоставляемыхПрофилейСеанса();
+ Кэш = УправлениеДоступомСлужебныйПовтИсп.ОписаниеСтандартныхРолейРасширенийСеанса();
НовоеЗначение = Кэш.ХешСумма;
УжеИзменен = Ложь;
@@ -1579,12 +1579,18 @@
ОписаниеВерсии = Новый Структура("СвойстваВерсии", Новый Массив);
ДобавитьЭлементВерсии(ОписаниеВерсии, "Версия", "1");
- ДобавитьЭлементВерсии(ОписаниеВерсии, "ОбщиеПрава", ОбщиеПрава);
- ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПрава", БазовыеПрава);
- ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПраваВнешнихПользователей", БазовыеПраваВнешнихПользователей);
- ДобавитьЭлементВерсии(ОписаниеВерсии, "АдминистраторСистемы", АдминистраторСистемы);
- ДобавитьЭлементВерсии(ОписаниеВерсии, "ПолныеПрава", ПолныеПрава);
- ДобавитьЭлементВерсии(ОписаниеВерсии, "ДополнительныеРолиАдминистратора", ДополнительныеРолиАдминистратора);
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "ОбщиеПрава",
+ РолиСИдентификаторами(ОбщиеПрава));
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПрава",
+ РолиСИдентификаторами(БазовыеПрава));
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПраваВнешнихПользователей",
+ РолиСИдентификаторами(БазовыеПраваВнешнихПользователей));
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "АдминистраторСистемы",
+ РолиСИдентификаторами(АдминистраторСистемы));
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "ПолныеПрава",
+ РолиСИдентификаторами(ПолныеПрава));
+ ДобавитьЭлементВерсии(ОписаниеВерсии, "ДополнительныеРолиАдминистратора",
+ РолиСИдентификаторами(ДополнительныеРолиАдминистратора));
Результат = Новый ФиксированнаяСтруктура(Свойства);
@@ -2355,6 +2361,7 @@
СвойстваПрофилей = Новый Соответствие;
ОписанияПрофилейМассив = Новый Массив;
РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
+ ИдентификаторыВсехРолей = ИдентификаторыВсехРолей();
Для Каждого ОписаниеПрофиля Из СписокПрофилей Цикл
СвойстваПрофиля = Новый ФиксированнаяСтруктура(ОписаниеПрофиля.Значение);
@@ -2369,7 +2376,9 @@
Если СвойстваПрофиля.ЭтоГруппа Тогда
Продолжить;
КонецЕсли;
- ДобавитьСвойстваВерсии(ОписаниеВерсии, СвойстваПрофиля, "Назначение, Роли");
+ ДобавитьСвойстваВерсии(ОписаниеВерсии, СвойстваПрофиля, "Назначение");
+ РолиСИдентификаторами = РолиСИдентификаторами(СвойстваПрофиля.Роли, ИдентификаторыВсехРолей);
+ ДобавитьСвойстваВерсии(ОписаниеВерсии, Новый Структура("Роли", РолиСИдентификаторами) , "Роли");
Если РазделениеВключено Тогда
РолиНедоступныеВСервисе = Новый СписокЗначений;
Для Каждого ОписаниеРоли Из СвойстваПрофиля.РолиНедоступныеВСервисе Цикл
@@ -2708,6 +2717,39 @@
КонецПроцедуры
+// Для функции ПоставляемыеПрофили.
+Функция ИдентификаторыВсехРолей()
+
+ Результат = Новый Соответствие;
+
+ Для Каждого Роль Из Метаданные.Роли Цикл
+ Результат.Вставить(Роль.Имя,
+ Справочники.ИдентификаторыОбъектовМетаданных.КлючОбъектаМетаданныхРоль(Роль));
+ КонецЦикла;
+
+ Возврат Результат;
+
+КонецФункции
+
+// Для функции ПоставляемыеПрофили.
+Функция РолиСИдентификаторами(ИменаРолей, ИдентификаторыВсехРолей = Неопределено)
+
+ Результат = Новый Массив;
+
+ Для Каждого ИмяРоли Из ИменаРолей Цикл
+ Если ИдентификаторыВсехРолей = Неопределено Тогда
+ ИдентификаторРоли = Справочники.ИдентификаторыОбъектовМетаданных.КлючОбъектаМетаданныхРоль(
+ Метаданные.Роли[ИмяРоли]);
+ Иначе
+ ИдентификаторРоли = ИдентификаторыВсехРолей.Получить(ИмяРоли);
+ КонецЕсли;
+ Результат.Добавить(ИмяРоли + " " + Строка(ИдентификаторРоли));
+ КонецЦикла;
+
+ Возврат Результат;
+
+КонецФункции
+
// Возвращает свойства профиля, указанные в переопределяемом модуле,
// преобразованные в фиксированный формат сохранения в базе данных.
// Подробное описание свойств смотри в функциях НовоеОписаниеПрофиляГруппДоступа
diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_0_3_49/Template.addin b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_1_1_1/Template.addin
similarity index 54%
rename from SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_0_3_49/Template.addin
rename to SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_1_1_1/Template.addin
index c7fc05033..fc33b5056 100644
Binary files a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_0_3_49/Template.addin and b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаExtraCryptoAPI_3_1_1_1/Template.addin differ
diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo
index 2a81096af..34159f47c 100644
--- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo
+++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo
@@ -836,7 +836,7 @@
MobileDevice
- КомпонентаExtraCryptoAPI_3_0_3_49
+ КомпонентаExtraCryptoAPI_3_1_1_1ruКомпонента ExtraCryptoAPI
diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl
index 548ddcb8d..613e4d5ef 100644
--- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl
+++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl
@@ -6,6 +6,13 @@
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
+#Область ОписаниеПеременных
+
+&НаКлиенте
+Перем ИдентификаторСпособаИсправления;
+
+#КонецОбласти
+
#Область ОбработчикиСобытийФормы
&НаСервере
@@ -173,7 +180,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ПоказатьСпособИсправления(СпособИсправления, ДополнительныеПараметры = Неопределено) Экспорт
+Процедура ПоказатьСпособИсправления(СпособИсправления)
Если СпособИсправления = "b186a13d-a8b1-4a30-acf3-f1a09f104deb" Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Включите авторизацию на сервере исходящей почты.'"),
@@ -590,7 +597,7 @@
Если Модифицированность Тогда
Записать(Новый Структура("ПроверитьНастройки"));
Иначе
- ОписаниеОповещения = Новый ОписаниеОповещения("ПоказатьСпособИсправления", ЭтотОбъект);
+ ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииПроверкиНастроек", ЭтотОбъект);
ПараметрыОткрытия = Новый Структура("УчетнаяЗапись", Объект.Ссылка);
ОткрытьФорму("Справочник.УчетныеЗаписиЭлектроннойПочты.Форма.ПроверкаНастроекУчетнойЗаписи",
ПараметрыОткрытия, ЭтотОбъект, , , , ОписаниеОповещения);
@@ -761,5 +768,24 @@
ОткрытьФорму("Справочник.УчетныеЗаписиЭлектроннойПочты.Форма.ПомощникНастройкиУчетнойЗаписи",
ПараметрыОткрытия, , , , , ОписаниеОповещения);
+ КонецПроцедуры
+
+&НаКлиенте
+Процедура ПриЗавершенииПроверкиНастроек(СпособИсправления, ДополнительныеПараметры = Неопределено) Экспорт
+
+ Если ЗначениеЗаполнено(СпособИсправления) Тогда
+ ИдентификаторСпособаИсправления = СпособИсправления;
+ ПодключитьОбработчикОжидания("ПерейтиКИсправлению", 0.1, Истина);
+ КонецЕсли;
+
КонецПроцедуры
+
+&НаКлиенте
+Процедура ПерейтиКИсправлению()
+
+ ПоказатьСпособИсправления(ИдентификаторСпособаИсправления);
+ ИдентификаторСпособаИсправления = Неопределено;
+
+КонецПроцедуры
+
#КонецОбласти
diff --git a/SSL/src/CommonForms/ВыборОсновнойПечатнойФормы/Help/ru.html b/SSL/src/CommonForms/ВыборОсновнойПечатнойФормы/Help/ru.html
index 8c26fb4d4..3d0e05f49 100644
--- a/SSL/src/CommonForms/ВыборОсновнойПечатнойФормы/Help/ru.html
+++ b/SSL/src/CommonForms/ВыборОсновнойПечатнойФормы/Help/ru.html
@@ -1,3 +1,3 @@
-Основные печатные формы являются подтверждающими, первичными документами для хозяйственной операции. Они определяют внешнее представление документов.
Основная печатная форма по документу может запоминаться только одна. Поэтому при формировании комплекта из нескольких основных, необходимо выбрать какую запоминать.
Сохраненное наименавание может быть использовано при формировании исходящих документах.
\ No newline at end of file
+Основные печатные формы являются подтверждающими, первичными документами для хозяйственной операции. Они определяют внешнее представление документов.
Основная печатная форма по документу может запоминаться только одна. Поэтому при формировании комплекта из нескольких основных, необходимо выбрать какую запоминать.
Сохраненное наименование может быть использовано при формировании исходящих документов.