3_1_9_238
This commit is contained in:
1 parent
ea636c0ef7
commit
964f40af7d
125 files changed
+3245
-2261
No files matched your search
@@ -315,6 +315,7 @@
|
||||
Процедура ОбновитьКлассификаторыПолномочий(Команда)
|
||||
|
||||
ОбновитьКлассификаторыПолномочийНаСервере();
|
||||
ОбновитьСписокПолномочий();
|
||||
ПоказатьПредупреждение(, НСтр("ru = 'Обновление классификаторов полномочий выполнено.'"));
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -844,4 +845,19 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОбновитьСписокПолномочий()
|
||||
|
||||
КодыПолномочий = Новый Массив;
|
||||
|
||||
Для Каждого Полномочие Из ВыбранныеПолномочияТаблица Цикл
|
||||
Если ЗначениеЗаполнено(Полномочие.Код) И Не Полномочие.НетВКлассификаторе Тогда
|
||||
КодыПолномочий.Добавить(Полномочие.Код);
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
СформироватьДеревоПолномочий(ПоместитьВоВременноеХранилище(КодыПолномочий));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -570,9 +570,10 @@
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура СертификатОкончаниеВыбора(Результат, Контекст) Экспорт
|
||||
Асинх Процедура СертификатОкончаниеВыбора(Результат, Контекст) Экспорт
|
||||
Если ТипЗнч(Результат) = Тип("ДвоичныеДанные") Тогда
|
||||
Сертификат = ЭлектроннаяПодписьКлиент.ПредставлениеСертификата(Новый СертификатКриптографии(Результат));
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(Новый СертификатКриптографии(Результат));
|
||||
Сертификат = СвойстваСертификата.Представление;
|
||||
СертификатПредставителя = Результат;
|
||||
Иначе
|
||||
Сертификат = Неопределено;
|
||||
|
||||
@@ -110,8 +110,8 @@
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
СвойстваСеанса = УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса().СвойстваСеанса;
|
||||
ПроверенныеПоставляемыеПрофилиСеанса = ПроверенныеПоставляемыеПрофилиСеанса(СвойстваСеанса);
|
||||
НовоеЗначение = ХешСуммаПоставляемыхПрофилей(ПроверенныеПоставляемыеПрофилиСеанса);
|
||||
НовоеЗначение = "";
|
||||
ПроверенныеПоставляемыеПрофилиСеанса(СвойстваСеанса, НовоеЗначение);
|
||||
|
||||
НачатьТранзакцию();
|
||||
Попытка
|
||||
@@ -1476,19 +1476,21 @@
|
||||
|
||||
// Для вызова из УправлениеДоступомСлужебныйПовтИсп.ОписаниеСтандартныхРолейРасширенийСеанса
|
||||
//
|
||||
// Параметры:
|
||||
// ХешСумма - Строка - возвращаемое значение.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. УправлениеДоступомСлужебный.СтандартныеРолиРасширений
|
||||
//
|
||||
Функция ПодготовленныеСтандартныеРолиРасширенийСеанса() Экспорт
|
||||
Функция ПодготовленныеСтандартныеРолиРасширенийСеанса(ХешСумма) Экспорт
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ОбщиеПрава", Новый Массив);
|
||||
Результат.Вставить("БазовыеПрава", Новый Массив);
|
||||
Результат.Вставить("БазовыеПраваВнешнихПользователей", Новый Массив);
|
||||
Результат.Вставить("АдминистраторСистемы", Новый Массив);
|
||||
Результат.Вставить("ПолныеПрава", Новый Массив);
|
||||
Результат.Вставить("Все", Новый Соответствие);
|
||||
Результат.Вставить("ДополнительныеРолиАдминистратора", Новый Соответствие);
|
||||
ОбщиеПрава = Новый СписокЗначений;
|
||||
БазовыеПрава = Новый СписокЗначений;
|
||||
БазовыеПраваВнешнихПользователей = Новый СписокЗначений;
|
||||
АдминистраторСистемы = Новый СписокЗначений;
|
||||
ПолныеПрава = Новый СписокЗначений;
|
||||
ДополнительныеРолиАдминистратора = Новый СписокЗначений;
|
||||
ВсеРоли = Новый Соответствие;
|
||||
|
||||
РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
|
||||
|
||||
@@ -1500,41 +1502,100 @@
|
||||
ИмяРоли = Роль.Имя;
|
||||
|
||||
Если СтрЗаканчиваетсяНа(ВРег(ИмяРоли), ВРег("ОбщиеПрава")) Тогда
|
||||
Результат.ОбщиеПрава.Добавить(ИмяРоли);
|
||||
Результат.ДополнительныеРолиАдминистратора.Вставить(ИмяРоли, Истина);
|
||||
Результат.Все.Вставить(ИмяРоли, "ОбщиеПрава");
|
||||
ОбщиеПрава.Добавить(ИмяРоли);
|
||||
ДополнительныеРолиАдминистратора.Добавить(ИмяРоли);
|
||||
ВсеРоли.Вставить(ИмяРоли, "ОбщиеПрава");
|
||||
|
||||
ИначеЕсли СтрЗаканчиваетсяНа(ВРег(ИмяРоли), ВРег("ПолныеПрава")) Тогда
|
||||
Результат.ПолныеПрава.Добавить(ИмяРоли);
|
||||
Результат.ДополнительныеРолиАдминистратора.Вставить(ИмяРоли, Истина);
|
||||
Результат.Все.Вставить(ИмяРоли, "ПолныеПрава");
|
||||
ПолныеПрава.Добавить(ИмяРоли);
|
||||
ДополнительныеРолиАдминистратора.Добавить(ИмяРоли);
|
||||
ВсеРоли.Вставить(ИмяРоли, "ПолныеПрава");
|
||||
|
||||
ИначеЕсли СтрЗаканчиваетсяНа(ВРег(ИмяРоли), ВРег("БазовыеПрава")) Тогда
|
||||
Результат.БазовыеПрава.Добавить(ИмяРоли);
|
||||
Результат.Все.Вставить(ИмяРоли, "БазовыеПрава");
|
||||
БазовыеПрава.Добавить(ИмяРоли);
|
||||
ВсеРоли.Вставить(ИмяРоли, "БазовыеПрава");
|
||||
|
||||
ИначеЕсли СтрЗаканчиваетсяНа(ВРег(ИмяРоли), ВРег("БазовыеПраваВнешнихПользователей")) Тогда
|
||||
Результат.БазовыеПраваВнешнихПользователей.Добавить(ИмяРоли);
|
||||
Результат.Все.Вставить(ИмяРоли, "БазовыеПраваВнешнихПользователей");
|
||||
БазовыеПраваВнешнихПользователей.Добавить(ИмяРоли);
|
||||
ВсеРоли.Вставить(ИмяРоли, "БазовыеПраваВнешнихПользователей");
|
||||
|
||||
ИначеЕсли СтрЗаканчиваетсяНа(ВРег(ИмяРоли), ВРег("АдминистраторСистемы")) Тогда
|
||||
Результат.АдминистраторСистемы.Добавить(ИмяРоли);
|
||||
Результат.Все.Вставить(ИмяРоли, "АдминистраторСистемы");
|
||||
АдминистраторСистемы.Добавить(ИмяРоли);
|
||||
ВсеРоли.Вставить(ИмяРоли, "АдминистраторСистемы");
|
||||
Если Не РазделениеВключено Тогда
|
||||
Результат.ДополнительныеРолиАдминистратора.Вставить(ИмяРоли, Истина);
|
||||
ДополнительныеРолиАдминистратора.Добавить(ИмяРоли);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
Возврат ОбщегоНазначения.ФиксированныеДанные(Результат);
|
||||
ОбщиеПрава.СортироватьПоЗначению();
|
||||
БазовыеПрава.СортироватьПоЗначению();
|
||||
БазовыеПраваВнешнихПользователей.СортироватьПоЗначению();
|
||||
АдминистраторСистемы.СортироватьПоЗначению();
|
||||
ПолныеПрава.СортироватьПоЗначению();
|
||||
ДополнительныеРолиАдминистратора.СортироватьПоЗначению();
|
||||
|
||||
ОбщиеПрава = ОбщиеПрава.ВыгрузитьЗначения();
|
||||
БазовыеПрава = БазовыеПрава.ВыгрузитьЗначения();
|
||||
БазовыеПраваВнешнихПользователей = БазовыеПраваВнешнихПользователей.ВыгрузитьЗначения();
|
||||
АдминистраторСистемы = АдминистраторСистемы.ВыгрузитьЗначения();
|
||||
ПолныеПрава = ПолныеПрава.ВыгрузитьЗначения();
|
||||
ДополнительныеРолиАдминистратора = ДополнительныеРолиАдминистратора.ВыгрузитьЗначения();
|
||||
|
||||
ДополнительныеРоли = Новый Соответствие;
|
||||
Для Каждого ИмяРоли Из ДополнительныеРолиАдминистратора Цикл
|
||||
ДополнительныеРоли.Вставить(ИмяРоли, Истина);
|
||||
КонецЦикла;
|
||||
|
||||
Свойства = Новый Структура;
|
||||
Свойства.Вставить("ОбщиеПрава",
|
||||
Новый ФиксированныйМассив(ОбщиеПрава));
|
||||
|
||||
Свойства.Вставить("БазовыеПрава",
|
||||
Новый ФиксированныйМассив(БазовыеПрава));
|
||||
|
||||
Свойства.Вставить("БазовыеПраваВнешнихПользователей",
|
||||
Новый ФиксированныйМассив(БазовыеПраваВнешнихПользователей));
|
||||
|
||||
Свойства.Вставить("АдминистраторСистемы",
|
||||
Новый ФиксированныйМассив(АдминистраторСистемы));
|
||||
|
||||
Свойства.Вставить("ПолныеПрава",
|
||||
Новый ФиксированныйМассив(ПолныеПрава));
|
||||
|
||||
Свойства.Вставить("Все",
|
||||
Новый ФиксированноеСоответствие(ВсеРоли));
|
||||
|
||||
Свойства.Вставить("ДополнительныеРолиАдминистратора",
|
||||
Новый ФиксированноеСоответствие(ДополнительныеРоли));
|
||||
|
||||
ОписаниеВерсии = Новый Структура("СвойстваВерсии", Новый Массив);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "Версия", "1");
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ОбщиеПрава", ОбщиеПрава);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПрава", БазовыеПрава);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "БазовыеПраваВнешнихПользователей", БазовыеПраваВнешнихПользователей);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "АдминистраторСистемы", АдминистраторСистемы);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ПолныеПрава", ПолныеПрава);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ДополнительныеРолиАдминистратора", ДополнительныеРолиАдминистратора);
|
||||
|
||||
Результат = Новый ФиксированнаяСтруктура(Свойства);
|
||||
|
||||
СтрокаВерсии = СтрСоединить(ОписаниеВерсии.СвойстваВерсии, Символы.ПС);
|
||||
ХешСумма = УправлениеДоступомСлужебный.ХешСуммаДанных(СтрокаВерсии);
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ХешСуммаСтандартныхРолейРасширений(СтандартныеРоли) Экспорт
|
||||
// См. УправлениеДоступомСлужебный.ДобавитьЭлементВерсии
|
||||
Процедура ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение)
|
||||
УправлениеДоступомСлужебный.ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение);
|
||||
КонецПроцедуры
|
||||
|
||||
Возврат УправлениеДоступомСлужебный.ХешСуммаДанных(СтандартныеРоли);
|
||||
|
||||
КонецФункции
|
||||
// См. УправлениеДоступомСлужебный.ДобавитьСвойстваВерсии
|
||||
Процедура ДобавитьСвойстваВерсии(Контекст, Структура, ИменаПолей)
|
||||
УправлениеДоступомСлужебный.ДобавитьСвойстваВерсии(Контекст, Структура, ИменаПолей);
|
||||
КонецПроцедуры
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Процедуры и функции для поддержки обмена данными в РИБ.
|
||||
@@ -1877,11 +1938,12 @@
|
||||
// Параметры:
|
||||
// СвойстваВидовДоступа - см. УправлениеДоступомСлужебный.СвойстваВидовДоступа
|
||||
// - Неопределено
|
||||
// ХешСумма - Строка - возвращаемое значение.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. УправлениеДоступомСлужебный.ПоставляемыеПрофили
|
||||
//
|
||||
Функция ПроверенныеПоставляемыеПрофилиСеанса(СвойстваВидовДоступа = Неопределено) Экспорт
|
||||
Функция ПроверенныеПоставляемыеПрофилиСеанса(СвойстваВидовДоступа = Неопределено, ХешСумма = "") Экспорт
|
||||
|
||||
ЗаполненныеПоставляемыеПрофили = ЗаполненныеПоставляемыеПрофили();
|
||||
ПараметрыОбновления = ЗаполненныеПоставляемыеПрофили.ПараметрыОбновления;
|
||||
@@ -1919,8 +1981,8 @@
|
||||
ВсеИмена = Новый Соответствие;
|
||||
ВсеИдентификаторы = Новый Соответствие;
|
||||
ИменаПапокПрофилей = Новый Соответствие;
|
||||
СвойстваПрофилей = Новый Соответствие;
|
||||
ОписанияПрофилейМассив = Новый Массив;
|
||||
СписокПрофилей = Новый СписокЗначений;
|
||||
|
||||
Для Каждого ОписаниеПрофиля Из ОписанияПрофилей Цикл
|
||||
ОписаниеПрофиля.Удалить("Описание");
|
||||
ЭтоГруппа = Не ОписаниеПрофиля.Свойство("Роли");
|
||||
@@ -1948,7 +2010,6 @@
|
||||
СвойстваПрофиля.Вставить("Родитель", "");
|
||||
СвойстваПрофиля.Вставить("Идентификатор", "");
|
||||
СвойстваПрофиля.Вставить("Наименование", "");
|
||||
СвойстваПрофиля.Вставить("Роли", Новый Массив);
|
||||
ЗаполнитьЗначенияСвойств(СвойстваПрофиля, ОписаниеПрофиля);
|
||||
СвойстваПрофиля.Вставить("ЭтоГруппа", ЭтоГруппа);
|
||||
|
||||
@@ -1959,8 +2020,7 @@
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
ВсеИдентификаторы.Вставить(ВРег(СвойстваПрофиля.Идентификатор), Истина);
|
||||
СвойстваПрофилей.Вставить(СвойстваПрофиля.Идентификатор, СвойстваПрофиля);
|
||||
ОписанияПрофилейМассив.Добавить(СвойстваПрофиля);
|
||||
СписокПрофилей.Добавить(СвойстваПрофиля, НРег(СвойстваПрофиля.Идентификатор));
|
||||
|
||||
Если ЭтоГруппа И Не ЗначениеЗаполнено(СвойстваПрофиля.Имя) Тогда
|
||||
ТекстОшибки = ЗаголовокОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
@@ -1982,7 +2042,6 @@
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
ВсеИмена.Вставить(ВРег(СвойстваПрофиля.Имя), Истина);
|
||||
СвойстваПрофилей.Вставить(СвойстваПрофиля.Имя, СвойстваПрофиля);
|
||||
КонецЕсли;
|
||||
|
||||
Если ЭтоГруппа Тогда
|
||||
@@ -2056,29 +2115,84 @@
|
||||
КонецЦикла;
|
||||
КонецЦикла;
|
||||
|
||||
ПоставляемыеПрофили = Новый Структура;
|
||||
ПоставляемыеПрофили.Вставить("ПараметрыОбновления", ПараметрыОбновления);
|
||||
ПоставляемыеПрофили.Вставить("ОписанияПрофилей", СвойстваПрофилей);
|
||||
ПоставляемыеПрофили.Вставить("ОписанияПрофилейМассив", ОписанияПрофилейМассив);
|
||||
ПоставляемыеПрофили.Вставить("ПапкиПоРодителям", ПапкиПоРодителям);
|
||||
|
||||
Возврат ОбщегоНазначения.ФиксированныеДанные(ПоставляемыеПрофили);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Параметры:
|
||||
// ПоставляемыеПрофили - см. УправлениеДоступомСлужебный.ПоставляемыеПрофили
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Строка
|
||||
//
|
||||
Функция ХешСуммаПоставляемыхПрофилей(ПоставляемыеПрофили) Экспорт
|
||||
|
||||
ДанныеДляХеширования = Новый Структура(ПоставляемыеПрофили);
|
||||
ДанныеДляХеширования.Вставить("ИменаПредопределенных",
|
||||
ОписаниеВерсии = Новый Структура("СвойстваВерсии", Новый Массив);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "Версия", "1");
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ИменаПредопределенных",
|
||||
Метаданные.Справочники.ПрофилиГруппДоступа.ПолучитьИменаПредопределенных());
|
||||
|
||||
Возврат УправлениеДоступомСлужебный.ХешСуммаДанных(ДанныеДляХеширования);
|
||||
ДобавитьСвойстваВерсии(ОписаниеВерсии, ПараметрыОбновления,
|
||||
"ОбновлятьИзмененныеПрофили,
|
||||
|ЗапретитьИзменениеПрофилей,
|
||||
|ОбновлятьГруппыДоступа,
|
||||
|ОбновлятьГруппыДоступаСУстаревшимиНастройками");
|
||||
|
||||
СписокПрофилей.СортироватьПоПредставлению();
|
||||
СвойстваПрофилей = Новый Соответствие;
|
||||
ОписанияПрофилейМассив = Новый Массив;
|
||||
РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
|
||||
|
||||
Для Каждого ОписаниеПрофиля Из СписокПрофилей Цикл
|
||||
СвойстваПрофиля = Новый ФиксированнаяСтруктура(ОписаниеПрофиля.Значение);
|
||||
ОписанияПрофилейМассив.Добавить(СвойстваПрофиля);
|
||||
СвойстваПрофилей.Вставить(СвойстваПрофиля.Идентификатор, СвойстваПрофиля);
|
||||
Если ЗначениеЗаполнено(СвойстваПрофиля.Имя) Тогда
|
||||
СвойстваПрофилей.Вставить(СвойстваПрофиля.Имя, СвойстваПрофиля);
|
||||
КонецЕсли;
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить("");
|
||||
ДобавитьСвойстваВерсии(ОписаниеВерсии, СвойстваПрофиля,
|
||||
"Имя, Родитель, Идентификатор, Наименование");
|
||||
Если СвойстваПрофиля.ЭтоГруппа Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
ДобавитьСвойстваВерсии(ОписаниеВерсии, СвойстваПрофиля, "Назначение, Роли");
|
||||
Если РазделениеВключено Тогда
|
||||
РолиНедоступныеВСервисе = Новый СписокЗначений;
|
||||
Для Каждого ОписаниеРоли Из СвойстваПрофиля.РолиНедоступныеВСервисе Цикл
|
||||
РолиНедоступныеВСервисе.Добавить(ОписаниеРоли.Ключ);
|
||||
КонецЦикла;
|
||||
РолиНедоступныеВСервисе.СортироватьПоЗначению();
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии,
|
||||
"РолиНедоступныеВСервисе", РолиНедоступныеВСервисе.ВыгрузитьЗначения());
|
||||
КонецЕсли;
|
||||
ВидыДоступа = Новый СписокЗначений;
|
||||
Для Каждого КлючИЗначение Из СвойстваПрофиля.ВидыДоступа Цикл
|
||||
ЗначенияДоступа = Новый СписокЗначений;
|
||||
ВидыДоступа.Добавить(ЗначенияДоступа, КлючИЗначение.Ключ + " (" + КлючИЗначение.Значение + ")");
|
||||
Для Каждого ОписаниеЗначения Из СвойстваПрофиля.ЗначенияДоступа Цикл
|
||||
Если ОписаниеЗначения.ВидДоступа = КлючИЗначение.Ключ Тогда
|
||||
ЗначенияДоступа.Добавить(ОписаниеЗначения.ЗначениеДоступа);
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
ЗначенияДоступа.СортироватьПоЗначению();
|
||||
КонецЦикла;
|
||||
ВидыДоступа.СортироватьПоПредставлению();
|
||||
Для Каждого ЭлементСписка Из ВидыДоступа Цикл
|
||||
Если ЗначениеЗаполнено(ЭлементСписка.Значение) Тогда
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии,
|
||||
ЭлементСписка.Представление, ЭлементСписка.Значение.ВыгрузитьЗначения());
|
||||
Иначе
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить(ЭлементСписка.Представление);
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
КонецЦикла;
|
||||
|
||||
СтрокаВерсии = СтрСоединить(ОписаниеВерсии.СвойстваВерсии, Символы.ПС);
|
||||
ХешСумма = УправлениеДоступомСлужебный.ХешСуммаДанных(СтрокаВерсии);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ПараметрыОбновления",
|
||||
Новый ФиксированнаяСтруктура(ПараметрыОбновления));
|
||||
|
||||
Результат.Вставить("ОписанияПрофилей",
|
||||
Новый ФиксированноеСоответствие(СвойстваПрофилей));
|
||||
|
||||
Результат.Вставить("ОписанияПрофилейМассив",
|
||||
Новый ФиксированныйМассив(ОписанияПрофилейМассив));
|
||||
|
||||
Результат.Вставить("ПапкиПоРодителям",
|
||||
ОбщегоНазначения.ФиксированныеДанные(ПапкиПоРодителям));
|
||||
|
||||
Возврат Новый ФиксированнаяСтруктура(Результат);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -2088,7 +2202,7 @@
|
||||
Если ОписаниеПрофиля.Назначение.Количество() = 0 Тогда
|
||||
ОписаниеПрофиля.Назначение.Добавить(Тип("СправочникСсылка.Пользователи"));
|
||||
КонецЕсли;
|
||||
МассивНазначений = Новый Массив;
|
||||
СписокНазначений = Новый СписокЗначений;
|
||||
Для Каждого Тип Из ОписаниеПрофиля.Назначение Цикл
|
||||
Если ТипЗнч(Тип) = Тип("ОписаниеТипов") Тогда
|
||||
Типы = Тип.Типы();
|
||||
@@ -2120,10 +2234,13 @@
|
||||
КонецЕсли;
|
||||
ОписаниеТипаСсылки = Новый ОписаниеТипов(ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Тип));
|
||||
Значение = ОписаниеТипаСсылки.ПривестиЗначение(Неопределено);
|
||||
МассивНазначений.Добавить(Значение);
|
||||
СписокНазначений.Добавить(Значение);
|
||||
КонецЦикла;
|
||||
КонецЦикла;
|
||||
СвойстваПрофиля.Вставить("Назначение", МассивНазначений);
|
||||
|
||||
СписокНазначений.СортироватьПоЗначению();
|
||||
СвойстваПрофиля.Вставить("Назначение",
|
||||
Новый ФиксированныйМассив(СписокНазначений.ВыгрузитьЗначения()));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -2171,6 +2288,12 @@
|
||||
ЗаполнитьСтандартныеРолиРасширений(ОписаниеПрофиля.Роли,
|
||||
УправлениеДоступомСлужебныйПовтИсп.ОписаниеСтандартныхРолейРасширенийСеанса().РолиСеанса);
|
||||
|
||||
СписокРолей = Новый СписокЗначений;
|
||||
СписокРолей.ЗагрузитьЗначения(ОписаниеПрофиля.Роли);
|
||||
СписокРолей.СортироватьПоЗначению();
|
||||
СвойстваПрофиля.Вставить("Роли",
|
||||
Новый ФиксированныйМассив(СписокРолей.ВыгрузитьЗначения()));
|
||||
|
||||
Если ОбщегоНазначения.РазделениеВключено() Тогда
|
||||
// Заполнение списка недоступных ролей в модели сервиса
|
||||
// для определения необходимости обновления поставляемых профилей.
|
||||
@@ -2241,7 +2364,7 @@
|
||||
КонецЕсли;
|
||||
ВидыДоступа.Вставить(ИмяВидаДоступа, УточнениеВидаДоступа);
|
||||
КонецЦикла;
|
||||
СвойстваПрофиля.Вставить("ВидыДоступа", ВидыДоступа);
|
||||
СвойстваПрофиля.Вставить("ВидыДоступа", Новый ФиксированноеСоответствие(ВидыДоступа));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -2354,9 +2477,9 @@
|
||||
ЗначениеДоступа);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
ЗначенияДоступа.Добавить(Отбор);
|
||||
ЗначенияДоступа.Добавить(Новый ФиксированнаяСтруктура(Отбор));
|
||||
КонецЦикла;
|
||||
СвойстваПрофиля.Вставить("ЗначенияДоступа", ЗначенияДоступа);
|
||||
СвойстваПрофиля.Вставить("ЗначенияДоступа", Новый ФиксированныйМассив(ЗначенияДоступа));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
+8
-4
@@ -1289,8 +1289,8 @@
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<width>51</width>
|
||||
<maxWidth>51</maxWidth>
|
||||
<height>4</height>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<heightControlVariant>ByContent</heightControlVariant>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<rowSelectionMode>Row</rowSelectionMode>
|
||||
@@ -1314,6 +1314,10 @@
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьДанныеСертификата</name>
|
||||
<id>744</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Все свойства сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -1330,10 +1334,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьДанныеСертификата</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Picture</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -1360,7 +1364,7 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>HorizontalIfPossible</group>
|
||||
<group>Vertical</group>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
<throughAlign>Auto</throughAlign>
|
||||
|
||||
+2
-2
@@ -978,14 +978,14 @@
|
||||
|
||||
// Продолжение процедуры ПерейтиКВыборуТекущегоСертификата.
|
||||
&НаКлиенте
|
||||
Процедура ПерейтиКВыборуТекущегоСертификатаПослеВыгрузкиСертификата(ВыгруженныеДанные, Контекст) Экспорт
|
||||
Асинх Процедура ПерейтиКВыборуТекущегоСертификатаПослеВыгрузкиСертификата(ВыгруженныеДанные, Контекст) Экспорт
|
||||
|
||||
СертификатАдрес = ПоместитьВоВременноеХранилище(ВыгруженныеДанные, УникальныйИдентификатор);
|
||||
|
||||
СертификатОтпечаток = Контекст.ТекущиеДанные.Отпечаток;
|
||||
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ЗаполнитьОписаниеДанныхСертификата(СертификатОписаниеДанных,
|
||||
ЭлектроннаяПодписьКлиент.СвойстваСертификата(Контекст.СертификатКриптографии));
|
||||
Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(Контекст.СертификатКриптографии));
|
||||
|
||||
Контекст.СохраненныеСвойства = СохраненныеСвойстваСертификата(Контекст.ТекущиеДанные.Отпечаток,
|
||||
СертификатАдрес, СертификатПараметрыРеквизитов);
|
||||
|
||||
+8
-4
@@ -1102,8 +1102,8 @@
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<width>51</width>
|
||||
<maxWidth>51</maxWidth>
|
||||
<height>4</height>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<heightControlVariant>ByContent</heightControlVariant>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<rowSelectionMode>Row</rowSelectionMode>
|
||||
@@ -1127,6 +1127,10 @@
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьДанныеСертификата</name>
|
||||
<id>744</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Все свойства сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -1143,10 +1147,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьДанныеСертификата</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Picture</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -1174,7 +1178,7 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>HorizontalIfPossible</group>
|
||||
<group>Vertical</group>
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
|
||||
+2
-2
@@ -341,12 +341,12 @@
|
||||
|
||||
// Продолжение процедуры Далее.
|
||||
&НаКлиенте
|
||||
Процедура ДалееПослеВыгрузкиСертификата(ВыгруженныеДанные, СертификатКриптографии) Экспорт
|
||||
Асинх Процедура ДалееПослеВыгрузкиСертификата(ВыгруженныеДанные, СертификатКриптографии) Экспорт
|
||||
|
||||
ПоказатьСтраницуУточнениеСвойствСертификата(ЭтотОбъект,
|
||||
СертификатКриптографии,
|
||||
ВыгруженныеДанные,
|
||||
ЭлектроннаяПодписьКлиент.СвойстваСертификата(СертификатКриптографии));
|
||||
Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
+8
-4
@@ -553,8 +553,8 @@
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<width>51</width>
|
||||
<maxWidth>51</maxWidth>
|
||||
<height>4</height>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<heightControlVariant>ByContent</heightControlVariant>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<rowSelectionMode>Row</rowSelectionMode>
|
||||
@@ -578,6 +578,10 @@
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьДанныеСертификата</name>
|
||||
<id>47</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Все свойства сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -594,10 +598,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьДанныеСертификата</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Picture</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -624,7 +628,7 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>AlwaysHorizontal</group>
|
||||
<group>Vertical</group>
|
||||
<behavior>Auto</behavior>
|
||||
<representation>WeakSeparation</representation>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
|
||||
+1
-1
@@ -403,7 +403,7 @@
|
||||
|
||||
СертификатКриптографии = Новый СертификатКриптографии;
|
||||
Ждать СертификатКриптографии.ИнициализироватьАсинх(ПолучитьИзВременногоХранилища(АдресСертификата));
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ЗаполнитьОписаниеДанныхСертификата(
|
||||
СертификатОписаниеДанных, СвойстваСертификата);
|
||||
|
||||
+4
-3
@@ -6,11 +6,11 @@
|
||||
</li>
|
||||
<li>Подписывать данные могут разные пользователи, при этом для каждого будет создана своя подпись.
|
||||
</li>
|
||||
<li>Если <strong>Сертификат</strong> не выбран - выберите его из списка. Если при следующем открытии сертификат будет среди установленных на компьютере, повторный выбор не потребуется.
|
||||
<li>Если <strong>Сертификат</strong> не выбран - выберите его из списка. Если при следующем открытии сертификат будет среди установленных на устройстве, повторный выбор не потребуется.
|
||||
</li>
|
||||
<li>При выборе из выпадающего списка будут показаны только сертификаты, у которых поле <strong>Пользователи</strong> не заполнено или совпадает с текущим пользователем сеанса, а поле <strong>Программа</strong> заполнено. Если при открытии окна <strong>Подписание</strong> был указан отбор по организации, то в выпадающем списке не будет сертификатов, у которых поле <strong>Организация</strong> не совпадает с организацией, указанной в отборе. Если при открытии окна <strong>Подписание</strong> был указан конкретный список сертификатов, то будет показан только этот список.
|
||||
</li>
|
||||
<li>При выборе из списка личных сертификатов (установленных на компьютере и на сервере) путем нажатия <strong>Показать все</strong>, показываются все сертификаты без учета полей <strong>Пользователь</strong> и <strong>Программа</strong>. Если при открытии окна <strong>Подписание</strong> был указан отбор по организации, то в списке не будет сертификатов, у которых поле <strong>Организация</strong> не совпадает с организацией, указанной в отборе. Но будут показаны все сертификаты, которых еще нет в списке (то есть те, которые есть только в хранилище сертификатов операционный системы компьютера или сервера).
|
||||
<li>При выборе из списка личных сертификатов (установленных на устройстве и на сервере) путем нажатия <strong>Показать все</strong>, показываются все сертификаты без учета полей <strong>Пользователь</strong> и <strong>Программа</strong>. Если при открытии окна <strong>Подписание</strong> был указан отбор по организации, то в списке не будет сертификатов, у которых поле <strong>Организация</strong> не совпадает с организацией, указанной в отборе. Но будут показаны все сертификаты, которых еще нет в списке (то есть те, которые есть только в хранилище сертификатов операционный системы устройства или сервера).
|
||||
</li>
|
||||
<li>Введите <strong>Пароль</strong> к закрытому ключу (указанный при установке или создании сертификата) <span style="font-size: 7.5pt;">или <b style="mso-bidi-font-weight: normal;">Пин-код</b>, если местом хранения сертификата является сервис
|
||||
DSS.</span>
|
||||
@@ -20,13 +20,14 @@
|
||||
<li>Включите флажок <strong>Запомнить пароль</strong>, для того чтобы не вводить пароль <span style="font-size: 7.5pt; mso-fareast-font-family: "Times New Roman"; mso-bidi-font-family: "Times New Roman"; mso-ansi-language: RU; mso-fareast-language: RU; mso-bidi-language: AR-SA;">(пин-код
|
||||
для сервиса DSS) </span>в следующий раз.
|
||||
</li>
|
||||
<li>Также файл можно подписать с помощью <a href="Catalog.МашиночитаемыеДоверенности/Help">МЧД</a>, для этого включите флажок <img src="StdPicture.AppearanceCheckBox"></img> <strong>По доверенности</strong> и выберите соответствующую доверенность из списка. </li>
|
||||
<li>В некоторых случаях можно ввести <strong>Комментарий к подписи</strong> - дополнительную информацию о подписи.
|
||||
</li>
|
||||
<li>Для выполнения подписи нажмите <strong>Подписать</strong>.
|
||||
</li>
|
||||
<li>Данные будут подписаны с использованием указанного сертификата.
|
||||
</li>
|
||||
<li>Созданная электронная подпись хранится в программе. Подписанный объект становится недоступным для редактирования и отображается в списках со значком <img src="CommonPicture.ПодписанЭП"></img>.</li>
|
||||
<li>Созданная электронная подпись хранится в приложении. Подписанный объект становится недоступным для редактирования и отображается в списках со значком <img src="CommonPicture.ПодписанЭП"></img>.</li>
|
||||
<ul type="disc"></ul></ul><h3></h3>
|
||||
<h3>См. также:</h3>
|
||||
<ul style="margin-right: 0px;" dir="ltr"><li><a href="CommonForm.НастройкиЭлектроннойПодписиИШифрования/Help">Настройки электронной подписи и шифрования</a>.</li></ul></body></html>
|
||||
+9
@@ -684,9 +684,18 @@
|
||||
Контекст.Вставить("ОшибкаНаСервере", Новый Структура);
|
||||
|
||||
Если СертификатДействителенДо < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда
|
||||
|
||||
ДополнительныеСвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(СертификатАдрес);
|
||||
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча)
|
||||
И ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча < ОбщегоНазначенияКлиент.ДатаСеанса() Тогда
|
||||
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки",
|
||||
НСтр("ru = 'У выбранного сертификата истек срок действия закрытого ключа.
|
||||
|Выберите другой сертификат.'"));
|
||||
Иначе
|
||||
Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки",
|
||||
НСтр("ru = 'У выбранного сертификата истек срок действия.
|
||||
|Выберите другой сертификат.'"));
|
||||
КонецЕсли;
|
||||
ОбработатьОшибку(Контекст.Оповещение, Контекст.ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
+13
-12
@@ -908,7 +908,7 @@
|
||||
|
||||
// Продолжение процедуры ПроверитьНаСторонеКлиента.
|
||||
&НаКлиенте
|
||||
Процедура ПроверитьНаСторонеКлиентаПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт
|
||||
Асинх Процедура ПроверитьНаСторонеКлиентаПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт
|
||||
|
||||
Контекст.Вставить("МенеджерКриптографии", Неопределено);
|
||||
|
||||
@@ -931,8 +931,7 @@
|
||||
Контекст.МенеджерКриптографии.ПарольДоступаКЗакрытомуКлючу = СвойстваПароля.Значение;
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеОшибки = "";
|
||||
ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Ложь, ОписаниеОшибки);
|
||||
ОписаниеОшибки = Ждать ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Ложь);
|
||||
|
||||
// Подписание.
|
||||
Если ПроверкиНаКлиенте.НаличиеСертификата = Истина И Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда
|
||||
@@ -948,7 +947,7 @@
|
||||
|
||||
// Продолжение процедуры ПроверитьНаСторонеКлиента.
|
||||
&НаКлиенте
|
||||
Процедура ПроверитьНаСторонеКлиентаВМоделиСервиса(Результат, Контекст)
|
||||
Асинх Процедура ПроверитьНаСторонеКлиентаВМоделиСервиса(Результат, Контекст)
|
||||
|
||||
Контекст.Вставить("МенеджерКриптографии", Неопределено);
|
||||
|
||||
@@ -967,8 +966,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеОшибки = "";
|
||||
ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Истина, ОписаниеОшибки);
|
||||
ОписаниеОшибки = Ждать ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Истина);
|
||||
|
||||
// Подписание.
|
||||
Если ПроверкиНаКлиенте.НаличиеСертификата = Истина И Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда
|
||||
@@ -1401,7 +1399,7 @@
|
||||
|
||||
// Продолжение процедуры ПроверитьНаСторонеКлиента.
|
||||
&НаКлиенте
|
||||
Процедура ПроверитьНаСторонеКлиентаОблачнаяПодпись(Результат, Контекст)
|
||||
Асинх Процедура ПроверитьНаСторонеКлиентаОблачнаяПодпись(Результат, Контекст)
|
||||
|
||||
Контекст.Вставить("МенеджерКриптографии", Неопределено);
|
||||
|
||||
@@ -1422,8 +1420,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеОшибки = "";
|
||||
ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Истина, ОписаниеОшибки);
|
||||
ОписаниеОшибки = Ждать ДополнительнаяПроверкаНаВозможностьПодписания(Контекст.СертификатКриптографии, Истина);
|
||||
|
||||
// Подписание.
|
||||
Если ПроверкиНаСервере.НаличиеСертификата = Истина И Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда
|
||||
@@ -2231,7 +2228,9 @@
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ДополнительнаяПроверкаНаВозможностьПодписания(СертификатКриптографии, СторонаВыполнения, ОписаниеОшибки)
|
||||
Асинх Функция ДополнительнаяПроверкаНаВозможностьПодписания(СертификатКриптографии, СторонаВыполнения)
|
||||
|
||||
ОписаниеОшибки = "";
|
||||
|
||||
Если Отозван Тогда
|
||||
ОшибкаСертификатПомеченКакОтозванный = ОшибкаСертификатПомеченКакОтозванный();
|
||||
@@ -2239,7 +2238,7 @@
|
||||
УстановитьЭлемент(ЭтотОбъект, "Подписание", СторонаВыполнения, ОшибкаСертификатПомеченКакОтозванный, Истина, ОбъединятьРезультаты);
|
||||
Иначе
|
||||
|
||||
РезультатПроверкиУдостоверяющегоЦентраСертификата = ЭлектроннаяПодписьСлужебныйКлиент.РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии);
|
||||
РезультатПроверкиУдостоверяющегоЦентраСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии);
|
||||
|
||||
Если Не РезультатПроверкиУдостоверяющегоЦентраСертификата.Действует Тогда
|
||||
|
||||
@@ -2254,7 +2253,9 @@
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
Возврат ОписаниеОшибки;
|
||||
|
||||
КонецФункции
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
Функция ОшибкаСертификатПомеченКакОтозванный()
|
||||
|
||||
+8
-4
@@ -202,8 +202,8 @@
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<width>51</width>
|
||||
<maxWidth>51</maxWidth>
|
||||
<height>4</height>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<heightControlVariant>ByContent</heightControlVariant>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<rowSelectionMode>Row</rowSelectionMode>
|
||||
@@ -227,6 +227,10 @@
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьДанныеСертификата</name>
|
||||
<id>74</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Все свойства сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -243,10 +247,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьДанныеСертификата</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Picture</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -274,7 +278,7 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>HorizontalIfPossible</group>
|
||||
<group>Vertical</group>
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
|
||||
+22
-13
@@ -564,8 +564,8 @@
|
||||
<changeRowSet>true</changeRowSet>
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<height>4</height>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<heightControlVariant>ByContent</heightControlVariant>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<rowSelectionMode>Row</rowSelectionMode>
|
||||
@@ -588,11 +588,15 @@
|
||||
<rowFilter xsi:type="core:UndefinedValue"/>
|
||||
</items>
|
||||
<items xsi:type="form:FormGroup">
|
||||
<name>ВертикальнаяГруппа3</name>
|
||||
<id>261</id>
|
||||
<name>ГруппаОткрытияСвойств</name>
|
||||
<id>327</id>
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьДанныеСертификата</name>
|
||||
<id>153</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Все свойства сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -609,10 +613,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьДанныеСертификата</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Picture</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -621,7 +625,10 @@
|
||||
<items xsi:type="form:Button">
|
||||
<name>ПоказатьЗаявлениеПоКоторомуБылПолученСертификат</name>
|
||||
<id>263</id>
|
||||
<visible>true</visible>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Заявление, по которому получен сертификат</value>
|
||||
</title>
|
||||
<enabled>false</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
@@ -636,10 +643,10 @@
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualButton</type>
|
||||
<type>Hyperlink</type>
|
||||
<commandName>Form.Command.ПоказатьЗаявлениеПоКоторомуБылПолученСертификат</commandName>
|
||||
<buttonImportance>Normal</buttonImportance>
|
||||
<representation>Auto</representation>
|
||||
<representation>PictureAndText</representation>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<placementArea>UserCmds</placementArea>
|
||||
@@ -652,11 +659,11 @@
|
||||
</userVisible>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Вертикальная группа</value>
|
||||
<value>Группа открытия свойств</value>
|
||||
</title>
|
||||
<extendedTooltip>
|
||||
<name>ВертикальнаяГруппа3РасширеннаяПодсказка</name>
|
||||
<id>262</id>
|
||||
<name>ГруппаОткрытияСвойствРасширеннаяПодсказка</name>
|
||||
<id>328</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
@@ -666,7 +673,9 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>Vertical</group>
|
||||
<group>HorizontalIfPossible</group>
|
||||
<behavior>Auto</behavior>
|
||||
<representation>WeakSeparation</representation>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
<throughAlign>Auto</throughAlign>
|
||||
@@ -694,7 +703,7 @@
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>HorizontalIfPossible</group>
|
||||
<group>Vertical</group>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
<throughAlign>Auto</throughAlign>
|
||||
|
||||
+1
@@ -656,6 +656,7 @@
|
||||
|
||||
Элементы.ПредупреждениеГруппа.Видимость = ЗначениеЗаполнено(ДанныеПредупреждения.ДополнительныеСведения);
|
||||
Элементы.Предупреждение.Заголовок = ДанныеПредупреждения.ДополнительныеСведения;
|
||||
Элементы.ПодписаниеРазрешено.Видимость = Ложь;
|
||||
|
||||
Иначе
|
||||
Элементы.ПредупреждениеГруппа.Видимость = Истина;
|
||||
|
||||
+1
@@ -533,6 +533,7 @@
|
||||
Иначе
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ТекстОшибкиНеУдалосьОпределитьПрограмму(
|
||||
ПрограммаПоСертификатуРезультат.Ошибка);
|
||||
СертификатНаСервереОписаниеОшибки = Новый Структура;
|
||||
СертификатНаСервереОписаниеОшибки.Вставить("ОписаниеОшибки", ТекстОшибки);
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -109,6 +109,7 @@
|
||||
|ГДЕ
|
||||
| СертификатыКлючейЭлектроннойПодписиИШифрования.УдалитьПользовательОповещенОСрокеДействия
|
||||
| ИЛИ &УсловиеЗаявления
|
||||
| ИЛИ СертификатыКлючейЭлектроннойПодписиИШифрования.ДействителенДо > &ТекущаяДата
|
||||
| ИЛИ НЕ ОдинПользовательВТабличнойЧасти.Ссылка ЕСТЬ NULL";
|
||||
|
||||
|
||||
@@ -125,6 +126,8 @@
|
||||
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИЛИ &УсловиеЗаявления", "");
|
||||
КонецЕсли;
|
||||
|
||||
Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДатаСеанса());
|
||||
|
||||
МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
|
||||
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок);
|
||||
|
||||
@@ -136,7 +139,7 @@
|
||||
Выборка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь,
|
||||
"Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования");
|
||||
Если Выборка.Количество() > 0 Тогда
|
||||
ОбработатьЗаявленияИОповещенияСертификатов(Выборка);
|
||||
ОбработатьЗаявленияОповещенияИСрокДействияСертификатов(Выборка);
|
||||
КонецЕсли;
|
||||
|
||||
ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь,
|
||||
@@ -149,7 +152,7 @@
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
Процедура ОбработатьЗаявленияИОповещенияСертификатов(Выборка)
|
||||
Процедура ОбработатьЗаявленияОповещенияИСрокДействияСертификатов(Выборка)
|
||||
|
||||
ОбъектовОбработано = 0;
|
||||
ПроблемныхОбъектов = 0;
|
||||
@@ -175,6 +178,8 @@
|
||||
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||
Блокировка.Заблокировать();
|
||||
|
||||
ЗаписатьОбъект = Ложь;
|
||||
|
||||
СертификатОбъект = Выборка.Ссылка.ПолучитьОбъект(); // СправочникОбъект.СертификатыКлючейЭлектроннойПодписиИШифрования
|
||||
|
||||
// Перенос оповещений о необходимости замены сертификата в регистр сведений.
|
||||
@@ -204,6 +209,7 @@
|
||||
ОбновлениеИнформационнойБазы.ЗаписатьНаборЗаписей(НаборЗаписейОповещений, Истина);
|
||||
КонецЕсли;
|
||||
СертификатОбъект.УдалитьПользовательОповещенОСрокеДействия = Ложь;
|
||||
ЗаписатьОбъект = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
// Перенос данных заявлений в регистр сведений.
|
||||
@@ -211,16 +217,44 @@
|
||||
И ЗначениеЗаполнено(СертификатОбъект.УдалитьСостояниеЗаявления) Тогда
|
||||
|
||||
ОбработкаЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.ОбработатьДанныеДляПереходаНаНовуюВерсию(
|
||||
СертификатОбъект);
|
||||
СертификатОбъект, ЗаписатьОбъект);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если СертификатОбъект.Пользователи.Количество() = 1 Тогда
|
||||
СертификатОбъект.Пользователь = СертификатОбъект.Пользователи[0].Пользователь;
|
||||
СертификатОбъект.Пользователи.Очистить();
|
||||
ЗаписатьОбъект = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
Если СертификатОбъект.ДействителенДо > ТекущаяДатаСеанса() Тогда
|
||||
ДвоичныеДанныеСертификата = СертификатОбъект.ДанныеСертификата.Получить();
|
||||
Если ТипЗнч(ДвоичныеДанныеСертификата) = Тип("ДвоичныеДанные") Тогда
|
||||
Попытка
|
||||
Сертификат = Новый СертификатКриптографии(ДвоичныеДанныеСертификата);
|
||||
Исключение
|
||||
Сертификат = Неопределено;
|
||||
КонецПопытки;
|
||||
|
||||
Если Сертификат <> Неопределено Тогда
|
||||
СвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(
|
||||
Сертификат, ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ДвоичныеДанныеСертификата);
|
||||
Если СертификатОбъект.ДействителенДо <> СвойстваСертификата.ДействителенДо Тогда
|
||||
СтрокаПоиска = Формат(СертификатОбъект.ДействителенДо, "ДФ=MM.yyyy");
|
||||
СтрокаЗамены = Формат(СвойстваСертификата.ДействителенДо, "ДФ=MM.yyyy");
|
||||
СертификатОбъект.Наименование = СтрЗаменить(СертификатОбъект.Наименование, СтрокаПоиска, СтрокаЗамены);
|
||||
СертификатОбъект.ДействителенДо = СвойстваСертификата.ДействителенДо;
|
||||
ЗаписатьОбъект = Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЗаписатьОбъект Тогда
|
||||
ОбновлениеИнформационнойБазы.ЗаписатьОбъект(СертификатОбъект);
|
||||
Иначе
|
||||
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(Выборка.Ссылка);
|
||||
КонецЕсли;
|
||||
|
||||
ОбъектовОбработано = ОбъектовОбработано + 1;
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
Для Каждого Состояние Из СостоянияОригинала Цикл
|
||||
СписокСостоянийОригинала.Добавить(Состояние,,Ложь);
|
||||
КонецЦикла;
|
||||
СписокСостоянийОригинала.Добавить("Состояниенеизвестно",НСтр("ru='<Состояние неизвестно>'"),Ложь);
|
||||
СписокСостоянийОригинала.Добавить("СостояниеНеизвестно",НСтр("ru='<Состояние неизвестно>'"),Ложь);
|
||||
|
||||
Если Параметры.Свойство("СписокСостояний") Тогда
|
||||
Для Каждого Состояние Из Параметры.СписокСостояний Цикл
|
||||
|
||||
@@ -1,71 +1,107 @@
|
||||
<!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.10570.1001"></meta></head><body>
|
||||
<p>В программе существует возможность хранить файлы в информационной базе без привязки к конкретному объекту. Список предназначен для управления этими файлами.</p>
|
||||
<p>В приложении существует возможность хранить файлы в информационной базе без привязки к конкретному объекту. Список предназначен для управления этими файлами.</p>
|
||||
<p>Работа со списком организована аналогично работе в <strong>Проводнике Windows</strong>. </p>
|
||||
<p>Левая часть списка содержит иерархическую структуру <a href="Catalog.ПапкиФайлов/Help">папок</a>. В списке имеются предопределенные папки, которые нельзя удалить, например, папка <strong>Шаблоны файлов</strong>. </p>
|
||||
<p>В правой части располагается список файлов в выбранной папке. С помощью <a href="Catalog.Файлы/Help">команд</a> контекстного меню или меню <strong>Еще</strong> в список можно <strong>Добавлять</strong> новые файлы и папки, <strong>Копировать</strong>, <strong>Изменять</strong> или <strong>Помечать их на удаление</strong>.</p>
|
||||
<p>Для работы с реквизитами файла (автор, наименование, описание и т.д.) используется <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">карточка</a> (<strong>Еще -</strong> <strong>Открыть карточку</strong>), а для работы с самим файлом (<strong>Просмотреть</strong> или <strong>Редактировать</strong> файл) - соответствующее приложение, установленное на компьютере. </p>
|
||||
<p>Для работы с реквизитами файла (автор, наименование, описание и т.д.) используется <a href="Catalog.Файлы.Form.ФормаЭлемента/Help">карточка</a> (<strong>Еще -</strong> <strong>Открыть карточку</strong>), а для работы с самим файлом (<strong>Просмотреть</strong> или <strong>Редактировать</strong> файл) - соответствующее приложение, установленное на устройство. </p>
|
||||
<p>При редактировании файла его предыдущая <a href="DataProcessor.РаботаСФайлами.Form.ВерсияПрисоединенногоФайла/Help">версия</a> автоматически сохраняется в информационной базе (эта настройка установлена по умолчанию, отменять не рекомендуется, т.к. если файл был испорчен во время редактирования, в этом случае имеется возможность вернуться к одной из его предыдущих <a href="Catalog.ВерсииФайлов/Help">версий</a>). </p>
|
||||
<p>Зеленым цветом отображаются файлы, занятые Вами для редактирования, а серым цветом - файлы, занятые другими пользователями программы.</p>
|
||||
<p>Зеленым цветом отображаются файлы, занятые Вами для редактирования, а серым цветом - файлы, занятые другими пользователями приложения.</p>
|
||||
<p>В списке выводится:</p>
|
||||
<ul><li><img src="CommonPicture.ПодписанЗашифрованЗаголовок"></img> - наличие электронной подписи или шифрования.
|
||||
</li><li><strong>Наименование</strong> - полное наименование файла. Значок рядом с наименованием указывает тип файла. В этой же колонке выводится описание - подробное описание файла.
|
||||
</li><li><strong>Автор</strong> - пользователь, который добавил файл.
|
||||
</li><li><strong>Дата изменения</strong> - дата и время добавления версии файла в базу. </li></ul><p>С помощью команды <strong>Еще - Дополнительно - Изменить форму</strong> можно добавить дополнительные поля, например:</p>
|
||||
</li>
|
||||
<li><strong>Наименование</strong> - полное наименование файла. Значок рядом с наименованием указывает тип файла. В этой же колонке выводится описание - подробное описание файла.
|
||||
</li>
|
||||
<li><strong>Автор</strong> - пользователь, который добавил файл.
|
||||
</li>
|
||||
<li><strong>Дата изменения</strong> - дата и время добавления версии файла в базу. </li></ul><p>С помощью команды <strong>Еще - Дополнительно - Изменить форму</strong> можно добавить дополнительные поля, например:</p>
|
||||
<ul><div>
|
||||
<li><strong>Отредактировал</strong> - пользователь, который добавил версию файла.
|
||||
</li><li><strong>Текущая версия</strong> - код текущей версии и т.д.</li></div></ul><h3>Добавление файлов</h3>
|
||||
<p>Для добавления нового файла в программу:</p>
|
||||
</li>
|
||||
<li><strong>Текущая версия</strong> - код текущей версии и т.д.</li></div></ul><h3>Добавление файлов</h3>
|
||||
<p>Для добавления нового файла в приложение:</p>
|
||||
<ul><li>
|
||||
<div>Выберите нужную папку;</div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Нажмите <strong>Добавить</strong> (клавишу <strong>Insert</strong>); </div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Выберите способ создания:</div>
|
||||
<ul><li>
|
||||
<div><strong>Файл с диска</strong> </div>
|
||||
<div><strong>Файл с устройства</strong></div>
|
||||
<ul><li>
|
||||
<div>Для того чтобы прикрепить к объекту или поместить в папку уже имеющийся на компьютере файл, укажите путь к файлу на компьютере, нажмите кнопку <strong>Открыть</strong>.</div>
|
||||
</li><li>
|
||||
<div>После этого программа сохранит файл, автоматически создаст и откроет <strong>Карточку файла</strong>.</div></li></ul></li><li>
|
||||
<div>Для того чтобы прикрепить к объекту или поместить в папку уже имеющийся на устройстве файл, укажите путь к файлу на устройстве, нажмите кнопку <strong>Открыть</strong>.</div>
|
||||
</li>
|
||||
<li>
|
||||
<div>После этого приложение сохранит файл, автоматически создаст и откроет <strong>Карточку файла</strong>.</div></li></ul></li>
|
||||
<li>
|
||||
<div><strong>По шаблону</strong> </div>
|
||||
<ul><li>
|
||||
<div>Выделите шаблон файла в <a href="Catalog.Файлы.Form.ФормаВыбора/Help">списке выбора</a>, затем нажмите кнопку <strong>Выбрать</strong>. </div>
|
||||
</li><li>
|
||||
<div>Программой будет автоматически создана и открыта <strong>Карточка файла</strong>.</div></li></ul></li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Приложением будет автоматически создана и открыта <strong>Карточка файла</strong>.</div></li></ul></li>
|
||||
<li>
|
||||
<div><strong>Со сканера</strong></div>
|
||||
<ul><li>
|
||||
<div>Вариант создания файла <strong>Со сканера</strong> становится доступным, если к компьютеру подключен сканер (более подробно см. документацию к сканеру) и на компьютере подключена <a href="DataProcessor.Сканирование.Form.НастройкаСканирования/Help">компонента для работы со сканером</a>. Также необходимо настроить сканирование. </div>
|
||||
</li><li>
|
||||
<div>Вариант создания файла <strong>Со сканера</strong> становится доступным, если к устройству подключен сканер (более подробно см. документацию к сканеру) и на устройстве подключена <a href="DataProcessor.Сканирование.Form.НастройкаСканирования/Help">компонента для работы со сканером</a>. Также необходимо настроить сканирование. </div>
|
||||
</li>
|
||||
<li>
|
||||
<div>Если все условия соблюдены и настройки выполнены, можно получить файл со сканера. </div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Для этого необходимоследовать инструкциям <a href="DataProcessor.Сканирование.Form.РезультатСканирования/Help">Помощника сканирования</a>. </div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>После того как документ отсканирован, выполните команду <strong>Принять</strong>, после этого файлу автоматически присваивается код и создается карточка файла, которая выводится на экран. В поле <strong>Наименование</strong> также автоматически проставляется код. Отредактируйте нужные поля, нажмите <strong>Записать и закрыть,</strong> для того чтобы сохранить карточку файла.</div></li></ul></li></ul></li></ul><h3>Шаблоны файлов</h3>
|
||||
<ul><li>Программа поставляется с предопределенной папкой <strong>Шаблоны файлов</strong>. В папке можно разместить файлы, которые будут использоваться при создании новых файлов в качестве шаблона. Например, в эту папку можно поместить файл-заготовку с текстом договора и в дальнейшем использовать его при создании договоров для конкретных контрагентов.
|
||||
</li><li>Для того чтобы поместить в папку новый шаблон, откройте папку <strong>Шаблоны файлов</strong>, нажмите <strong>Добавить</strong>, с помощью переключателя выберите <strong>Файл с компьютера</strong>. Затем выберите нужный файл.
|
||||
</li><li>Программа автоматически создает и выводит на просмотр карточку файла. Заполните описание шаблона, поле <strong>Папка</strong> по умолчанию заполнено - <strong>Шаблоны файлов</strong>.</li></ul><h3>Размещение файлов в папках</h3>
|
||||
<ul><li>В списке можно <img src="StdPicture.CreateFolder"></img> <strong>Создать</strong> необходимое количество папок и хранить в них файлы, непривязанные к конкретным объектам программы.
|
||||
<ul><li>Приложение поставляется с предопределенной папкой <strong>Шаблоны файлов</strong>. В папке можно разместить файлы, которые будут использоваться при создании новых файлов в качестве шаблона. Например, в эту папку можно поместить файл-заготовку с текстом договора и в дальнейшем использовать его при создании договоров для конкретных контрагентов.
|
||||
</li>
|
||||
<li>Для того чтобы поместить в папку новый шаблон, откройте папку <strong>Шаблоны файлов</strong>, нажмите <strong>Добавить</strong>, с помощью переключателя выберите <strong>Файл с устройства</strong>. Затем выберите нужный файл.
|
||||
</li>
|
||||
<li>Приложение автоматически создает и выводит на просмотр карточку файла. Заполните описание шаблона, поле <strong>Папка</strong> по умолчанию заполнено - <strong>Шаблоны файлов</strong>.</li></ul><h3>Размещение файлов в папках</h3>
|
||||
<ul><li>В списке можно <img src="StdPicture.CreateFolder"></img> <strong>Создать</strong> необходимое количество папок и хранить в них файлы, непривязанные к конкретным объектам приложения.
|
||||
<ul><li><strong>Создать папку</strong> можно также с помощью соответствующей команды меню <strong>Еще</strong> или контекстного меню по правой кнопке мыши.
|
||||
</li><li>Заполните необходимые <a href="Catalog.ПапкиФайлов.Form.ФормаЭлемента/Help">поля</a>. </li></ul></li><li>Файлы можно перемещать в различные папки списка с помощью перетаскивания мышью. Также для выделенных файлов можно воспользоваться командой <strong>Еще - Перенести в папку</strong>.
|
||||
</li><li>С помощью мыши можно также перетаскивать папки, подчиняя их друг другу.</li></ul><h3>Права доступа к папкам</h3>
|
||||
</li>
|
||||
<li>Заполните необходимые <a href="Catalog.ПапкиФайлов.Form.ФормаЭлемента/Help">поля</a>. </li></ul></li>
|
||||
<li>Файлы можно перемещать в различные папки списка с помощью перетаскивания мышью. Также для выделенных файлов можно воспользоваться командой <strong>Еще - Перенести в папку</strong>.
|
||||
</li>
|
||||
<li>С помощью мыши можно также перетаскивать папки, подчиняя их друг другу.</li></ul><h3>Права доступа к папкам</h3>
|
||||
<ul><li>Папкам можно назначать различные права доступа.
|
||||
<ul><li>Права доступа к папкам файлов настраиваются администратором программы или пользователем, имеющим право на управление правами той или иной папки.
|
||||
</li><li>Для настройки прав доступа воспользуйтесь соответствующей командой панели навигации папки.</li></ul></li></ul><h3>Загрузка файлов </h3>
|
||||
<ul><li>С помощью команды меню <strong>Еще</strong> или контекстного меню по правой кнопке мыши <strong>Загрузить файлы</strong> можно разместить в одной из папок файлы с компьютера.
|
||||
</li><li>В открывшемся <strong>Проводнике Windows</strong> укажите путь к файлу, нажмите <strong>Открыть</strong>.
|
||||
</li><li>Заполните необходимые для загрузки <a href="DataProcessor.РаботаСФайлами.Form.ФормаИмпортаФайлов/Help">сведения</a>.</li></ul><h3>Загрузка папок</h3>
|
||||
<ul><li>Права доступа к папкам файлов настраиваются администратором приложенич или пользователем, имеющим право на управление правами той или иной папки.
|
||||
</li>
|
||||
<li>Для настройки прав доступа воспользуйтесь соответствующей командой панели навигации папки.</li></ul></li></ul><h3>Загрузка файлов </h3>
|
||||
<ul><li>С помощью команды меню <strong>Еще</strong> или контекстного меню по правой кнопке мыши <strong>Загрузить файлы</strong> можно разместить в одной из папок файлы с устройства.
|
||||
</li>
|
||||
<li>В открывшемся <strong>Проводнике Windows</strong> укажите путь к файлу, нажмите <strong>Открыть</strong>.
|
||||
</li>
|
||||
<li>Заполните необходимые для загрузки <a href="DataProcessor.РаботаСФайлами.Form.ФормаИмпортаФайлов/Help">сведения</a>.</li></ul><h3>Загрузка папок</h3>
|
||||
<ul><li>
|
||||
<div>Для того чтобы поместить папку с жесткого или сетевого диска в одну из папок списка <strong>Файлы</strong>, выберите папку, выполните команду меню <strong>Еще</strong> или контекстного меню по правой кнопке мыши <strong>Загрузить папку</strong>.</div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>В открывшемся <strong>Проводнике Windows</strong> укажите путь к папке, нажмите<strong> Выбор папки</strong>. </div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Заполните необходимые для загрузки <a href="DataProcessor.РаботаСФайлами.Form.ФормаИмпортаПапки/Help">сведения</a>.</div></li></ul><h3>Загрузка файлов и папок с помощью перетаскивания мышью</h3>
|
||||
<ul><li>
|
||||
<div>Если нужно загрузить один или несколько файлов (папок), можно использовать перетаскивание мышью - просто перетащите файл (папку) или несколько выбранных файлов (папок) мышкой из <strong>Проводника Windows</strong> в нужную папку списка файлов программы.</div>
|
||||
</li><li>
|
||||
<div>Если нужно загрузить один или несколько файлов (папок), можно использовать перетаскивание мышью - просто перетащите файл (папку) или несколько выбранных файлов (папок) мышкой из <strong>Проводника Windows</strong> в нужную папку списка файлов приложения.</div>
|
||||
</li>
|
||||
<li>
|
||||
<div>Один файл сразу записывается в список файлов, автоматически создается карточка файла.</div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>При перетаскивании нескольких файлов, папки или нескольких папок заполните необходимые <a href="Catalog.Файлы.Form.ФормаПеретаскивания/Help">сведения</a>.</div></li></ul><h3>Выгрузка папок</h3>
|
||||
<ul><li>Команда <strong>Сохранить папку</strong> (расположена в контекстном меню папки) позволяет <a href="DataProcessor.РаботаСФайлами.Form.ФормаЭкспортаПапки/Help">скопировать выбранную папку</a> с файлами на жесткий диск. При этом копируются только активные версии файлов. </li></ul><h3>Управление просмотром списка файлов</h3>
|
||||
<ul><li>С помощью команды <strong>Еще - Настройки -</strong> <strong>Использовать иерархию</strong> можно изменить вид списка и увидеть все файлы, находящиеся в разных папках, в одном списке.</li></ul><h3>См. также: </h3>
|
||||
<ul><li><a href="v8help://frame/form_common">Работас формами</a>.</li></ul></body></html>
|
||||
<ul><li>Команда <strong>Сохранить папку</strong> (расположена в контекстном меню папки) позволяет <a href="DataProcessor.РаботаСФайлами.Form.ФормаЭкспортаПапки/Help">скопировать выбранную папку</a> с файлами на устройство. При этом копируются только активные версии файлов. </li></ul><h3>Управление просмотром списка файлов</h3>
|
||||
<ul><li>С помощью команды <strong>Еще - Настройки -</strong> <strong>Использовать иерархию</strong> можно изменить вид списка и увидеть все файлы, находящиеся в разных папках, в одном списке.</li></ul><h3>Электронная подпись и шифрование</h3>
|
||||
<p>В выпадающем меню по кнопке <img src="CommonPicture.ПодписанЗашифрованЗаголовок" width="16" height="16"></img> <strong>Электронная подпись и шифрование</strong> доступны команды для работы с электронной подписью файлов:</p>
|
||||
<ul><li><strong>Подписать</strong> - создает ЭП для файла. Перед созданием ЭП приложение предлагает <a>выбрать сертификат ЭП</a> из имеющихся на устройстве. Выбор сертификата можно сделать и во время персональных настроек приложения. Также файл можно подписать по доверенности, выбрав соответствующую из списка. Подписанный файл становится недоступным для редактирования и отображается в списках со значком <img src="CommonPicture.ПодписанЭП" width="16" height="16"></img>.
|
||||
</li>
|
||||
<li><strong>Сохранить вместе с электронной подписью</strong> - <a href="CommonForm.СохранениеВместеСЭлектроннойПодписью/Help">сохраняет подпись</a> в файл на устройстве. Команду можно использовать, например, если необходимо передать подписанный файл другому лицу.
|
||||
</li>
|
||||
<li><strong>Добавить электронную подпись из файла</strong> - <a href="CommonForm.ДобавлениеЭлектроннойПодписиИзФайла/Help">добавляет подпись</a> к файлу. Команду можно использовать, например, если подпись (файл подписи) была получена позже, чем подписанный файл.
|
||||
</li>
|
||||
<li><strong>Зашифровать</strong> - по команде происходит <a>шифрование файла</a>. В отличие от подписания могут использоваться несколько сертификатов, например, если необходимо зашифровать файл для нескольких пользователей. Зашифрованный файл в списках отображается со значком <img src="CommonPicture.Зашифрован" width="16" height="16"></img>.
|
||||
</li>
|
||||
<li><strong>Расшифровать</strong> - по команде происходит <a>расшифровка файла</a>. Для расшифровки нужно ввести пароль к закрытому ключу.</li></ul><h3>См. также:</h3>
|
||||
<ul><li>
|
||||
<div><a href="v8help://frame/form_common">Работа с формами</a>.</div></li></ul></body></html>
|
||||
@@ -356,11 +356,11 @@
|
||||
|
||||
// Продолжение процедуры ВыбратьФайл.
|
||||
&НаКлиенте
|
||||
Процедура ВыбратьФайлПослеПолученияКонтейнераПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
Асинх Процедура ВыбратьФайлПослеПолученияКонтейнераПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
|
||||
ДатаСеанса = ОбщегоНазначенияКлиент.ДатаСеанса();
|
||||
ДобавкаВремени = ДатаСеанса - ОбщегоНазначенияКлиент.ДатаУниверсальная();
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписи = Ждать ЭлектроннаяПодписьСлужебныйКлиент.ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ДобавкаВремени, ДатаСеанса);
|
||||
|
||||
Контекст.Вставить("ПараметрыПодписи", ПараметрыПодписи);
|
||||
@@ -432,9 +432,9 @@
|
||||
|
||||
// Продолжение процедуры ВыбратьФайл.
|
||||
&НаКлиенте
|
||||
Процедура ВыбратьФайлПослеВыгрузкиСертификата(ДанныеСертификата, Контекст) Экспорт
|
||||
Асинх Процедура ВыбратьФайлПослеВыгрузкиСертификата(ДанныеСертификата, Контекст) Экспорт
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(Контекст.Сертификат);
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(Контекст.Сертификат);
|
||||
СвойстваСертификата.Вставить("ДвоичныеДанные", ДанныеСертификата);
|
||||
|
||||
СвойстваПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваПодписи(Контекст.ДанныеПодписи,
|
||||
@@ -547,7 +547,7 @@
|
||||
ПараметрыПодписи = Неопределено;
|
||||
Если ЭлектроннаяПодпись.ОбщиеНастройки().ДоступнаУсовершенствованнаяПодпись Тогда
|
||||
КонтейнерПодписи = МенеджерКриптографии.ПолучитьКонтейнерПодписейКриптографии(ДанныеПодписи);
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(КонтейнерПодписи,
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебный.ПараметрыПодписиКриптографии(КонтейнерПодписи,
|
||||
ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ТекущаяДатаСеанса());
|
||||
|
||||
Если ЗначениеЗаполнено(ПараметрыПодписи.НеподтвержденнаяДатаПодписи) Тогда
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
<p>Настройка параметров для использования средств электронной подписи и шифрования (криптографии). </p>
|
||||
<p>Открывается по команде <strong>Настройки электронной подписи и шифрования</strong> раздела <strong>Администрирование - Общие настройки</strong>.</p>
|
||||
<p>Для электронной подписи и шифрования требуется установить специальную стороннюю программу (криптопровайдер).</p>
|
||||
<p>Для того чтобы подписывать данные, нужно включить флажок <strong>Электронная подпись</strong>, а для шифрования нужно включить флажок <strong>Шифрование</strong> в разделе <strong>Администрирование - Общие настройки</strong>. После этого становятся доступными соответствующие команды в программе.</p>
|
||||
<p>Для того чтобы подписывать данные, нужно включить флажок <strong>Электронная подпись</strong>, а для шифрования нужно включить флажок <strong>Шифрование</strong> в разделе <strong>Администрирование - Общие настройки</strong>. После этого становятся доступными соответствующие команды в приложении.</p>
|
||||
<p>Электронная подпись - реквизит электронного документа, с помощью которого можно удостовериться в неизменности электронного документа с момента его подписи. Для установки подписи необходимо иметь сертификат ключа электронной подписи. Сертификат можно получить в удостоверяющем центре. Например, в удостоверяющем центре фирмы 1С <a href="http://ca.1c.ru/">http://ca.1c.ru/</a>. Только удостоверяющий центр может выдать юридически значимый (квалифицированный сертификат).</p>
|
||||
<p>В случае использования распределенной информационной базы большую часть настроек можно изменить только в главном узле.</p>
|
||||
<p>Для автоматического определения программы для работы с сертификатом может понадобиться установка компоненты <b>ExtraCryptoAPI</b>. Установить компоненту можно<b> </b>через меню <b>Еще - Установить компоненту</b> <b>ExtraCryptoAPI.</b></p>
|
||||
<p>Для автоматического определения приложения для работы с сертификатом может понадобиться установка компоненты <b>ExtraCryptoAPI</b>. Установить компоненту можно<b> </b>через меню <b>Еще - Установить компоненту</b> <b>ExtraCryptoAPI.</b></p>
|
||||
<h3>Сертификаты</h3>
|
||||
<ul><li>Показывает все сертификаты, которые используются для подписания и шифрования данных, а также заявления на выпуск нового сертификата.
|
||||
</li>
|
||||
@@ -13,8 +13,8 @@
|
||||
</li>
|
||||
<li>Предусмотрен отбор по полю <strong>Состояние заявления</strong> ("Любое", "Не подготовлено", "Подготовлено", "Отправлено", "Отклонено", "Исполнено, сертификат не установлен", "Исполнено").
|
||||
</li>
|
||||
<li><a href="Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Form.ФормаЭлемента/Help">Сертификат</a> можно <strong>Добавить</strong> из числа <strong>установленных на компьютере</strong>. Также это можно сделать в процессе подписания или шифрования данных. Выберите нужное действие с помощью переключателя, нажмите <b>Добавить</b>.</li>
|
||||
<ul><li>Сертификат <b>только для шифрования</b> можно <b>Добавить из файла</b>. Выберите нужное действие и перейдите по ссылке, укажите путь к файлу на компьютере.</li></ul><li>Также с помощью кнопки <strong>Добавить</strong> можно подготовить <a href="DataProcessor.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Form.Форма/Help">Заявление на выпуск нового сертификата</a>.
|
||||
<li><a href="Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Form.ФормаЭлемента/Help">Сертификат</a> можно <strong>Добавить</strong> из числа <strong>установленных на устройстве</strong>. Также это можно сделать в процессе подписания или шифрования данных. Выберите нужное действие с помощью переключателя, нажмите <b>Добавить</b>.</li>
|
||||
<ul><li>Сертификат <b>только для шифрования</b> можно <b>Добавить из файла</b>. Выберите нужное действие и перейдите по ссылке, укажите путь к файлу на устройстве.</li></ul><li>Также с помощью кнопки <strong>Добавить</strong> можно подготовить <a href="DataProcessor.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Form.Форма/Help">Заявление на выпуск нового сертификата</a>.
|
||||
</li>
|
||||
<li>Просмотреть сертификат или заявление на выпуск нового сертификата можно, дважды щелкнув по нему мышью. Также можно это сделать с помощью команды <strong>Изменить</strong> контекстного меню по правой кнопке мыши или меню <strong>Еще</strong>.</li></ul><h3>Программы</h3>
|
||||
<ul><li>Содержит список настроенных программ, которые будут использованы в информационной базе (в том числе во всех узлах распределенной ИБ). </li>
|
||||
@@ -38,6 +38,8 @@
|
||||
<li>
|
||||
<div><strong>Спрашивать</strong> - выбор сохраняемых подписей осуществляется из <a href="CommonForm.СохранениеВместеСЭлектроннойПодписью/Help">списка</a>.</div></li></ul></li>
|
||||
<li>
|
||||
<div>Включите флажок <strong>Сохранять сертификат</strong> для сохранения на компьютер сертификата вместе с файлом и электронной подписью.</div></li></ul><h3>См. также:</h3>
|
||||
<ul><li>Перейдите по этой ссылке в соответствующий раздел 1С:ИТС, если имеются вопросы.</li></ul><h3 style="font-size: 13.4399995803833px;">Дополнительно</h3>
|
||||
<div>Включите флажок <strong>Сохранять сертификат</strong> для сохранения на компьютер сертификата вместе с файлом и электронной подписью.</div></li></ul><h3>Машиночитаемые доверенности (единый формат) </h3>
|
||||
<ul><li>Для того чтобы попасть в<a href="Catalog.МашиночитаемыеДоверенности/Help"> список машиночитаемых доверенностей (МЧД)</a> перейдите по гиперссылке. </li></ul><h3>Легенда</h3>
|
||||
<ul><li>Для того чтобы посмотреть состояние сертификатов нажмите раздел <strong>Легенда</strong> в нижней части списка. </li></ul><h3>См. также:</h3>
|
||||
<ul><li>Перейдите по этой ссылке в соответствующий раздел 1С:ИТС, если имеются вопросы.</li></ul><h3>Дополнительно</h3>
|
||||
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>
|
||||
@@ -0,0 +1,22 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link></head><body>
|
||||
<div>
|
||||
<p>Внешняя компонента платформозависима и сможет работать только в определенных операционных системах или браузерах.</p></div>
|
||||
<ul><li>В приложении для ОС <b>Windows</b>, <b>Linux</b>, <b>macOS</b> и <b>Мобильные ОС</b>;</li>
|
||||
|
||||
<li>В веб-браузерах <b>Google Chrome, Microsoft Internet Explorer, Mozilla Firefox, Safari</b> и <b>Яндекс Браузер</b>;</li>
|
||||
|
||||
<li>В мобильном приложении в <b>Android, iOS</b> и <b>Windows RT</b>;</li>
|
||||
|
||||
<li>Может быть <b>32-х </b>разрядная версия внешней компоненты и <b>64-х </b>разрядная;</li>
|
||||
<li>На процессоре с архитектурой <b>x86</b>, <b>x86-64</b>, <b>ARM</b>, <b>ARM64</b>, <b>Е2К</b>:</li>
|
||||
<ul><li><b>x86</b> - это 32-х разрядная архитектура, которая используется процессами Intel и AMD.</li>
|
||||
<li><b>x86-64</b> - более современная архитектура, позволяет запускать 64-х разрядные приложения; </li>
|
||||
<li><b>ARM</b> - популярная архитектура, разработанная для Android. Устройство на ARM работают под управлением 32-х разрядной ОС;
|
||||
</li>
|
||||
<li><strong>ARM64</strong> - новый тип процессоров, поддерживающий 64-х разрядные ОС;
|
||||
</li>
|
||||
<li><strong>E2K (E2Kv4 и выше)</strong> - российский процессор Эльбрус 2000, который работает под ОС Linux Эльбрус: 7.0, 7.1.</li></ul></ul><p>Для получения подробной информации о том, <a href="https://its.1c.ru/bmk/v83doc_extcomp">Как запустить
|
||||
определенное клиентское приложение</a>, см. инструкцию по разработке на портале 1С:ИТС.</p>
|
||||
<p style="orphans: 2; widows: 2; "><br></p>
|
||||
<p><br></p>
|
||||
</body></html>
|
||||
+5
@@ -5,6 +5,11 @@
|
||||
<key>ru</key>
|
||||
<value>Поддерживаемые клиентские приложения</value>
|
||||
</synonym>
|
||||
<help>
|
||||
<pages>
|
||||
<lang>ru</lang>
|
||||
</pages>
|
||||
</help>
|
||||
<usePurposes>PersonalComputer</usePurposes>
|
||||
<usePurposes>MobileDevice</usePurposes>
|
||||
</mdclass:CommonForm>
|
||||
@@ -90,16 +90,24 @@
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormGroup">
|
||||
<name>ГруппаСрокДействия</name>
|
||||
<id>272</id>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>СрокДействия</name>
|
||||
<id>6</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Срок действия
|
||||
сертификата</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ДействителенДо</segments>
|
||||
<segments>ДатаОкончания</segments>
|
||||
</dataPath>
|
||||
<skipOnInput>true</skipOnInput>
|
||||
<extendedTooltip>
|
||||
@@ -133,6 +141,77 @@
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ДатаОкончанияЗакрытогоКлюча</name>
|
||||
<id>274</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ДатаОкончанияЗакрытогоКлюча</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ДатаОкончанияЗакрытогоКлючаРасширеннаяПодсказка</name>
|
||||
<id>276</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ДатаОкончанияЗакрытогоКлючаКонтекстноеМеню</name>
|
||||
<id>275</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<readOnly>true</readOnly>
|
||||
<editMode>Enter</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Группа срок действия</value>
|
||||
</title>
|
||||
<extendedTooltip>
|
||||
<name>ГруппаСрокДействияРасширеннаяПодсказка</name>
|
||||
<id>273</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>UsualGroup</type>
|
||||
<extInfo xsi:type="form:UsualGroupExtInfo">
|
||||
<group>HorizontalIfPossible</group>
|
||||
<behavior>Auto</behavior>
|
||||
<representation>WeakSeparation</representation>
|
||||
<showLeftMargin>true</showLeftMargin>
|
||||
<united>true</united>
|
||||
<currentRowUse>Auto</currentRowUse>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>АлгоритмПодписи</name>
|
||||
<id>168</id>
|
||||
@@ -998,398 +1077,6 @@
|
||||
<scrollOnCompress>false</scrollOnCompress>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormGroup">
|
||||
<name>СтраницаВнутреннееСодержание</name>
|
||||
<id>26</id>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ГруппаВнутреннихПолей</name>
|
||||
<id>92</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ГруппаВнутреннихПолей</segments>
|
||||
</dataPath>
|
||||
<handlers>
|
||||
<event>OnChange</event>
|
||||
<name>ГруппаВнутреннихПолейПриИзменении</name>
|
||||
</handlers>
|
||||
<extendedTooltip>
|
||||
<name>ГруппаВнутреннихПолейРасширеннаяПодсказка</name>
|
||||
<id>94</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ГруппаВнутреннихПолейКонтекстноеМеню</name>
|
||||
<id>93</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Enter</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<handlers>
|
||||
<event>Clearing</event>
|
||||
<name>ГруппаВнутреннихПолейОчистка</name>
|
||||
</handlers>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<horizontalStretch>false</horizontalStretch>
|
||||
<wrap>true</wrap>
|
||||
<listChoiceMode>true</listChoiceMode>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Общие</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Общие</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Субъект</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Субъект</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Издатель</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Издатель</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Расширенные свойства</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>РасширенныеСвойства</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<backColor xsi:type="core:ColorRef">
|
||||
<color>Style.ФонУправляющегоПоля</color>
|
||||
</backColor>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:Table">
|
||||
<name>ВнутреннееСодержание</name>
|
||||
<id>95</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Внутреннее содержание</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание</segments>
|
||||
</dataPath>
|
||||
<titleLocation>None</titleLocation>
|
||||
<excludedCommands>Add</excludedCommands>
|
||||
<excludedCommands>Change</excludedCommands>
|
||||
<excludedCommands>Copy</excludedCommands>
|
||||
<excludedCommands>Delete</excludedCommands>
|
||||
<excludedCommands>EndEdit</excludedCommands>
|
||||
<excludedCommands>MoveDown</excludedCommands>
|
||||
<excludedCommands>MoveUp</excludedCommands>
|
||||
<excludedCommands>SortListAsc</excludedCommands>
|
||||
<excludedCommands>SortListDesc</excludedCommands>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеСвойство</name>
|
||||
<id>99</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Свойство</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСвойствоРасширеннаяПодсказка</name>
|
||||
<id>101</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСвойствоКонтекстноеМеню</name>
|
||||
<id>100</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>15</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеИдентификатор</name>
|
||||
<id>165</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>OID</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Идентификатор</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеИдентификаторРасширеннаяПодсказка</name>
|
||||
<id>167</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеИдентификаторКонтекстноеМеню</name>
|
||||
<id>166</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>15</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<horizontalStretch>false</horizontalStretch>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеЗначение</name>
|
||||
<id>102</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Значение</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеЗначениеРасширеннаяПодсказка</name>
|
||||
<id>104</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеЗначениеКонтекстноеМеню</name>
|
||||
<id>103</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<autoCellHeight>true</autoCellHeight>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>30</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<autoCommandBar>
|
||||
<name>ВнутреннееСодержаниеКоманднаяПанель</name>
|
||||
<id>97</id>
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</autoCommandBar>
|
||||
<searchStringAddition>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоиска</name>
|
||||
<id>156</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоискаРасширеннаяПодсказка</name>
|
||||
<id>158</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоискаКонтекстноеМеню</name>
|
||||
<id>157</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</searchStringAddition>
|
||||
<viewStatusAddition>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотра</name>
|
||||
<id>159</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотраРасширеннаяПодсказка</name>
|
||||
<id>161</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотраКонтекстноеМеню</name>
|
||||
<id>160</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>ViewStatusAddition</type>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</viewStatusAddition>
|
||||
<searchControlAddition>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоиском</name>
|
||||
<id>162</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоискомРасширеннаяПодсказка</name>
|
||||
<id>164</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоискомКонтекстноеМеню</name>
|
||||
<id>163</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>SearchControlAddition</type>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</searchControlAddition>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеРасширеннаяПодсказка</name>
|
||||
<id>98</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеКонтекстноеМеню</name>
|
||||
<id>96</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<readOnly>true</readOnly>
|
||||
<changeRowSet>true</changeRowSet>
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<header>true</header>
|
||||
<headerHeight>1</headerHeight>
|
||||
<footerHeight>1</footerHeight>
|
||||
<horizontalScrollBar>AutoUse</horizontalScrollBar>
|
||||
<verticalScrollBar>AutoUse</verticalScrollBar>
|
||||
<horizontalLines>true</horizontalLines>
|
||||
<verticalLines>true</verticalLines>
|
||||
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
|
||||
<autoInsertNewRow>true</autoInsertNewRow>
|
||||
<searchOnInput>Auto</searchOnInput>
|
||||
<initialListView>Auto</initialListView>
|
||||
<horizontalStretch>true</horizontalStretch>
|
||||
<verticalStretch>true</verticalStretch>
|
||||
<enableStartDrag>true</enableStartDrag>
|
||||
<enableDrag>true</enableDrag>
|
||||
<autoMaxCardHeight>true</autoMaxCardHeight>
|
||||
<rowFilter xsi:type="core:UndefinedValue"/>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Внутреннее содержание</value>
|
||||
</title>
|
||||
<extendedTooltip>
|
||||
<name>СтраницаВнутреннееСодержаниеРасширеннаяПодсказка</name>
|
||||
<id>27</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>Page</type>
|
||||
<extInfo xsi:type="form:PageGroupExtInfo">
|
||||
<group>Vertical</group>
|
||||
<showTitle>auto</showTitle>
|
||||
<scrollOnCompress>false</scrollOnCompress>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormGroup">
|
||||
<name>СтраницаКорневыеСертификаты</name>
|
||||
<id>240</id>
|
||||
@@ -1989,6 +1676,398 @@
|
||||
<scrollOnCompress>false</scrollOnCompress>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormGroup">
|
||||
<name>СтраницаВнутреннееСодержание</name>
|
||||
<id>26</id>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ГруппаВнутреннихПолей</name>
|
||||
<id>92</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ГруппаВнутреннихПолей</segments>
|
||||
</dataPath>
|
||||
<handlers>
|
||||
<event>OnChange</event>
|
||||
<name>ГруппаВнутреннихПолейПриИзменении</name>
|
||||
</handlers>
|
||||
<extendedTooltip>
|
||||
<name>ГруппаВнутреннихПолейРасширеннаяПодсказка</name>
|
||||
<id>94</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ГруппаВнутреннихПолейКонтекстноеМеню</name>
|
||||
<id>93</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Enter</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<handlers>
|
||||
<event>Clearing</event>
|
||||
<name>ГруппаВнутреннихПолейОчистка</name>
|
||||
</handlers>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<horizontalStretch>false</horizontalStretch>
|
||||
<wrap>true</wrap>
|
||||
<listChoiceMode>true</listChoiceMode>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Общие</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Общие</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Субъект</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Субъект</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Издатель</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>Издатель</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<choiceList>
|
||||
<presentation>
|
||||
<key>ru</key>
|
||||
<value>Расширенные свойства</value>
|
||||
</presentation>
|
||||
<value xsi:type="core:StringValue">
|
||||
<value>РасширенныеСвойства</value>
|
||||
</value>
|
||||
</choiceList>
|
||||
<backColor xsi:type="core:ColorRef">
|
||||
<color>Style.ФонУправляющегоПоля</color>
|
||||
</backColor>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:Table">
|
||||
<name>ВнутреннееСодержание</name>
|
||||
<id>95</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Внутреннее содержание</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание</segments>
|
||||
</dataPath>
|
||||
<titleLocation>None</titleLocation>
|
||||
<excludedCommands>Add</excludedCommands>
|
||||
<excludedCommands>Change</excludedCommands>
|
||||
<excludedCommands>Copy</excludedCommands>
|
||||
<excludedCommands>Delete</excludedCommands>
|
||||
<excludedCommands>EndEdit</excludedCommands>
|
||||
<excludedCommands>MoveDown</excludedCommands>
|
||||
<excludedCommands>MoveUp</excludedCommands>
|
||||
<excludedCommands>SortListAsc</excludedCommands>
|
||||
<excludedCommands>SortListDesc</excludedCommands>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеСвойство</name>
|
||||
<id>99</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Свойство</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСвойствоРасширеннаяПодсказка</name>
|
||||
<id>101</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСвойствоКонтекстноеМеню</name>
|
||||
<id>100</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>15</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеИдентификатор</name>
|
||||
<id>165</id>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>OID</value>
|
||||
</title>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Идентификатор</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеИдентификаторРасширеннаяПодсказка</name>
|
||||
<id>167</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеИдентификаторКонтекстноеМеню</name>
|
||||
<id>166</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>15</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<horizontalStretch>false</horizontalStretch>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>ВнутреннееСодержаниеЗначение</name>
|
||||
<id>102</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>ВнутреннееСодержание.Значение</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеЗначениеРасширеннаяПодсказка</name>
|
||||
<id>104</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеЗначениеКонтекстноеМеню</name>
|
||||
<id>103</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>InputField</type>
|
||||
<editMode>Auto</editMode>
|
||||
<autoCellHeight>true</autoCellHeight>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:InputFieldExtInfo">
|
||||
<width>30</width>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<wrap>true</wrap>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textEdit>true</textEdit>
|
||||
<textSize>Normal</textSize>
|
||||
</extInfo>
|
||||
</items>
|
||||
<autoCommandBar>
|
||||
<name>ВнутреннееСодержаниеКоманднаяПанель</name>
|
||||
<id>97</id>
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</autoCommandBar>
|
||||
<searchStringAddition>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоиска</name>
|
||||
<id>156</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоискаРасширеннаяПодсказка</name>
|
||||
<id>158</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСтрокаПоискаКонтекстноеМеню</name>
|
||||
<id>157</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:SearchStringAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</searchStringAddition>
|
||||
<viewStatusAddition>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотра</name>
|
||||
<id>159</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотраРасширеннаяПодсказка</name>
|
||||
<id>161</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеСостояниеПросмотраКонтекстноеМеню</name>
|
||||
<id>160</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>ViewStatusAddition</type>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:ViewStatusAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</viewStatusAddition>
|
||||
<searchControlAddition>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоиском</name>
|
||||
<id>162</id>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоискомРасширеннаяПодсказка</name>
|
||||
<id>164</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеУправлениеПоискомКонтекстноеМеню</name>
|
||||
<id>163</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>SearchControlAddition</type>
|
||||
<source>ВнутреннееСодержание</source>
|
||||
<extInfo xsi:type="form:SearchControlAdditionExtInfo">
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
</extInfo>
|
||||
</searchControlAddition>
|
||||
<extendedTooltip>
|
||||
<name>ВнутреннееСодержаниеРасширеннаяПодсказка</name>
|
||||
<id>98</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>ВнутреннееСодержаниеКонтекстноеМеню</name>
|
||||
<id>96</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<readOnly>true</readOnly>
|
||||
<changeRowSet>true</changeRowSet>
|
||||
<changeRowOrder>true</changeRowOrder>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<autoMaxRowsCount>true</autoMaxRowsCount>
|
||||
<selectionMode>MultiRow</selectionMode>
|
||||
<header>true</header>
|
||||
<headerHeight>1</headerHeight>
|
||||
<footerHeight>1</footerHeight>
|
||||
<horizontalScrollBar>AutoUse</horizontalScrollBar>
|
||||
<verticalScrollBar>AutoUse</verticalScrollBar>
|
||||
<horizontalLines>true</horizontalLines>
|
||||
<verticalLines>true</verticalLines>
|
||||
<useAlternationRowColorBWA>false</useAlternationRowColorBWA>
|
||||
<autoInsertNewRow>true</autoInsertNewRow>
|
||||
<searchOnInput>Auto</searchOnInput>
|
||||
<initialListView>Auto</initialListView>
|
||||
<horizontalStretch>true</horizontalStretch>
|
||||
<verticalStretch>true</verticalStretch>
|
||||
<enableStartDrag>true</enableStartDrag>
|
||||
<enableDrag>true</enableDrag>
|
||||
<autoMaxCardHeight>true</autoMaxCardHeight>
|
||||
<rowFilter xsi:type="core:UndefinedValue"/>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Внутреннее содержание</value>
|
||||
</title>
|
||||
<extendedTooltip>
|
||||
<name>СтраницаВнутреннееСодержаниеРасширеннаяПодсказка</name>
|
||||
<id>27</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<type>Page</type>
|
||||
<extInfo xsi:type="form:PageGroupExtInfo">
|
||||
<group>Vertical</group>
|
||||
<showTitle>auto</showTitle>
|
||||
<scrollOnCompress>false</scrollOnCompress>
|
||||
</extInfo>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
@@ -2155,10 +2234,11 @@
|
||||
</edit>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>ДействителенДо</name>
|
||||
<name>ДатаОкончания</name>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Действителен до</value>
|
||||
<value>Срок действия
|
||||
сертификата</value>
|
||||
</title>
|
||||
<id>3</id>
|
||||
<valueType>
|
||||
@@ -2659,6 +2739,38 @@
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>ДатаОкончанияЗакрытогоКлюча</name>
|
||||
<title>
|
||||
<key>ru</key>
|
||||
<value>Срок действия
|
||||
закрытого ключа</value>
|
||||
</title>
|
||||
<id>43</id>
|
||||
<valueType>
|
||||
<types>Date</types>
|
||||
<dateQualifiers>
|
||||
<dateFractions>Date</dateFractions>
|
||||
</dateQualifiers>
|
||||
</valueType>
|
||||
<view>
|
||||
<common>true</common>
|
||||
</view>
|
||||
<edit>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>ДополнительныеСвойстваСертификата</name>
|
||||
<id>44</id>
|
||||
<valueType/>
|
||||
<view>
|
||||
<common>true</common>
|
||||
</view>
|
||||
<edit>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<formCommands>
|
||||
<name>СохранитьВФайл</name>
|
||||
<title>
|
||||
|
||||
@@ -49,6 +49,8 @@
|
||||
КонецЕсли;
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(Сертификат);
|
||||
ДополнительныеСвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(
|
||||
ДанныеСертификата);
|
||||
|
||||
НазначениеПодписание = Сертификат.ИспользоватьДляПодписи;
|
||||
НазначениеШифрование = Сертификат.ИспользоватьДляШифрования;
|
||||
@@ -56,7 +58,9 @@
|
||||
Отпечаток = СвойстваСертификата.Отпечаток;
|
||||
КомуВыдан = СвойстваСертификата.КомуВыдан;
|
||||
КемВыдан = СвойстваСертификата.КемВыдан;
|
||||
ДействителенДо = СвойстваСертификата.ДатаОкончания;
|
||||
ДатаОкончания = СвойстваСертификата.ДатаОкончания;
|
||||
ДатаОкончанияЗакрытогоКлюча = СвойстваСертификата.ДатаОкончанияЗакрытогоКлюча;
|
||||
Элементы.ДатаОкончанияЗакрытогоКлюча.Видимость = ЗначениеЗаполнено(ДатаОкончанияЗакрытогоКлюча);
|
||||
|
||||
АлгоритмПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.АлгоритмПодписиСертификата(
|
||||
ДанныеСертификата, Истина);
|
||||
@@ -64,8 +68,7 @@
|
||||
Элементы.АлгоритмПодписи.Подсказка =
|
||||
Метаданные.Справочники.ПрограммыЭлектроннойПодписиИШифрования.Реквизиты.АлгоритмПодписи.Подсказка;
|
||||
|
||||
Элементы.ГруппаЛицензияКриптоПро.Видимость = ЭлектроннаяПодписьСлужебный.СодержитВстроеннуюЛицензиюКриптоПро(
|
||||
ДанныеСертификата);
|
||||
Элементы.ГруппаЛицензияКриптоПро.Видимость = ДополнительныеСвойстваСертификата.СодержитВстроеннуюЛицензиюКриптоПро;
|
||||
|
||||
ЗаполнитьКодыНазначенияСертификата(СвойстваСертификата.Назначение, НазначениеКоды);
|
||||
|
||||
@@ -88,7 +91,8 @@
|
||||
СертификатКриптографии = Новый СертификатКриптографии(
|
||||
Base64Значение(ПолучитьИзВременногоХранилища(ТекущийСертификат.ДанныеСертификата)));
|
||||
НоваяСтрока = ПутьСертификации.Вставить(0);
|
||||
НоваяСтрока.Представление = ЭлектроннаяПодпись.ПредставлениеСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(СертификатКриптографии);
|
||||
НоваяСтрока.Представление = СвойстваСертификата.Представление;
|
||||
НоваяСтрока.ДанныеСертификата = ТекущийСертификат.ДанныеСертификата;
|
||||
КонецЦикла;
|
||||
Элементы.ГруппаОшибкаПолученияЦепочкиСертификатов.Видимость = Ложь;
|
||||
@@ -386,6 +390,14 @@
|
||||
ДобавитьСвойство(Сертификат, "Версия", НСтр("ru = 'Версия'"));
|
||||
ДобавитьСвойство(Сертификат, "ДатаНачала", НСтр("ru = 'Дата начала'"));
|
||||
ДобавитьСвойство(Сертификат, "ДатаОкончания", НСтр("ru = 'Дата окончания'"));
|
||||
|
||||
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаНачалаЗакрытогоКлюча) Тогда
|
||||
ДобавитьСвойство(ДополнительныеСвойстваСертификата, "ДатаНачалаЗакрытогоКлюча", НСтр("ru = 'Дата начала закрытого ключа'"));
|
||||
КонецЕсли;
|
||||
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) Тогда
|
||||
ДобавитьСвойство(ДополнительныеСвойстваСертификата, "ДатаОкончанияЗакрытогоКлюча", НСтр("ru = 'Дата окончания закрытого ключа'"));
|
||||
КонецЕсли;
|
||||
|
||||
ДобавитьСвойство(Сертификат, "ИспользоватьДляПодписи", НСтр("ru = 'Использовать для подписи'"));
|
||||
ДобавитьСвойство(Сертификат, "ИспользоватьДляШифрования", НСтр("ru = 'Использовать для шифрования'"));
|
||||
ДобавитьСвойство(Сертификат, "ОткрытыйКлюч", НСтр("ru = 'Открытый ключ'"), Истина);
|
||||
@@ -527,7 +539,10 @@
|
||||
Ждать СертификатКриптографии.ИнициализироватьАсинх(
|
||||
Base64Значение(ПолучитьИзВременногоХранилища(ТекущийСертификат.ДанныеСертификата)));
|
||||
НоваяСтрока = ПутьСертификации.Вставить(0);
|
||||
НоваяСтрока.Представление = ЭлектроннаяПодписьКлиент.ПредставлениеСертификата(СертификатКриптографии);
|
||||
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
|
||||
НоваяСтрока.Представление = СвойстваСертификата.Представление;
|
||||
НоваяСтрока.ДанныеСертификата = ТекущийСертификат.ДанныеСертификата;
|
||||
КонецЦикла;
|
||||
Элементы.ГруппаОшибкаПолученияЦепочкиСертификатов.Видимость = Ложь;
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
|
||||
СертификатКриптографии = Новый СертификатКриптографии;
|
||||
Ждать СертификатКриптографии.ИнициализироватьАсинх(ДанныеСертификата);
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
НоваяСтрока.КомуВыдан = СвойстваСертификата.Представление;
|
||||
НоваяСтрока.ДанныеСертификата = ПоместитьВоВременноеХранилище(ДанныеСертификата, УникальныйИдентификатор);
|
||||
Если ДанныеСертификата = Результат.Сертификат Тогда
|
||||
@@ -261,7 +261,7 @@
|
||||
|
||||
СертификатКриптографии = Новый СертификатКриптографии;
|
||||
Ждать СертификатКриптографии.ИнициализироватьАсинх(Результат.Сертификат);
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата = Ждать ЭлектроннаяПодписьСлужебныйКлиент.СвойстваСертификата(СертификатКриптографии);
|
||||
НоваяСтрока.КомуВыдан = СвойстваСертификата.Представление;
|
||||
НоваяСтрока.ДанныеСертификата = ПоместитьВоВременноеХранилище(Результат.Сертификат, УникальныйИдентификатор);
|
||||
НоваяСтрока.ЭтоСертификатПодписи = Истина;
|
||||
|
||||
@@ -184,7 +184,7 @@
|
||||
Процедура ЗаписатьОшибкуВЖурналРегистрации(Комментарий)
|
||||
|
||||
ЗаписьЖурналаРегистрации(НСтр("ru = 'Перевод текста'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
||||
УровеньЖурналаРегистрации.Ошибка, , Перечисления.СервисыПереводаТекста.ЯндексПереводчик, Комментарий);
|
||||
УровеньЖурналаРегистрации.Ошибка, , Перечисления.СервисыПереводаТекста.GoogleПереводчик, Комментарий);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
@@ -187,15 +187,15 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Состояние флажка для формы настроек версионирования объекта.
|
||||
// Возвращает признак хранения истории для формы настроек версионирования объекта.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Булево - значение.
|
||||
// Булево
|
||||
//
|
||||
// Пример:
|
||||
// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВерсионированиеОбъектов") Тогда
|
||||
// МодульВерсионированиеОбъектов = ОбщегоНазначения.ОбщийМодуль("ВерсионированиеОбъектов");
|
||||
// ИспользоватьПолнотекстовыйПоиск = МодульВерсионированиеОбъектов.ЗначениеФлажкаХранитьИсторию();
|
||||
// ИспользоватьВерсионированиеОбъектов = МодульВерсионированиеОбъектов.ЗначениеФлажкаХранитьИсторию();
|
||||
// Иначе
|
||||
// Элементы.ГруппаУправлениеВерсионированиемОбъектов.Видимость = Ложь;
|
||||
// КонецЕсли;
|
||||
|
||||
@@ -84,7 +84,8 @@
|
||||
|
||||
МетаданныеКонтакта = Контакт.Метаданные();
|
||||
|
||||
Если МетаданныеКонтакта.Иерархический Тогда
|
||||
Если МетаданныеКонтакта.Иерархический
|
||||
И МетаданныеКонтакта.ВидИерархии = Метаданные.СвойстваОбъектов.ВидИерархии.ИерархияГруппИЭлементов Тогда
|
||||
Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Контакт, "ЭтоГруппа") = Истина Тогда
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -107,8 +107,8 @@
|
||||
Возврат ПрефиксНесопоставленныхСтрок() + "Неоднозначность";
|
||||
КонецФункции
|
||||
|
||||
Функция СтатусНесопоставлен() Экспорт
|
||||
Возврат ПрефиксНесопоставленныхСтрок() + "Несопоставлен";
|
||||
Функция СтатусНеСопоставлен() Экспорт
|
||||
Возврат ПрефиксНесопоставленныхСтрок() + "НеСопоставлен";
|
||||
КонецФункции
|
||||
|
||||
Функция СтатусСопоставлен() Экспорт
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||
|
||||
Описание.Имя = "СтандартныеПодсистемы";
|
||||
Описание.Версия = "3.1.9.232";
|
||||
Описание.Версия = "3.1.9.238";
|
||||
Описание.ИдентификаторИнтернетПоддержки = "SSL";
|
||||
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
||||
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
|
||||
|
||||
@@ -2561,11 +2561,24 @@
|
||||
Возврат Новый ЗащищенноеСоединениеOpenSSL;
|
||||
#Иначе
|
||||
СистемнаяИнформация = Новый СистемнаяИнформация;
|
||||
Если СравнитьВерсии(СистемнаяИнформация.ВерсияПриложения, "8.3.22.0") >= 0 Тогда
|
||||
Если СравнитьВерсии(СистемнаяИнформация.ВерсияПриложения, "8.3.24.1305") >= 0 Тогда
|
||||
Если СертификатыУдостоверяющихЦентров = Неопределено Тогда
|
||||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
||||
ЭтоОСWindows = ОбщегоНазначения.ЭтоWindowsСервер();
|
||||
ЭтоОСLinux = ОбщегоНазначения.ЭтоLinuxСервер();
|
||||
#Иначе
|
||||
ЭтоОСWindows = ОбщегоНазначенияКлиент.ЭтоWindowsКлиент();
|
||||
ЭтоОСLinux = ОбщегоНазначенияКлиент.ЭтоLinuxКлиент();
|
||||
#КонецЕсли
|
||||
Если ЭтоОСWindows Тогда
|
||||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровWindows();
|
||||
ИначеЕсли ЭтоОСLinux Тогда
|
||||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровLinux();
|
||||
Иначе
|
||||
СертификатыУдостоверяющихЦентров = Новый СертификатыУдостоверяющихЦентровОС();
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Новый ЗащищенноеСоединениеOpenSSL(СертификатКлиента, СертификатыУдостоверяющихЦентров);
|
||||
#КонецЕсли
|
||||
|
||||
@@ -906,6 +906,16 @@
|
||||
|
||||
Если Контекст.ПредложитьУстановить И Не Контекст.БылаПопыткаУстановки Тогда
|
||||
ПодключитьКомпонентуНачатьУстановку(Контекст);
|
||||
ИначеЕсли Не Контекст.ПредложитьУстановить Тогда
|
||||
Оповещение = Контекст.Оповещение;
|
||||
Результат = РезультатПодключенияКомпоненты();
|
||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"".
|
||||
|Возможно компонента не установлена.'"), Контекст.Идентификатор);
|
||||
|
||||
Результат.ОписаниеОшибки = ТекстОшибки;
|
||||
|
||||
ВыполнитьОбработкуОповещения(Оповещение, Результат);
|
||||
Иначе
|
||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"".
|
||||
@@ -1182,7 +1192,10 @@
|
||||
КонецПопытки;
|
||||
|
||||
#Если ВебКлиент Тогда
|
||||
ПаузаАсинх(2);
|
||||
СистемнаяИнформация = Новый СистемнаяИнформация;
|
||||
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СистемнаяИнформация.ВерсияПриложения, "8.3.24.0") >= 0 Тогда
|
||||
Ждать ПаузаАсинх(2);
|
||||
КонецЕсли;
|
||||
#КонецЕсли
|
||||
|
||||
Если Контекст.Кэшировать Тогда
|
||||
@@ -1215,7 +1228,16 @@
|
||||
|
||||
Возврат ОшибкаПодключенияКомпоненты(РезультатУстановки.ОписаниеОшибки);
|
||||
КонецЕсли;
|
||||
ИначеЕсли Не Контекст.ПредложитьУстановить Тогда
|
||||
Оповещение = Контекст.Оповещение;
|
||||
Результат = РезультатПодключенияКомпоненты();
|
||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"".
|
||||
|Возможно компонента не установлена.'"), Контекст.Идентификатор);
|
||||
|
||||
Результат.ОписаниеОшибки = ТекстОшибки;
|
||||
|
||||
Возврат Результат;
|
||||
Иначе
|
||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"".
|
||||
|
||||
@@ -116,10 +116,21 @@
|
||||
НовоеПоле = ПараметрыОтбора.Поле;
|
||||
КонецЕсли;
|
||||
|
||||
ИдСуществующейПользовательскойНастройки = Неопределено;
|
||||
|
||||
Если ТипЗнч(ЭлементСтруктуры) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда
|
||||
Отбор = ЭлементСтруктуры.Настройки.Отбор;
|
||||
|
||||
Если ДополнительныеПараметры.ВПользовательскиеНастройки Тогда
|
||||
|
||||
Для Каждого Элемент Из Отбор.Элементы Цикл
|
||||
Если Элемент.ЛевоеЗначение = НовоеПоле Тогда
|
||||
ИдСуществующейПользовательскойНастройки = Элемент.ИдентификаторПользовательскойНастройки;
|
||||
СуществующийОтбор = Элемент;
|
||||
Прервать;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
Для Каждого ЭлементНастройки Из ЭлементСтруктуры.ПользовательскиеНастройки.Элементы Цикл
|
||||
Если ЭлементНастройки.ИдентификаторПользовательскойНастройки =
|
||||
ЭлементСтруктуры.Настройки.Отбор.ИдентификаторПользовательскойНастройки Тогда
|
||||
@@ -147,6 +158,20 @@
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Если ИдСуществующейПользовательскойНастройки <> Неопределено Тогда
|
||||
ЭлементОтбора = СуществующийОтбор;
|
||||
Для Каждого Элемент Из ЭлементСтруктуры.ПользовательскиеНастройки.Элементы Цикл
|
||||
Если Элемент.ИдентификаторПользовательскойНастройки = ИдСуществующейПользовательскойНастройки Тогда
|
||||
Элемент.Использование = ПараметрыОтбора.Использование;
|
||||
Элемент.ВидСравнения = ?(ПараметрыОтбора.ВидСравнения = Неопределено, ВидСравненияКомпоновкиДанных.Равно,
|
||||
ПараметрыОтбора.ВидСравнения);
|
||||
Элемент.ПравоеЗначение = ПараметрыОтбора.Значение;
|
||||
Прервать;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если ЭлементОтбора = Неопределено Тогда
|
||||
|
||||
@@ -790,7 +790,7 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет, ограничения клиента для работы со сканером.
|
||||
// Проверяет ограничения клиента для работы со сканером.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. РаботаСФайламиСлужебныйКлиент.ДоступноСканирование
|
||||
@@ -799,7 +799,8 @@
|
||||
Возврат РаботаСФайламиСлужебныйКлиент.ДоступноСканирование();
|
||||
КонецФункции
|
||||
|
||||
// Проверяет установлена ли компонента сканирования и есть ли хоть один подключенный сканер.
|
||||
// Проверяет ограничения клиента для работы со сканером, установлена ли компонента сканирования и
|
||||
// есть ли хоть один подключенный сканер.
|
||||
//
|
||||
// Параметры:
|
||||
// ОповещениеРезультата - ОписаниеОповещения - процедура куда будет передан результат проверки:
|
||||
@@ -807,8 +808,14 @@
|
||||
// * ДополнительныеПараметры - Произвольный - значение, указанное при создании описания оповещения.
|
||||
//
|
||||
Процедура ДоступнаКомандаСканировать(ОповещениеРезультата) Экспорт
|
||||
|
||||
Если ДоступноСканирование() Тогда
|
||||
ОписаниеОповещения = Новый ОписаниеОповещения("ДоступнаКомандаСканироватьЗавершение", ЭтотОбъект, ОповещениеРезультата);
|
||||
РаботаСФайламиСлужебныйКлиент.ПроинициализироватьКомпоненту(ОписаниеОповещения);
|
||||
Иначе
|
||||
ВыполнитьОбработкуОповещения(ОповещениеРезультата, Ложь);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Получает настройки сканирования пользователя.
|
||||
|
||||
@@ -3222,7 +3222,7 @@
|
||||
// Структура:
|
||||
// * ЖурналРегистрации - ДвоичныеДанные - данные выгрузки журнала регистрации
|
||||
// * ТехническаяИнформацияОВерсияхПодсистемИРасширениях - Строка
|
||||
// * ИмяЛогФайла - Строка - имя логфайла, используемое компонентой сканирования
|
||||
// * ИмяЛогФайла - Строка - имя файла журнала, используемое компонентой сканирования
|
||||
//
|
||||
Функция ТехническаяИнформация() Экспорт
|
||||
|
||||
@@ -3254,8 +3254,13 @@
|
||||
Отбор = Новый Структура("Событие", СобытияОтбора);
|
||||
Отбор.Вставить("ДатаНачала", ТекущаяДатаСеанса() - 600);
|
||||
|
||||
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
Результат.Вставить("ЖурналРегистрации", ПолучитьИзВременногоХранилища(
|
||||
ЖурналРегистрации.ЖурналДляТехподдержки(Отбор, 200, Новый УникальныйИдентификатор)));
|
||||
УстановитьПривилегированныйРежим(Ложь);
|
||||
УстановитьОтключениеБезопасногоРежима(Ложь);
|
||||
|
||||
Результат.Вставить("ТехническаяИнформацияОВерсияхПодсистемИРасширениях",
|
||||
СтандартныеПодсистемыСервер.ТехническаяИнформацияОВерсияхПодсистемИРасширениях());
|
||||
Результат.Вставить("ИмяЛогФайла", ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекЗагрузить(
|
||||
@@ -3269,4 +3274,8 @@
|
||||
"ДатаНачалаЛогированияСканирования", ТекущаяДатаСеанса());
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ОчиститьРабочийКаталог(СсылкаПапки) Экспорт
|
||||
РаботаСФайламиСлужебный.ОчиститьРабочийКаталог(СсылкаПапки);
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -4652,12 +4652,55 @@
|
||||
ПолучитьФайлВерсииВЛокальныйКэшФайлов(ОбработчикРезультата, ДанныеФайла, ДанныеФайла.НаЧтение,
|
||||
ИдентификаторФормы, ДополнительныеПараметры);
|
||||
Иначе
|
||||
|
||||
Если Не РабочийКаталогДоступен(ДанныеФайла.РабочийКаталогВладельца, ДанныеФайла.Владелец) Тогда
|
||||
ПолучитьФайлВерсииВЛокальныйКэшФайлов(ОбработчикРезультата, ДанныеФайла, ДанныеФайла.НаЧтение,
|
||||
ИдентификаторФормы, ДополнительныеПараметры);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ПолучитьФайлВерсииВРабочийКаталогПапки(ОбработчикРезультата, ДанныеФайла, ПолноеИмяФайла, ДанныеФайла.НаЧтение,
|
||||
ИдентификаторФормы, ДополнительныеПараметры);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция РабочийКаталогДоступен(РабочийКаталогВладельца, Владелец)
|
||||
Результат = Ложь;
|
||||
// Создать каталог для файлов.
|
||||
Попытка
|
||||
// В случае если передан каталог, имя которого запрещено в текущей файловой системе,
|
||||
// исключение вызвано не будет, хотя каталог будет не доступен.
|
||||
СведенияОКаталоге = Новый Файл(РабочийКаталогВладельца);
|
||||
Если НЕ СведенияОКаталоге.Существует() Тогда
|
||||
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Каталог папки файлов %1 не существует.'"),
|
||||
Владелец);
|
||||
КонецЕсли;
|
||||
СоздатьКаталог(РабочийКаталогВладельца);
|
||||
ИмяКаталогаТестовое = РабочийКаталогВладельца + "ПроверкаДоступа\";
|
||||
СоздатьКаталог(ИмяКаталогаТестовое);
|
||||
УдалитьФайлы(ИмяКаталогаТестовое);
|
||||
Результат = Истина;
|
||||
Исключение
|
||||
// Нет прав на создание каталога, или такой путь отсутствует,
|
||||
// тогда установка настроек по умолчанию.
|
||||
СообщениеЖурналаРегистрации = НСтр("ru='Не найден рабочий каталог %1 для папки файлов %2 или нет права на запись. Восстановлены настройки по умолчанию.'");
|
||||
СообщениеЖурналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеЖурналаРегистрации,
|
||||
РабочийКаталогВладельца, Владелец);
|
||||
РабочийКаталогВладельца = "";
|
||||
|
||||
РаботаСФайламиСлужебныйВызовСервера.ОчиститьРабочийКаталог(Владелец);
|
||||
|
||||
ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(
|
||||
НСтр("ru='Работа с файлами'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка()),
|
||||
"Предупреждение",
|
||||
СообщениеЖурналаРегистрации,
|
||||
ОбщегоНазначенияКлиент.ДатаСеанса(),
|
||||
Истина);
|
||||
КонецПопытки;
|
||||
Возврат Результат;
|
||||
КонецФункции
|
||||
|
||||
// См. одноименную процедуру в общем модуле РаботаСФайламиКлиент.
|
||||
Процедура ПолучитьПрисоединенныйФайл(Оповещение, ПрисоединенныйФайл, ИдентификаторФормы, ДополнительныеПараметры = Неопределено) Экспорт
|
||||
|
||||
@@ -10625,15 +10668,9 @@
|
||||
// Возвращает устройства сканирования (массив строк).
|
||||
Функция ПолучитьУстройства(Форма, ПодключаемыйМодуль) Экспорт
|
||||
|
||||
Массив = Новый Массив;
|
||||
СтрокаУстройств = ПодключенныеУстройства(Форма, ПодключаемыйМодуль);
|
||||
Устройства = ПодключенныеУстройства(Форма, ПодключаемыйМодуль);
|
||||
|
||||
Для Индекс = 1 По СтрЧислоСтрок(СтрокаУстройств) Цикл
|
||||
Строка = СтрПолучитьСтроку(СтрокаУстройств, Индекс);
|
||||
Массив.Добавить(Строка);
|
||||
КонецЦикла;
|
||||
|
||||
Возврат Массив;
|
||||
Возврат Устройства;
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -10999,11 +11036,13 @@
|
||||
Функция ПодключенныеУстройства(Форма, ПодключаемыйМодуль)
|
||||
ЗаписатьЖурналСканирования("ПолучитьУстройства.Старт");
|
||||
Попытка
|
||||
ПодключенныеУстройства = ПодключаемыйМодуль.ПолучитьУстройства();
|
||||
Устройства = ПодключаемыйМодуль.ПолучитьУстройства();
|
||||
ПодключенныеУстройства = СтрРазделить(Устройства, Символы.ПС, Ложь);
|
||||
ЗаписатьЖурналСканирования("ПолучитьУстройства.Результат",
|
||||
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ПолучитьУстройства() = %1", ПодключенныеУстройства));
|
||||
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ПолучитьУстройства() = %1",
|
||||
СтрСоединить(ПодключенныеУстройства, "|")));
|
||||
Исключение
|
||||
ПодключенныеУстройства = "";
|
||||
ПодключенныеУстройства = Новый Массив;
|
||||
ПредставлениеОшибки = ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
ЗаписатьЖурналСканирования("ПолучитьУстройства", ПредставлениеОшибки, Истина);
|
||||
ПоказатьОшибкуСканирования(ПодключаемыйМодуль, Форма, НСтр("ru='Не удалось получить список устройств'"), ПредставлениеОшибки);
|
||||
@@ -11130,8 +11169,10 @@
|
||||
|
||||
Если ИспользоватьКаталогЖурналаСканирования И КаталогЖурналаСканирования <> Неопределено Тогда
|
||||
ВыполнитьОбработкуОповещения(ОповещениеПослеСозданияВременногоКаталогаДляПодключенияЛогФайлов, КаталогЖурналаСканирования);
|
||||
Иначе
|
||||
ИначеЕсли Перезапуск И Не ЗначениеЗаполнено(ИмяЛогФайла) Тогда
|
||||
ФайловаяСистемаКлиент.СоздатьВременныйКаталог(ОповещениеПослеСозданияВременногоКаталогаДляПодключенияЛогФайлов);
|
||||
Иначе
|
||||
УстановитьИмяЛогФайла(ПодключаемыйМодуль, ИмяЛогФайла);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -716,7 +716,7 @@
|
||||
ПараметрыДоставки = РассылкаОтчетовКлиентСервер.ПараметрыДоставки();
|
||||
ПараметрыДоставки.ДатаВыполнения = ТекущаяДатаСеанса();
|
||||
ПараметрыДоставки.Автор = Пользователи.ТекущийПользователь();
|
||||
ПараметрыДоставки.КаталогВременныхФайлов = ФайловаяСистема.ОбщийКаталогВременныхФайлов("RP" + Новый УникальныйИдентификатор);
|
||||
ПараметрыДоставки.КаталогВременныхФайлов = ФайловаяСистема.ОбщийКаталогВременныхФайлов("RP" + НомерСеансаИнформационнойБазы()) + ПолучитьРазделительПутиСервера();
|
||||
ПараметрыДоставки.ПараметрыПисьма.Важность = ВажностьИнтернетПочтовогоСообщения.Обычная;
|
||||
|
||||
Если ПолучитьФункциональнуюОпцию("ХранитьИсториюРассылкиОтчетов") Тогда
|
||||
@@ -2765,7 +2765,7 @@
|
||||
СтрокаФайл.Настройки.ИмяФайла = ВременныйФайл.Имя;
|
||||
СтрокаФайл.Настройки.ПолноеИмяФайла = ВременныйФайл.ПолноеИмя;
|
||||
СтрокаФайл.Настройки.ИмяКаталога = ВременныйФайл.ИмяБезРасширения + "_files";
|
||||
СтрокаФайл.Настройки.ПолноеИмяКаталога = ВременныйФайл.Путь + СтрокаФайл.Настройки.ИмяКаталога + "\";
|
||||
СтрокаФайл.Настройки.ПолноеИмяКаталога = ВременныйФайл.Путь + СтрокаФайл.Настройки.ИмяКаталога + ПолучитьРазделительПутиСервера();
|
||||
|
||||
КаталогФайла = Новый Файл(СтрокаФайл.Настройки.ПолноеИмяКаталога);
|
||||
|
||||
@@ -4731,9 +4731,12 @@
|
||||
Если ВыполнитьВНесколькоПотоков Тогда
|
||||
Возврат ВыполнитьФормированиеОтчетовВНесколькоПотоков(Отчеты, ПараметрыДоставки, НаименованиеРассылки, ПараметрыЖурнала);
|
||||
Иначе
|
||||
Если Не ОбщегоНазначения.ИнформационнаяБазаФайловая() И Не ОбщегоНазначения.РазделениеВключено() Тогда
|
||||
ЗаписьЖурнала(ПараметрыЖурнала, УровеньЖурналаРегистрации.Предупреждение, НСтр(
|
||||
ЗаписатьВЖурнал = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("РассылкиОтчетов",
|
||||
"ЗаписыватьВЖурналПодсказкуУскоренияРассылкиОтчетов", Истина);
|
||||
Если Не ОбщегоНазначения.ИнформационнаяБазаФайловая() И Не ОбщегоНазначения.РазделениеВключено() И ЗаписатьВЖурнал Тогда
|
||||
ЗаписьЖурнала(ПараметрыЖурнала, УровеньЖурналаРегистрации.Информация, НСтр(
|
||||
"ru = 'Рассылки отчетов могут работать быстрее. Для рассылки отчетов в несколько потоков необходимо указать каталог временных файлов кластера серверов 1С:Предприятие.'"));
|
||||
ОбщегоНазначения.ХранилищеОбщихНастроекСохранить("РассылкиОтчетов", "ЗаписыватьВЖурналПодсказкуУскоренияРассылкиОтчетов", Ложь);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат ВыполнитьФормированиеОтчетовВОдномПотоке(Отчеты, ПараметрыДоставки, НаименованиеРассылки, ПараметрыЖурнала);
|
||||
|
||||
@@ -3897,8 +3897,8 @@
|
||||
// * ТипЗначений - Тип
|
||||
// * ТипГруппЗначений - Тип
|
||||
// * НесколькоГруппЗначений - Булево
|
||||
// * ДополнительныеТипы - Массив из см. ДополнительныйТипВидаДоступа
|
||||
// * ТипыВыбираемыхЗначений - Массив из Тип
|
||||
// * ДополнительныеТипы - ФиксированныйМассив из см. ДополнительныйТипВидаДоступа
|
||||
// * ТипыВыбираемыхЗначений - ФиксированныйМассив из Тип
|
||||
// Неопределено
|
||||
//
|
||||
Функция СвойстваВидаДоступа(ВидДоступа) Экспорт
|
||||
@@ -7981,7 +7981,6 @@
|
||||
|
||||
ИмяПараметра = "СтандартныеПодсистемы.УправлениеДоступом.СвойстваВидовДоступа";
|
||||
СтароеЗначение = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ИмяПараметра, Истина);
|
||||
|
||||
СтароеЗначение = НовыеХешСуммыСвойствВидовДоступа(СтароеЗначение);
|
||||
|
||||
Если СтароеЗначение.ХешСумма <> НовоеЗначение.ХешСумма Тогда
|
||||
@@ -8024,22 +8023,26 @@
|
||||
//
|
||||
// Смотри также УправлениеДоступомПереопределяемый.ПриЗаполненииВидовДоступа.
|
||||
//
|
||||
// Параметры:
|
||||
// ХешСуммы - см. НовыеХешСуммыСвойствВидовДоступа
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. СвойстваВидовДоступа
|
||||
//
|
||||
Функция ПроверенныеСвойстваВидовДоступаСеанса() Экспорт
|
||||
Функция ПроверенныеСвойстваВидовДоступаСеанса(ХешСуммы) Экспорт
|
||||
|
||||
ВидыДоступа = ЗаполненныеВидыДоступаСеанса();
|
||||
|
||||
// Проверки:
|
||||
// 1. Проверки:
|
||||
// - тип значений доступа не указан для 2-х видов доступа
|
||||
// - тип значений доступа Пользователи, ГруппыПользователей используется только для вида доступа Пользователи.
|
||||
// Т тип значений доступа ВнешниеПользователи, ГруппыВнешнихПользователей используется только для вида доступа
|
||||
// ВнешниеПользователи.
|
||||
// И имена видов доступа Объект, Условие, НастройкиПрав, ПравоЧтения, ПравоИзменения не указаны.
|
||||
// Т тип групп значений не совпадает с типом значений.
|
||||
|
||||
//
|
||||
// 2. Подготовка различных коллекций свойств видов доступа, используемых при работе программы.
|
||||
|
||||
МассивСвойств = Новый Массив; // Массив из см. СвойстваВидаДоступа
|
||||
ПоСсылкам = Новый Соответствие;
|
||||
ПоИменам = Новый Соответствие;
|
||||
@@ -8069,6 +8072,10 @@
|
||||
|
||||
ВсеТипыЗначений = Новый Соответствие;
|
||||
ВсеТипыГруппЗначений = Новый Соответствие;
|
||||
ВсеСвойства = Новый Соответствие;
|
||||
|
||||
ОписаниеВерсии = Новый Структура("СвойстваВерсии", Новый Массив);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "Версия", "1");
|
||||
|
||||
Для Каждого ВидДоступа Из ВидыДоступа Цикл
|
||||
Если ВсеИменаВидовДоступа[ВРег(ВидДоступа.Имя)] <> Неопределено Тогда
|
||||
@@ -8085,9 +8092,9 @@
|
||||
ПроверитьТип(ВидДоступа, ВидДоступа.ТипЗначений, ВсеТипыГруппЗначений, Параметры, , Истина);
|
||||
ПроверитьТип(ВидДоступа, ВидДоступа.ТипГруппЗначений, ВсеТипыЗначений, Параметры, Истина, Истина);
|
||||
|
||||
ДополнительныеТипы = ВидДоступа.ДополнительныеТипы; // См. НоваяТаблицаДополнительныеТипыВидаДоступа
|
||||
ТаблицаДополнительныеТипы = ВидДоступа.ДополнительныеТипы; // См. НоваяТаблицаДополнительныеТипыВидаДоступа
|
||||
|
||||
Для Каждого Строка Из ДополнительныеТипы Цикл
|
||||
Для Каждого Строка Из ТаблицаДополнительныеТипы Цикл
|
||||
// Проверка повторения типов значений и групп.
|
||||
ПроверитьТип(ВидДоступа, Строка.ТипЗначений, ВсеТипыЗначений, Параметры);
|
||||
ПроверитьТип(ВидДоступа, Строка.ТипГруппЗначений, ВсеТипыГруппЗначений, Параметры, Истина);
|
||||
@@ -8100,6 +8107,26 @@
|
||||
Метаданные.НайтиПоТипу(ВидДоступа.ТипЗначений).ПолноеИмя()).ПустаяСсылка();
|
||||
|
||||
Свойства = НовыеСвойстваВидаДоступа(ВидДоступа, ПустаяСсылкаТипаЗначений);
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить("");
|
||||
ДобавитьСвойстваВерсии(ОписаниеВерсии, Свойства,
|
||||
"Имя, ТипЗначений, ТипГруппЗначений, НесколькоГруппЗначений");
|
||||
|
||||
ТипыВыбираемыхЗначений = Новый Массив;
|
||||
ЗаполнитьЗначенияДоступаСГруппами(Свойства, ЗначенияДоступаСГруппами, Свойства, ТипыВыбираемыхЗначений);
|
||||
ДополнительныеТипы = Новый Массив;
|
||||
Для Каждого Строка Из ТаблицаДополнительныеТипы Цикл
|
||||
ДополнительныйТип = ДополнительныйТипВидаДоступа(Строка);
|
||||
ДополнительныеТипы.Добавить(ДополнительныйТип);
|
||||
ДобавитьСвойстваВерсии(ОписаниеВерсии, Свойства,
|
||||
"ТипЗначений, ТипГруппЗначений, НесколькоГруппЗначений");
|
||||
ЗаполнитьЗначенияДоступаСГруппами(Строка, ЗначенияДоступаСГруппами, Свойства, ТипыВыбираемыхЗначений);
|
||||
КонецЦикла;
|
||||
|
||||
Свойства.ТипыВыбираемыхЗначений = Новый ФиксированныйМассив(ТипыВыбираемыхЗначений);
|
||||
Свойства.ДополнительныеТипы = Новый ФиксированныйМассив(ДополнительныеТипы);
|
||||
ВсеСвойства.Вставить(Свойства, Новый ФиксированнаяСтруктура(Свойства));
|
||||
Свойства = ВсеСвойства.Получить(Свойства);
|
||||
|
||||
МассивСвойств.Добавить(Свойства);
|
||||
ПоИменам.Вставить(Свойства.Имя, Свойства);
|
||||
ПоСсылкам.Вставить(ПустаяСсылкаТипаЗначений, Свойства);
|
||||
@@ -8108,16 +8135,13 @@
|
||||
Если Свойства.ТипГруппЗначений <> Тип("Неопределено") Тогда
|
||||
ПоТипамГруппИЗначений.Вставить(Свойства.ТипГруппЗначений, Свойства);
|
||||
КонецЕсли;
|
||||
ЗаполнитьЗначенияДоступаСГруппами(Свойства, ЗначенияДоступаСГруппами, Свойства, Параметры);
|
||||
|
||||
Для Каждого Строка Из ВидДоступа.ДополнительныеТипы Цикл
|
||||
Свойства.ДополнительныеТипы.Добавить(ДополнительныйТипВидаДоступа(Строка));
|
||||
ПоТипамЗначений.Вставить(Строка.ТипЗначений, Свойства);
|
||||
ПоТипамГруппИЗначений.Вставить(Строка.ТипЗначений, Свойства);
|
||||
Если Строка.ТипГруппЗначений <> Тип("Неопределено") Тогда
|
||||
ПоТипамГруппИЗначений.Вставить(Строка.ТипГруппЗначений, Свойства);
|
||||
КонецЕсли;
|
||||
ЗаполнитьЗначенияДоступаСГруппами(Строка, ЗначенияДоступаСГруппами, Свойства, Параметры);
|
||||
КонецЦикла;
|
||||
|
||||
КонецЦикла;
|
||||
@@ -8164,7 +8188,8 @@
|
||||
|
||||
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипСсылка);
|
||||
Если ОбъектМетаданных <> Неопределено
|
||||
И (ОбщегоНазначения.ЭтоСправочник(ОбъектМетаданных) Или ОбщегоНазначения.ЭтоПланВидовХарактеристик(ОбъектМетаданных))
|
||||
И (ОбщегоНазначения.ЭтоСправочник(ОбъектМетаданных)
|
||||
Или ОбщегоНазначения.ЭтоПланВидовХарактеристик(ОбъектМетаданных))
|
||||
И ОбъектМетаданных.Иерархический Тогда
|
||||
|
||||
ТипОбъект = СтандартныеПодсистемыСервер.ТипОбъектаИлиНабораЗаписейОбъектаМетаданных(ОбъектМетаданных);
|
||||
@@ -8184,21 +8209,69 @@
|
||||
БезГруппДляЗначенияДоступа.Добавить(СвойстваВидаДоступа.Имя);
|
||||
КонецЦикла;
|
||||
|
||||
СвойстваВидовДоступа = Новый Структура;
|
||||
СвойстваВидовДоступа.Вставить("Массив", МассивСвойств);
|
||||
СвойстваВидовДоступа.Вставить("ПоИменам", ПоИменам);
|
||||
СвойстваВидовДоступа.Вставить("ПоСсылкам", ПоСсылкам);
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамЗначений", ПоТипамЗначений);
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамЗначенийСИерархией", ПоТипамЗначенийСИерархией);
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамГруппИЗначений", ПоТипамГруппИЗначений);
|
||||
СвойстваВидовДоступа.Вставить("ЗначенияДоступаСГруппами", ЗначенияДоступаСГруппами);
|
||||
СвойстваВидовДоступа.Вставить("БезГруппДляЗначенияДоступа", БезГруппДляЗначенияДоступа);
|
||||
СвойстваВидовДоступа.Вставить("СОднойГруппойДляЗначенияДоступа", СОднойГруппойДляЗначенияДоступа);
|
||||
СвойстваВидовДоступа.Вставить("ТипыЗначенийДоступаСГруппами", ТипыЗначенийДоступаСГруппами);
|
||||
|
||||
ПроверитьТипыПодпискиОбновитьГруппыЗначенийДоступа(ЗначенияДоступаСГруппами);
|
||||
|
||||
Возврат ОбщегоНазначения.ФиксированныеДанные(СвойстваВидовДоступа);
|
||||
// Окончательная фиксация данных.
|
||||
|
||||
ЗначенияДоступаСГруппами.ИменаТаблицДляОбновления =
|
||||
Новый ФиксированныйМассив(ЗначенияДоступаСГруппами.ИменаТаблицДляОбновления);
|
||||
|
||||
ЗначенияДоступаСГруппами.ТипыГруппЗначенийДляОбновления =
|
||||
Новый ФиксированноеСоответствие(ЗначенияДоступаСГруппами.ТипыГруппЗначенийДляОбновления);
|
||||
|
||||
Для Каждого ОписаниеСвойства Из ЗначенияДоступаСГруппами Цикл
|
||||
ТекущееСоответствие = ОписаниеСвойства.Значение;
|
||||
Если ТипЗнч(ТекущееСоответствие) <> Тип("Соответствие") Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
Для Каждого КлючИЗначение Из ТекущееСоответствие Цикл
|
||||
ТекущееСоответствие.Вставить(КлючИЗначение.Ключ,
|
||||
ВсеСвойства.Получить(КлючИЗначение.Значение));
|
||||
КонецЦикла;
|
||||
ЗначенияДоступаСГруппами[ОписаниеСвойства.Ключ] =
|
||||
Новый ФиксированноеСоответствие(ТекущееСоответствие);
|
||||
КонецЦикла;
|
||||
|
||||
СвойстваВидовДоступа = Новый Структура;
|
||||
СвойстваВидовДоступа.Вставить("Массив",
|
||||
Новый ФиксированныйМассив(МассивСвойств));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ПоИменам",
|
||||
Новый ФиксированноеСоответствие(ПоИменам));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ПоСсылкам",
|
||||
Новый ФиксированноеСоответствие(ПоСсылкам));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамЗначений",
|
||||
Новый ФиксированноеСоответствие(ПоТипамЗначений));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамЗначенийСИерархией",
|
||||
Новый ФиксированноеСоответствие(ПоТипамЗначенийСИерархией));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ПоТипамГруппИЗначений",
|
||||
Новый ФиксированноеСоответствие(ПоТипамГруппИЗначений));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ЗначенияДоступаСГруппами",
|
||||
Новый ФиксированнаяСтруктура(ЗначенияДоступаСГруппами));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("БезГруппДляЗначенияДоступа",
|
||||
Новый ФиксированныйМассив(БезГруппДляЗначенияДоступа));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("СОднойГруппойДляЗначенияДоступа",
|
||||
Новый ФиксированныйМассив(СОднойГруппойДляЗначенияДоступа));
|
||||
|
||||
СвойстваВидовДоступа.Вставить("ТипыЗначенийДоступаСГруппами",
|
||||
Новый ФиксированноеСоответствие(ТипыЗначенийДоступаСГруппами));
|
||||
|
||||
Результат = Новый ФиксированнаяСтруктура(СвойстваВидовДоступа);
|
||||
|
||||
ХешСуммы.ХешСуммаТиповГруппИЗначенийДоступа =
|
||||
ХешСуммаТиповГруппИЗначенийДоступа(СвойстваВидовДоступа);
|
||||
|
||||
СтрокаВерсии = СтрСоединить(ОписаниеВерсии.СвойстваВерсии, Символы.ПС);
|
||||
ХешСуммы.ХешСумма = ХешСуммаДанных(СтрокаВерсии);
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -8215,8 +8288,8 @@
|
||||
Свойства.Вставить("ТипЗначений", ВидДоступа.ТипЗначений);
|
||||
Свойства.Вставить("ТипГруппЗначений", ВидДоступа.ТипГруппЗначений);
|
||||
Свойства.Вставить("НесколькоГруппЗначений", ВидДоступа.НесколькоГруппЗначений);
|
||||
Свойства.Вставить("ДополнительныеТипы", Новый Массив);
|
||||
Свойства.Вставить("ТипыВыбираемыхЗначений", Новый Массив);
|
||||
Свойства.Вставить("ДополнительныеТипы");
|
||||
Свойства.Вставить("ТипыВыбираемыхЗначений");
|
||||
|
||||
Возврат Свойства;
|
||||
|
||||
@@ -8226,17 +8299,17 @@
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// * ПоТипам - Соответствие из КлючИЗначение:
|
||||
// * ПоТипам - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Тип
|
||||
// ** Значение - см. СвойстваВидаДоступа
|
||||
// * ПоТипамСсылок - Соответствие из КлючИЗначение:
|
||||
// * ПоТипамСсылок - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Тип
|
||||
// ** Значение - см. СвойстваВидаДоступа
|
||||
// * ИменаТаблицДляОбновления - Массив из Строка
|
||||
// * ТипыГруппЗначенийДляОбновления - Соответствие из КлючИЗначение:
|
||||
// * ИменаТаблицДляОбновления - ФиксированныйМассив из Строка
|
||||
// * ТипыГруппЗначенийДляОбновления - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Тип
|
||||
// ** Значение - СправочникСсылка
|
||||
// * ПоТипамСсылокДляОбновления - Соответствие из КлючИЗначение:
|
||||
// * ПоТипамСсылокДляОбновления - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Тип
|
||||
// ** Значение - см. СвойстваВидаДоступа
|
||||
//
|
||||
@@ -8257,7 +8330,7 @@
|
||||
// Для функции СвойстваВидовДоступа.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// ФиксированнаяСтруктура:
|
||||
// * ТипЗначений - Тип
|
||||
// * ТипГруппЗначений - Тип
|
||||
// * НесколькоГруппЗначений - Булево
|
||||
@@ -8269,22 +8342,22 @@
|
||||
Элемент.Вставить("ТипГруппЗначений", Строка.ТипГруппЗначений);
|
||||
Элемент.Вставить("НесколькоГруппЗначений", Строка.НесколькоГруппЗначений);
|
||||
|
||||
Возврат Элемент;
|
||||
Возврат Новый ФиксированнаяСтруктура(Элемент);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Для функции СвойстваВидовДоступа.
|
||||
Процедура ЗаполнитьЗначенияДоступаСГруппами(Строка, ЗначенияДоступаСГруппами, Свойства, Параметры)
|
||||
Процедура ЗаполнитьЗначенияДоступаСГруппами(Строка, ЗначенияДоступаСГруппами, Свойства, ТипыВыбираемыхЗначений)
|
||||
|
||||
Если Свойства.Имя = "Пользователи" Тогда
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Тип("СправочникСсылка.Пользователи"));
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ГруппыПользователей"));
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Тип("СправочникСсылка.Пользователи"));
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ГруппыПользователей"));
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Свойства.Имя = "ВнешниеПользователи" Тогда
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ВнешниеПользователи"));
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ГруппыВнешнихПользователей"));
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ВнешниеПользователи"));
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Тип("СправочникСсылка.ГруппыВнешнихПользователей"));
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -8301,12 +8374,12 @@
|
||||
Если Строка.ТипГруппЗначений = Тип("Неопределено") Тогда
|
||||
ДобавитьТипыПодпискиОбновитьГруппыЗначенийДоступа(ТипСсылки,
|
||||
ТипОбъекта, МетаданныеТипаЗначений, ЗначенияДоступаСГруппами, Свойства, Неопределено);
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Строка.ТипЗначений);
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Строка.ТипЗначений);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Строка.ТипГруппЗначений <> Тип("Неопределено") Тогда
|
||||
ДобавитьВМассив(Свойства.ТипыВыбираемыхЗначений, Строка.ТипГруппЗначений);
|
||||
ДобавитьВМассив(ТипыВыбираемыхЗначений, Строка.ТипГруппЗначений);
|
||||
КонецЕсли;
|
||||
|
||||
ЗначенияДоступаСГруппами.ПоТипам.Вставить(ТипСсылки, Свойства);
|
||||
@@ -8515,14 +8588,20 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Для функций ХешСуммыСвойствВидовДоступа, СвойстваВидовДоступа и процедур
|
||||
// ОбновитьОписаниеСвойствВидовДоступа,
|
||||
// Для функций УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса,
|
||||
// СвойстваВидовДоступа и процедур ОбновитьОписаниеСвойствВидовДоступа,
|
||||
// ОбновитьГруппыИНаборыЗначенийДоступаПриИзмененииТиповГруппИЗначений.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. ХешСуммыСвойствВидовДоступа
|
||||
// Параметры:
|
||||
// Значение - Неопределено
|
||||
// - ФиксированнаяСтруктура
|
||||
//
|
||||
Функция НовыеХешСуммыСвойствВидовДоступа(Значение = Неопределено)
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// * ХешСумма - Строка
|
||||
// * ХешСуммаТиповГруппИЗначенийДоступа - Строка
|
||||
//
|
||||
Функция НовыеХешСуммыСвойствВидовДоступа(Значение = Неопределено) Экспорт
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ХешСумма", "");
|
||||
@@ -8536,28 +8615,7 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Для функции УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса.
|
||||
//
|
||||
// Параметры:
|
||||
// СвойстваВидовДоступа - см. СвойстваВидовДоступа
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// * ХешСумма - Строка
|
||||
// * ХешСуммаТиповГруппИЗначенийДоступа - Строка
|
||||
//
|
||||
Функция ХешСуммыСвойствВидовДоступа(СвойстваВидовДоступа) Экспорт
|
||||
|
||||
Результат = НовыеХешСуммыСвойствВидовДоступа();
|
||||
Результат.ХешСумма = ХешСуммаДанных(СвойстваВидовДоступа);
|
||||
Результат.ХешСуммаТиповГруппИЗначенийДоступа =
|
||||
ХешСуммаТиповГруппИЗначенийДоступа(СвойстваВидовДоступа);
|
||||
|
||||
Возврат Новый ФиксированнаяСтруктура(Результат);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Для процедуры ХешСуммыСвойствВидовДоступа.
|
||||
// Для процедуры ПроверенныеСвойстваВидовДоступаСеанса.
|
||||
Функция ХешСуммаТиповГруппИЗначенийДоступа(СвойстваВидовДоступа)
|
||||
|
||||
Данные = Новый Массив;
|
||||
@@ -9114,7 +9172,11 @@
|
||||
// ** Ключ - Строка
|
||||
// ** Значение - см. Справочники.ПрофилиГруппДоступа.СвойстваПоставляемогоПрофиля
|
||||
// * ОписанияПрофилейМассив - ФиксированныйМассив из см. Справочники.ПрофилиГруппДоступа.СвойстваПоставляемогоПрофиля
|
||||
// * ПапкиПоРодителям - ФиксированноеСоответствие
|
||||
// * ПапкиПоРодителям - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Строка
|
||||
// ** Значение - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// *** Ключ - Строка
|
||||
// *** Значение - Булево
|
||||
// * ПараметрыОбновления - ФиксированнаяСтруктура:
|
||||
// ** ОбновлятьИзмененныеПрофили - Булево
|
||||
// ** ЗапретитьИзменениеПрофилей - Булево
|
||||
@@ -9142,7 +9204,6 @@
|
||||
// * ДополнительныеРолиАдминистратора - ФиксированноеСоответствие из КлючИЗначение:
|
||||
// ** Ключ - Строка - имя ролей расширений, которые можно назначить администратору.
|
||||
// ** Значение - Булево - Истина.
|
||||
// * ХешСумма - Строка
|
||||
//
|
||||
Функция СтандартныеРолиРасширений() Экспорт
|
||||
|
||||
@@ -29134,7 +29195,7 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Для процедуры УдалитьПоляНеиспользуемыхВидовДоступа и функции ГруппыДополнительныхТаблиц.
|
||||
Процедура ДобавитьСвойстваВерсии(Контекст, Структура, ИменаПолей = "")
|
||||
Процедура ДобавитьСвойстваВерсии(Контекст, Структура, ИменаПолей = "") Экспорт
|
||||
|
||||
Если ЗначениеЗаполнено(ИменаПолей) Тогда
|
||||
СохраняемаяСтруктура = Новый Структура(ИменаПолей);
|
||||
@@ -29163,7 +29224,7 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Для процедур ДобавитьСвойстваВерсии, ДобавитьСвойствоВерсии.
|
||||
Процедура ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение)
|
||||
Процедура ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение) Экспорт
|
||||
|
||||
Если ТипЗнч(Значение) = Тип("Строка") Тогда
|
||||
Контекст.СвойстваВерсии.Добавить(ИмяПоля + " = " + Значение);
|
||||
@@ -29184,6 +29245,7 @@
|
||||
Контекст.СвойстваВерсии.Добавить(ИмяПоля + " = " + СтрокаДанныхДляХеширования(Новый Массив(Значение)));
|
||||
|
||||
ИначеЕсли ТипЗнч(Значение) = Тип("ОписаниеТипов")
|
||||
Или ТипЗнч(Значение) = Тип("Тип")
|
||||
Или ТипЗнч(Значение) = Тип("Массив") Тогда
|
||||
|
||||
Контекст.СвойстваВерсии.Добавить(ИмяПоля + " = " + СтрокаДанныхДляХеширования(Значение));
|
||||
|
||||
@@ -31,18 +31,18 @@
|
||||
// Возвращаемое значение:
|
||||
// ФиксированнаяСтруктура:
|
||||
// * СвойстваСеанса - см. УправлениеДоступомСлужебный.СвойстваВидовДоступа
|
||||
// * ХешСуммы - см. УправлениеДоступомСлужебный.ХешСуммыСвойствВидовДоступа
|
||||
// * ХешСуммы - см. УправлениеДоступомСлужебный.НовыеХешСуммыСвойствВидовДоступа
|
||||
// * Проверка - Структура:
|
||||
// ** Дата - Дата
|
||||
//
|
||||
Функция ОписаниеСвойствВидовДоступаСеанса() Экспорт
|
||||
|
||||
СвойстваСеанса = УправлениеДоступомСлужебный.ПроверенныеСвойстваВидовДоступаСеанса();
|
||||
ХешСуммы = УправлениеДоступомСлужебный.ХешСуммыСвойствВидовДоступа(СвойстваСеанса);
|
||||
ХешСуммы = УправлениеДоступомСлужебный.НовыеХешСуммыСвойствВидовДоступа();
|
||||
СвойстваСеанса = УправлениеДоступомСлужебный.ПроверенныеСвойстваВидовДоступаСеанса(ХешСуммы);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("СвойстваСеанса", СвойстваСеанса);
|
||||
Результат.Вставить("ХешСуммы", ХешСуммы);
|
||||
Результат.Вставить("ХешСуммы", Новый ФиксированнаяСтруктура(ХешСуммы));
|
||||
Результат.Вставить("Проверка", Новый Структура("Дата", '00010101'));
|
||||
|
||||
Возврат Новый ФиксированнаяСтруктура(Результат);
|
||||
@@ -67,8 +67,8 @@
|
||||
//
|
||||
Функция ОписаниеВозможныхПравСеансаДляНастройкиПравОбъектов() Экспорт
|
||||
|
||||
ВозможныеПраваСеанса = РегистрыСведений.НастройкиПравОбъектов.ПроверенныеВозможныеПраваСеанса();
|
||||
ХешСумма = РегистрыСведений.НастройкиПравОбъектов.ХешСуммаВозможныхПрав(ВозможныеПраваСеанса);
|
||||
ХешСумма = "";
|
||||
ВозможныеПраваСеанса = РегистрыСведений.НастройкиПравОбъектов.ПроверенныеВозможныеПраваСеанса(, ХешСумма);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ВозможныеПраваСеанса", ВозможныеПраваСеанса);
|
||||
@@ -97,8 +97,8 @@
|
||||
//
|
||||
Функция ОписаниеПоставляемыхПрофилейСеанса() Экспорт
|
||||
|
||||
ПоставляемыеПрофилиСеанса = Справочники.ПрофилиГруппДоступа.ПроверенныеПоставляемыеПрофилиСеанса();
|
||||
ХешСумма = Справочники.ПрофилиГруппДоступа.ХешСуммаПоставляемыхПрофилей(ПоставляемыеПрофилиСеанса);
|
||||
ХешСумма = "";
|
||||
ПоставляемыеПрофилиСеанса = Справочники.ПрофилиГруппДоступа.ПроверенныеПоставляемыеПрофилиСеанса(, ХешСумма);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ПоставляемыеПрофилиСеанса", ПоставляемыеПрофилиСеанса);
|
||||
@@ -120,8 +120,8 @@
|
||||
//
|
||||
Функция ОписаниеСтандартныхРолейРасширенийСеанса() Экспорт
|
||||
|
||||
РолиСеанса = Справочники.ПрофилиГруппДоступа.ПодготовленныеСтандартныеРолиРасширенийСеанса();
|
||||
ХешСумма = Справочники.ПрофилиГруппДоступа.ХешСуммаСтандартныхРолейРасширений(РолиСеанса);
|
||||
ХешСумма = "";
|
||||
РолиСеанса = Справочники.ПрофилиГруппДоступа.ПодготовленныеСтандартныеРолиРасширенийСеанса(ХешСумма);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("РолиСеанса", РолиСеанса);
|
||||
@@ -155,9 +155,7 @@
|
||||
КонецЦикла;
|
||||
Список.СортироватьПоЗначению();
|
||||
|
||||
Хеширование = Новый ХешированиеДанных(ХешФункция.SHA256);
|
||||
Хеширование.Добавить(ЗначениеВСтрокуВнутр(Список.ВыгрузитьЗначения()));
|
||||
ХешСумма = Base64Строка(Хеширование.ХешСумма);
|
||||
ХешСумма = УправлениеДоступомСлужебный.ХешСуммаДанных(Список.ВыгрузитьЗначения());
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("ХешСумма", ХешСумма);
|
||||
|
||||
@@ -1966,6 +1966,9 @@
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
СозданныйЭлемент = ?(Не СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация,
|
||||
СозданныеЭлементы.Получить(СтрокаКИ.Вид), Неопределено);
|
||||
|
||||
СозданныйЭлемент = СозданныеЭлементы.Получить(СтрокаКИ.Вид);
|
||||
Если СозданныйЭлемент <> Неопределено Тогда
|
||||
СозданныйЭлемент = СтрокаКИ.Вид;
|
||||
@@ -4779,8 +4782,10 @@
|
||||
Если Форма.Элементы.Найти(СтрокаКИ.ИмяРеквизита) <> Неопределено Тогда
|
||||
ПолеВвода = Форма.Элементы[СтрокаКИ.ИмяРеквизита];
|
||||
ПолеВвода.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
|
||||
Если ПолеВвода.Вид = ВидПоляФормы.ПолеВвода Тогда
|
||||
ПолеВвода.МногострочныйРежим = Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОтображатьИконки Тогда
|
||||
ГруппаСтрокиЗаголовок = Группа("ГруппаЗаголовок" + СтрокаКИ.ИмяРеквизита, Форма, ГруппаСтроки.Заголовок, ИмяЭлементаДляРазмещения, "ГруппаЗначенияКИ"+ИмяЭлементаДляРазмещения, 6);
|
||||
|
||||
@@ -536,6 +536,7 @@
|
||||
Результат.Колонки.Добавить("Отключена", Новый ОписаниеТипов("Булево"));
|
||||
Результат.Колонки.Добавить("ИмяКомандыНаФорме", Новый ОписаниеТипов("Строка"));
|
||||
Результат.Колонки.Добавить("УсловияВидимостиПоТипамОбъектов", Новый ОписаниеТипов("Соответствие"));
|
||||
Результат.Колонки.Добавить("ВыполнятьВФоновомЗадании");
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
@@ -2118,7 +2119,7 @@
|
||||
|
||||
КлючиПараметровОбработчика = "Обработчик, МенеджерПечати, ЗаголовокФормы, СразуНаПринтер, ФорматСохранения,
|
||||
|ПереопределитьПользовательскиеНастройкиКоличества, ДополнитьКомплектВнешнимиПечатнымиФормами,
|
||||
|ФиксированныйКомплект, ДополнительныеПараметры";
|
||||
|ФиксированныйКомплект, ДополнительныеПараметры, ВыполнятьВФоновомЗадании";
|
||||
Для Каждого КомандаПечати Из КомандыПечати Цикл
|
||||
Если КомандаПечати.Отключена Тогда
|
||||
Продолжить;
|
||||
@@ -3813,6 +3814,10 @@
|
||||
Если ЗначениеЗаполнено(ТипОбъекта) И ЗначениеЗаполнено(КомандаПечати.УсловияВидимости) Тогда
|
||||
КомандаПечати.УсловияВидимостиПоТипамОбъектов.Вставить(ТипОбъекта, КомандаПечати.УсловияВидимости);
|
||||
КонецЕсли;
|
||||
Если КомандаПечати.ВыполнятьВФоновомЗадании = Неопределено Тогда
|
||||
КомандаПечати.ВыполнятьВФоновомЗадании = НРег(КомандаПечати.МенеджерПечати) = НРег("УправлениеПечатью")
|
||||
И Не ОбщегоНазначения.ИнформационнаяБазаФайловая();
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
КомандыПечати.Сортировать("Порядок Возр, Представление Возр");
|
||||
|
||||
@@ -33,23 +33,15 @@
|
||||
ПараметрыОткрытия.ПараметрКоманды = МассивОбъектов;
|
||||
ПараметрыОткрытия.ПараметрыПечати = ПараметрыПечати;
|
||||
|
||||
Если ОбщегоНазначенияКлиент.ИнформационнаяБазаФайловая() Тогда
|
||||
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, Строка(Новый УникальныйИдентификатор));
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
Если ТипЗнч(ПараметрыПечати) = Тип("Структура")
|
||||
И ПараметрыПечати.Свойство("ВыполнятьВФоновомЗадании")
|
||||
И ПараметрыПечати.ВыполнятьВФоновомЗадании = Истина Тогда
|
||||
|
||||
Если ВладелецФормы = Неопределено Тогда
|
||||
ПараметрыОткрытия.УникальныйИдентификаторХранилища = Новый УникальныйИдентификатор;
|
||||
ВыполнитьКомандуПечатиВФоне(ВладелецФормы, ПараметрыОткрытия);
|
||||
Иначе
|
||||
ПараметрыОткрытия.УникальныйИдентификаторХранилища = ВладелецФормы.УникальныйИдентификатор;
|
||||
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, Строка(Новый УникальныйИдентификатор));
|
||||
КонецЕсли;
|
||||
|
||||
ДлительнаяОперация = УправлениеПечатьюВызовСервера.НачатьФормированиеПечатныхФорм(ПараметрыОткрытия);
|
||||
ПараметрыОткрытия.ВладелецФормы = ВладелецФормы;
|
||||
|
||||
ОповещениеОЗавершении = Новый ОписаниеОповещения("ОткрытьФормуПечатьДокументов", УправлениеПечатьюСлужебныйКлиент, ПараметрыОткрытия);
|
||||
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, УправлениеПечатьюСлужебныйКлиент.ПараметрыОжидания(ВладелецФормы));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Формирует и выводит на принтер печатные формы.
|
||||
@@ -1088,4 +1080,21 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ВыполнитьКомандуПечатиВФоне(ВладелецФормы, ПараметрыОткрытия)
|
||||
|
||||
Если ВладелецФормы = Неопределено Тогда
|
||||
ПараметрыОткрытия.УникальныйИдентификаторХранилища = Новый УникальныйИдентификатор;
|
||||
Иначе
|
||||
ПараметрыОткрытия.УникальныйИдентификаторХранилища = ВладелецФормы.УникальныйИдентификатор;
|
||||
КонецЕсли;
|
||||
|
||||
ДлительнаяОперация = УправлениеПечатьюВызовСервера.НачатьФормированиеПечатныхФорм(ПараметрыОткрытия);
|
||||
ПараметрыОткрытия.ВладелецФормы = ВладелецФормы;
|
||||
|
||||
ОповещениеОЗавершении = Новый ОписаниеОповещения("ОткрытьФормуПечатьДокументов", УправлениеПечатьюСлужебныйКлиент, ПараметрыОткрытия);
|
||||
ПараметрыОжидания = УправлениеПечатьюСлужебныйКлиент.ПараметрыОжидания(ВладелецФормы);
|
||||
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -841,10 +841,14 @@
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
Изменено = Истина;
|
||||
РегистрыСведений.СостоянияОригиналовПервичныхДокументов.ЗаписатьОбщееСостояниеОригиналаДокумента(Документ, ИмяСостояния);
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Изменено = Истина;
|
||||
РегистрыСведений.СостоянияОригиналовПервичныхДокументов.ЗаписатьОбщееСостояниеОригиналаДокумента(Документ, ИмяСостояния);
|
||||
КонецЕсли;
|
||||
|
||||
РегистрыСведений.СостоянияОригиналовПервичныхДокументов.ЗаписатьОбщееСостояниеОригиналаДокумента(Документ, ИмяСостояния);
|
||||
Возврат Изменено;
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
// - ДокументСсылка - ссылка на документ, для которого необходимо изменить состояние оригинала.
|
||||
// ИмяСостояния - Строка - устанавливаемое состояние.
|
||||
//
|
||||
// Возвращаемое значениие:
|
||||
// Возвращаемое значение:
|
||||
// Строка - "Изменено", если состояние оригинала документа не повторяется и было записано;
|
||||
// "НеИзменено"
|
||||
// "НеПроведено"
|
||||
|
||||
@@ -805,13 +805,15 @@
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
СвойстваСертификата = Неопределено;
|
||||
Если ПравоДоступаДобавление Тогда
|
||||
СвойстваСертификата = СвойстваСертификата(СертификатКриптографии);
|
||||
|
||||
ОбновитьЗначение(СертификатОбъект.Подписание, СвойстваСертификата.Подписание);
|
||||
ОбновитьЗначение(СертификатОбъект.Шифрование, СвойстваСертификата.Шифрование);
|
||||
ОбновитьЗначение(СертификатОбъект.КомуВыдан, СвойстваСертификата.КомуВыдан);
|
||||
ОбновитьЗначение(СертификатОбъект.КемВыдан, СвойстваСертификата.КемВыдан);
|
||||
ОбновитьЗначение(СертификатОбъект.ДействителенДо, СвойстваСертификата.ДатаОкончания);
|
||||
ОбновитьЗначение(СертификатОбъект.ДействителенДо, СвойстваСертификата.ДействителенДо);
|
||||
|
||||
СвойстваСубъекта = СвойстваСубъектаСертификата(СертификатКриптографии);
|
||||
|
||||
@@ -839,8 +841,12 @@
|
||||
Если СертификатОбъект.ЭтоНовый()
|
||||
И Не ДополнительныеПараметры.Свойство("Наименование") Тогда
|
||||
|
||||
Если СвойстваСертификата = Неопределено Тогда
|
||||
СвойстваСертификата = СвойстваСертификата(СертификатКриптографии);
|
||||
КонецЕсли;
|
||||
|
||||
ДополнительныеПараметры.Вставить("Наименование",
|
||||
ПредставлениеСертификата(СертификатКриптографии));
|
||||
СвойстваСертификата.Представление);
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого КлючИЗначение Из ДополнительныеПараметры Цикл
|
||||
@@ -1151,10 +1157,39 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. ЭлектроннаяПодписьКлиент.СвойстваСертификата.
|
||||
// Возвращает основные свойства сертификата в виде структуры.
|
||||
//
|
||||
// Параметры:
|
||||
// Сертификат - СертификатКриптографии - сертификат криптографии.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// * Отпечаток - Строка - отпечаток сертификата в формате строки Base64.
|
||||
// * СерийныйНомер - ДвоичныеДанные - свойство сертификата СерийныйНомер.
|
||||
// * Представление - см. ЭлектроннаяПодписьКлиент.ПредставлениеСертификата.
|
||||
// * КомуВыдан - см. ЭлектроннаяПодписьКлиент.ПредставлениеСубъекта.
|
||||
// * КемВыдан - см. ЭлектроннаяПодписьКлиент.ПредставлениеИздателя.
|
||||
// * ДатаНачала - Дата - свойство сертификата ДатаНачала в часовом поясе сеанса.
|
||||
// * ДатаОкончания - Дата - свойство сертификата ДатаОкончания в часовом поясе сеанса.
|
||||
// * ДатаНачалаЗакрытогоКлюча - Дата - свойство сертификата, указанное в OID 2.5.29.16 в часовом поясе сеанса.
|
||||
// * ДатаОкончанияЗакрытогоКлюча - Дата - свойство сертификата, указанное в OID 2.5.29.16 в часовом поясе сеанса.
|
||||
// * ДействителенДо - Дата - минимальная дата из ДатаОкончания и ДатаОкончанияЗакрытогоКлюча (если указана в сертификате).
|
||||
// * Назначение - Строка - описание расширенного свойства сертификата EKU.
|
||||
// * Подписание - Булево - свойство сертификата ИспользоватьДляПодписи.
|
||||
// * Шифрование - Булево - свойство сертификата ИспользоватьДляШифрования.
|
||||
//
|
||||
Функция СвойстваСертификата(Сертификат) Экспорт
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(Сертификат, ЭлектроннаяПодписьСлужебный.ДобавкаВремени());
|
||||
Если ТипЗнч(Сертификат) = Тип("СертификатКриптографии") Тогда
|
||||
ДвоичныеДанныеСертификата = Сертификат.Выгрузить();
|
||||
ИначеЕсли ТипЗнч(Сертификат) = Тип("ФиксированнаяСтруктура") Тогда
|
||||
ДвоичныеДанныеСертификата = Сертификат.Сертификат;
|
||||
Иначе
|
||||
ДвоичныеДанныеСертификата = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(
|
||||
Сертификат, ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ДвоичныеДанныеСертификата);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -1273,7 +1308,7 @@
|
||||
Возврат Результат;
|
||||
КонецПопытки;
|
||||
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(КонтейнерПодписи,
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебный.ПараметрыПодписиКриптографии(КонтейнерПодписи,
|
||||
ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ТекущаяДатаСеанса());
|
||||
|
||||
Если ПараметрыПодписиКриптографии.СертификатПоследнейМеткиВремени = Неопределено Тогда
|
||||
@@ -1344,7 +1379,7 @@
|
||||
Возврат Результат;
|
||||
КонецПопытки;
|
||||
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебный.ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ТекущаяДатаСеанса());
|
||||
|
||||
РезультатПроверкиСертификата = ПроверитьСертификат(МенеджерКриптографии,
|
||||
@@ -1843,6 +1878,12 @@
|
||||
Возврат РезультатПроверки;
|
||||
КонецЕсли;
|
||||
|
||||
Если РезультатСтруктура <> Неопределено Тогда
|
||||
ЗаполнитьЗначенияСвойств(РезультатСтруктура, СвойстваПодписи);
|
||||
КонецЕсли;
|
||||
|
||||
Сертификат = СвойстваПодписи.Сертификат;
|
||||
|
||||
ДатаДляПроверкиСертификатаПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДатаДляПроверкиСертификатаПодписи(СвойстваПодписи);
|
||||
Если Не ЗначениеЗаполнено(ДатаДляПроверкиСертификатаПодписи) Тогда
|
||||
ДатаДляПроверкиСертификатаПодписи = НаДату;
|
||||
|
||||
@@ -1128,6 +1128,9 @@
|
||||
//
|
||||
// Параметры:
|
||||
// Сертификат - СертификатКриптографии - сертификат криптографии.
|
||||
// - Структура:
|
||||
// * ДействителенДо - см. ЭлектроннаяПодпись.СвойстваСертификата.ДействителенДо
|
||||
// * Сертификат - СертификатКриптографии - сертификат криптографии.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Строка - представление сертификата в справочнике.
|
||||
@@ -1192,7 +1195,7 @@
|
||||
Функция СвойстваСертификата(Сертификат) Экспорт
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(Сертификат,
|
||||
ЭлектроннаяПодписьСлужебныйКлиент.ДобавкаВремени());
|
||||
ЭлектроннаяПодписьСлужебныйКлиент.ДобавкаВремени(), Неопределено);
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
@@ -11,9 +11,14 @@
|
||||
Процедура ПриПолученииПредставленияСертификата(Знач Сертификат, Знач ДобавкаВремени, Представление) Экспорт
|
||||
|
||||
// Локализация
|
||||
Если ТипЗнч(Сертификат) = Тип("Структура") Тогда
|
||||
Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1, до %2'"),
|
||||
ПредставлениеСубъекта(Сертификат.Сертификат, Ложь), Формат(Сертификат.ДействителенДо, "ДФ=MM.yyyy"));
|
||||
Иначе
|
||||
ДатыСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.ДатыСертификата(Сертификат, ДобавкаВремени);
|
||||
Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1, до %2'"),
|
||||
ПредставлениеСубъекта(Сертификат, Ложь), Формат(ДатыСертификата.ДатаОкончания, "ДФ=MM.yyyy"));
|
||||
КонецЕсли;
|
||||
// Конец Локализация
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -200,14 +205,14 @@
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
ИдентификаторКлючаУдостоверяющегоЦентра =
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ИдентификаторКлючаУдостоверяющегоЦентра(Сертификат);
|
||||
ДополнительныеСвойстваСертификата =
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата(Сертификат, 0);
|
||||
|
||||
Если Не ЗначениеЗаполнено(ИдентификаторКлючаУдостоверяющегоЦентра) Тогда
|
||||
Если Не ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ИдентификаторКлючаУдостоверяющегоЦентра) Тогда
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
Результат.АдресВнутренний = СтрШаблон("%1/%2", ИмяИздателя, НРег(ИдентификаторКлючаУдостоверяющегоЦентра));
|
||||
Результат.АдресВнутренний = СтрШаблон("%1/%2", ИмяИздателя, НРег(ДополнительныеСвойстваСертификата.ИдентификаторКлючаУдостоверяющегоЦентра));
|
||||
Результат.АдресВнешний = СтрШаблон("http://ca.1c.ru/crls/%1.zip", Результат.АдресВнутренний);
|
||||
// Конец локализация
|
||||
|
||||
@@ -509,6 +514,7 @@
|
||||
Структура.Вставить("ДобавкаВремени");
|
||||
Структура.Вставить("НаДату");
|
||||
Структура.Вставить("ЭтоПроверкаПодписи", Ложь);
|
||||
Структура.Вставить("СвойстваСертификата");
|
||||
|
||||
Возврат Структура;
|
||||
|
||||
@@ -568,7 +574,7 @@
|
||||
РезультатПроверкиУдостоверяющегоЦентра.НайденВСпискеУдостоверяющихЦентров = Истина;
|
||||
РезультатПроверкиУдостоверяющегоЦентра.Государственный = ДанныеУдостоверяющегоЦентра.Государственный;
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(Сертификат, КонтекстПроверки.ДобавкаВремени);
|
||||
СвойстваСертификата = КонтекстПроверки.СвойстваСертификата;
|
||||
ДатаВыдачиСертификатаДляСравнения = СвойстваСертификата.ДатаНачала - КонтекстПроверки.ДобавкаВремени;
|
||||
|
||||
Количество = ДанныеУдостоверяющегоЦентра.ПериодыДействия.Количество();
|
||||
@@ -643,6 +649,7 @@
|
||||
|
||||
ЭтоЮридическоеЛицо = ЗначениеЗаполнено(СвойстваСубъекта.ИННЮЛ) Или Не ЭтоИННФизЛица;
|
||||
ЭтоИндивидуальныйПредприниматель = ЗначениеЗаполнено(СвойстваСубъекта.ОГРНИП);
|
||||
ЭтоОбезличенныйСертификат = Не ЗначениеЗаполнено(СвойстваСубъекта.Фамилия);
|
||||
ЭтоФизическоеЛицо = Не ЭтоЮридическоеЛицо И Не ЭтоИндивидуальныйПредприниматель;
|
||||
|
||||
ДатаПрекращенияДействия = ДанныеУдостоверяющегоЦентра.ДругиеНастройки.Получить("ДатаПрекращенияДействияСертификатовВыданныхКоммерческимиУЦ");
|
||||
@@ -650,6 +657,11 @@
|
||||
ДатаПрекращенияДействия = ДатаПрекращенияДействия + КонтекстПроверки.ДобавкаВремени;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЭтоОбезличенныйСертификат И Не ДанныеУдостоверяющегоЦентра.Государственный Тогда
|
||||
РезультатПроверкиУдостоверяющегоЦентра = ЭлектроннаяПодписьСлужебныйКлиентСервер.РезультатПроверкиУдостоверяющегоЦентраПоУмолчанию();
|
||||
Возврат РезультатПроверкиУдостоверяющегоЦентра;
|
||||
КонецЕсли;
|
||||
|
||||
ВозможенПеревыпуск = ЭтоФизическоеЛицо Или Не ДанныеУдостоверяющегоЦентра.Государственный;
|
||||
|
||||
// Аккредитация удостоверяющего центра прекращена.
|
||||
|
||||
@@ -131,10 +131,27 @@
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПроверкиСертификата();
|
||||
КонецЕсли;
|
||||
|
||||
СвойстваСертификата = Неопределено;
|
||||
Если ДополнительныеПараметры.ДляПроверкиПодписи Тогда
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(
|
||||
СертификатДляПроверки, ДобавкаВремени(), ДанныеСертификата);
|
||||
|
||||
ОшибкаПросрочки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ЗакрытыйКлючПросрочен(СвойстваСертификата, НаДату);
|
||||
|
||||
Если ЗначениеЗаполнено(ОшибкаПросрочки) Тогда
|
||||
ОписаниеОшибки = ОшибкаПросрочки;
|
||||
Если ВызыватьИсключение Тогда
|
||||
ВызватьИсключение ОписаниеОшибки;
|
||||
КонецЕсли;
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Если ДополнительныеПараметры.ВыполнятьПроверкуУдостоверяющегоЦентра Тогда
|
||||
|
||||
Результат = ЭлектроннаяПодпись.РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатДляПроверки, НаДату,
|
||||
ДополнительныеПараметры.ДляПроверкиПодписи);
|
||||
Результат = РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатДляПроверки, НаДату,
|
||||
ДополнительныеПараметры.ДляПроверкиПодписи, СвойстваСертификата);
|
||||
|
||||
Если Не Результат.Действует Или ДополнительныеПараметры.Свойство("Сертификат") И ЗначениеЗаполнено(Результат.Предупреждение.ТекстОшибки)
|
||||
И Не ДополнительныеПараметры.ДляПроверкиПодписи Тогда
|
||||
@@ -497,7 +514,7 @@
|
||||
// Возвращаемое значение:
|
||||
// см. ЭлектроннаяПодписьСлужебныйКлиентСервер.РезультатПроверкиУдостоверяющегоЦентраПоУмолчанию
|
||||
//
|
||||
Функция РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии, НаДату = Неопределено, ЭтоПроверкаПодписи = Ложь) Экспорт
|
||||
Функция РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии, НаДату = Неопределено, ЭтоПроверкаПодписи = Ложь, СвойстваСертификата = Неопределено) Экспорт
|
||||
|
||||
Результат = ЭлектроннаяПодписьСлужебныйКлиентСервер.РезультатПроверкиУдостоверяющегоЦентраПоУмолчанию();
|
||||
|
||||
@@ -530,6 +547,12 @@
|
||||
КонтекстПроверки.ДобавкаВремени = ДобавкаВремени();
|
||||
КонтекстПроверки.ЭтоПроверкаПодписи = ЭтоПроверкаПодписи;
|
||||
|
||||
Если СвойстваСертификата = Неопределено Тогда
|
||||
КонтекстПроверки.СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(СертификатКриптографии);
|
||||
Иначе
|
||||
КонтекстПроверки.СвойстваСертификата = СвойстваСертификата;
|
||||
КонецЕсли;
|
||||
|
||||
Результат = МодульЭлектроннаяПодписьКлиентСерверЛокализация.РезультатПроверкиУдостоверяющегоЦентраСертификата(
|
||||
СертификатКриптографии, КонтекстПроверки);
|
||||
|
||||
@@ -945,25 +968,6 @@
|
||||
Обработчик.Процедура = "ЭлектроннаяПодписьСлужебный.ЗаменитьРольДобавлениеИзменениеЭлектронныхПодписейИШифрование";
|
||||
Обработчик.РежимВыполнения = "Оперативно";
|
||||
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "3.1.6.20";
|
||||
Обработчик.Комментарий = НСтр(
|
||||
"ru = 'Перенос оповещений об окончании срока действия сертификата и данных заявлений в регистры сведений.'");
|
||||
Обработчик.Идентификатор = Новый УникальныйИдентификатор("05bd8752-d7f7-47bb-abe6-41d72bcc477b");
|
||||
Обработчик.Процедура = "Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.ОбработатьДанныеДляПереходаНаНовуюВерсию";
|
||||
Обработчик.РежимВыполнения = "Отложенно";
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию";
|
||||
Обработчик.ЧитаемыеОбъекты = "Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования";
|
||||
ИзменяемыеОбъекты = Новый Массив;
|
||||
ИзменяемыеОбъекты.Добавить("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования");
|
||||
ИзменяемыеОбъекты.Добавить("РегистрСведений.ОповещенияПользователейСертификатов");
|
||||
Если Метаданные.РегистрыСведений.Найти("ЗаявленияНаВыпускСертификата") <> Неопределено Тогда
|
||||
ИзменяемыеОбъекты.Добавить("РегистрСведений.ЗаявленияНаВыпускСертификата");
|
||||
КонецЕсли;
|
||||
Обработчик.ИзменяемыеОбъекты = СтрСоединить(ИзменяемыеОбъекты, ",");
|
||||
Обработчик.БлокируемыеОбъекты = "Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования";
|
||||
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
|
||||
Если Метаданные.Обработки.Найти("ПрограммыЭлектроннойПодписиИШифрования") <> Неопределено Тогда
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "3.1.6.69";
|
||||
@@ -1016,6 +1020,25 @@
|
||||
Приоритет.Процедура = "РаботаСФайлами.ПеренестиЭлектронныеПодписиИСертификатыШифрованияВРегистрыСведений";
|
||||
КонецЕсли;
|
||||
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "3.1.9.234";
|
||||
Обработчик.Комментарий = НСтр(
|
||||
"ru = 'Перенос оповещений об окончании срока действия сертификата, данных заявлений в регистры сведений, заполнение срока действия сертификата с учетом срока действия закрытого ключа.'");
|
||||
Обработчик.Идентификатор = Новый УникальныйИдентификатор("a17c1765-820e-4886-9423-ffc1267d7ff1");
|
||||
Обработчик.Процедура = "Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.ОбработатьДанныеДляПереходаНаНовуюВерсию";
|
||||
Обработчик.РежимВыполнения = "Отложенно";
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию";
|
||||
Обработчик.ЧитаемыеОбъекты = "Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования";
|
||||
ИзменяемыеОбъекты = Новый Массив;
|
||||
ИзменяемыеОбъекты.Добавить("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования");
|
||||
ИзменяемыеОбъекты.Добавить("РегистрСведений.ОповещенияПользователейСертификатов");
|
||||
Если Метаданные.РегистрыСведений.Найти("ЗаявленияНаВыпускСертификата") <> Неопределено Тогда
|
||||
ИзменяемыеОбъекты.Добавить("РегистрСведений.ЗаявленияНаВыпускСертификата");
|
||||
КонецЕсли;
|
||||
Обработчик.ИзменяемыеОбъекты = СтрСоединить(ИзменяемыеОбъекты, ",");
|
||||
Обработчик.БлокируемыеОбъекты = "Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования";
|
||||
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// См. ОбщегоНазначенияПереопределяемый.ПриДобавленииПереименованийОбъектовМетаданных.
|
||||
@@ -1319,6 +1342,40 @@
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
// Только для внутреннего использования.
|
||||
//
|
||||
// Параметры:
|
||||
// КонтейнерПодписи - КонтейнерПодписейКриптографии
|
||||
// ДобавкаВремени - Число
|
||||
// ДатаСеанса - Дата
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - параметры подписи криптографии:
|
||||
// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии
|
||||
// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью менеджера криптографии.
|
||||
// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени.
|
||||
// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи.
|
||||
// - Неопределено - неподтвержденная дата подписи отсутствует в данных подписи.
|
||||
// * ДатаПоследнейМеткиВремени - Дата - дата последней метки времени.
|
||||
// * Сертификат - СертификатКриптографии - сертификат подписанта.
|
||||
// * ОписаниеСертификата - см. ЭлектроннаяПодписьКлиент.СвойстваСертификата.
|
||||
//
|
||||
Функция ПараметрыПодписиКриптографии(КонтейнерПодписи, ДобавкаВремени, ДатаСеанса) Экспорт
|
||||
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.НовыеПараметрыПодписиКриптографии();
|
||||
|
||||
Подпись = КонтейнерПодписи.Подписи[0];
|
||||
|
||||
СертификатСуществует = ЭлектроннаяПодписьСлужебныйКлиентСервер.СертификатСуществует(Подпись.СертификатПодписи);
|
||||
|
||||
Если СертификатСуществует Тогда
|
||||
ПараметрыПодписи.ОписаниеСертификата = ЭлектроннаяПодпись.СвойстваСертификата(Подпись.СертификатПодписи);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(ПараметрыПодписи, Подпись, СертификатСуществует, ДобавкаВремени, ДатаСеанса);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Извлекает свойства подписи из данных подписи. Если не удалось извлечь все свойства с помощью менеджера криптографии,
|
||||
// возвращается часть свойств, которые удалось прочитать из двоичных данных.
|
||||
//
|
||||
@@ -1404,7 +1461,7 @@
|
||||
Возврат Результат;
|
||||
КонецПопытки;
|
||||
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписиКриптографии = ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ДобавкаВремени(), ТекущаяДатаСеанса());
|
||||
|
||||
Результат.ТипПодписи = ПараметрыПодписиКриптографии.ТипПодписи;
|
||||
@@ -1892,6 +1949,7 @@
|
||||
СвойстваСертификата.Вставить("КомуВыдан", "");
|
||||
СвойстваСертификата.Вставить("ДатаНачала", '00010101');
|
||||
СвойстваСертификата.Вставить("ДатаОкончания", '00010101');
|
||||
СвойстваСертификата.Вставить("ДействителенДо", '00010101');
|
||||
|
||||
Если ТипЗнч(СвойстваПодписи.Сертификат) = Тип("Строка")
|
||||
И ЭтоАдресВременногоХранилища(СвойстваПодписи.Сертификат) Тогда
|
||||
@@ -2783,7 +2841,10 @@
|
||||
СохраненныеСвойства.Организация = МодульОрганизации.ОрганизацияПоУмолчанию();
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
СохраненныеСвойства.Наименование = ЭлектроннаяПодпись.ПредставлениеСертификата(СертификатКриптографии);
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(СертификатКриптографии);
|
||||
СохраненныеСвойства.Наименование = СвойстваСертификата.Представление;
|
||||
|
||||
Если Не ДляШифрования Тогда
|
||||
СохраненныеСвойства.Пользователь = Пользователи.ТекущийПользователь();
|
||||
КонецЕсли;
|
||||
@@ -3209,17 +3270,17 @@
|
||||
НСтр("ru='Нельзя усовершенствовать подпись с типом %1 в приложении в Интернете'"), ТипПодписи);
|
||||
|
||||
Если ТипПодписи = Перечисления.ТипыПодписиКриптографии.ОбычнаяCMS Тогда
|
||||
Результат.СвойстваПодписи.СрокДействияПоследнейМеткиВремени = СвойстваСертификата.ДатаОкончания;
|
||||
Результат.СвойстваПодписи.СрокДействияПоследнейМеткиВремени = СвойстваСертификата.ДействителенДо;
|
||||
КонецЕсли;
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ПараметрыВыполнения.ИгнорироватьСрокДействияСертификата
|
||||
И СвойстваСертификата.ДатаОкончания < ТекущаяДатаСеанса() Тогда
|
||||
И СвойстваСертификата.ДействителенДо < ТекущаяДатаСеанса() Тогда
|
||||
СведенияОСертификате =
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.СведенияОСертификатеСтрокой(СвойстваСертификата);
|
||||
|
||||
Результат.СвойстваПодписи.СрокДействияПоследнейМеткиВремени = СвойстваСертификата.ДатаОкончания;
|
||||
Результат.СвойстваПодписи.СрокДействияПоследнейМеткиВремени = СвойстваСертификата.ДействителенДо;
|
||||
Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru='Срок действия сертификата подписи истек:
|
||||
|%1'"), СведенияОСертификате);
|
||||
@@ -4016,7 +4077,7 @@
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("C14N",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4080,7 +4141,7 @@
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("C14N_body",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4100,7 +4161,7 @@
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("TransformSMEV",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4123,7 +4184,7 @@
|
||||
|
||||
Если АтрибутDigestValue = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("Hash",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4150,7 +4211,7 @@
|
||||
|
||||
Если АтрибутSignatureValue = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("Sign",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4175,7 +4236,7 @@
|
||||
|
||||
Если ПодписьВерна = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("VerifySign",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4206,7 +4267,7 @@
|
||||
|
||||
Если Не ЗначениеЗаполнено(АтрибутSignatureValue) Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("CMSSign",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -4228,7 +4289,7 @@
|
||||
|
||||
Если ПодписьВерна = Неопределено Тогда
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("CMSVerifySign",
|
||||
ОбъектКомпоненты.GetLastError());
|
||||
ОбъектКомпоненты.ПолучитьОшибку());
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
|
||||
ИначеЕсли Не ПодписьВерна Тогда
|
||||
@@ -7405,91 +7466,6 @@
|
||||
|
||||
#Область СодержимоеСертификата
|
||||
|
||||
// Содержит встроенную лицензию КриптоПро.
|
||||
//
|
||||
// Параметры:
|
||||
// Данные - ДвоичныеДанные - данные сертификата
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Булево
|
||||
//
|
||||
Функция СодержитВстроеннуюЛицензиюКриптоПро(Данные) Экспорт
|
||||
|
||||
АнализДанных = ЭлектроннаяПодписьСлужебныйКлиентСервер.НовыйАнализДанных(Данные);
|
||||
|
||||
// TBSCertificate ::= SEQUENCE {
|
||||
// version [0] EXPLICIT Version DEFAULT v1,
|
||||
// ...
|
||||
// extensions [3] EXPLICIT Extensions OPTIONAL
|
||||
// -- If present, version MUST be v3
|
||||
|
||||
// SEQUENCE (Certificate).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
// SEQUENCE (tbsCertificate).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
// [0] EXPLICIT (version).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 2, 0);
|
||||
// INTEGER {v1(0), v2(1), v3(2)}.
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 2);
|
||||
Целое = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПрочитатьПотоковоеЦелое(АнализДанных);
|
||||
Если Целое <> 2 Тогда
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьРодительскийБлок(АнализДанных);
|
||||
// version
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьРодительскийБлок(АнализДанных);
|
||||
// INTEGER (serialNumber CertificateSerialNumber).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 2);
|
||||
// SEQUENCE (signature AlgorithmIdentifier).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 16);
|
||||
// SEQUENCE (issuer Name).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 16);
|
||||
// SEQUENCE (validity Validity).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 16);
|
||||
// SEQUENCE (subject Name).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 16);
|
||||
// SEQUENCE (subjectPublicKeyInfo SubjectPublicKeyInfo).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 0, 16);
|
||||
// [1] IMPLICIT UniqueIdentifier OPTIONAL (issuerUniqueID).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 2, 1, Ложь);
|
||||
// [2] IMPLICIT UniqueIdentifier OPTIONAL (subjectUniqueID).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьБлок(АнализДанных, 2, 2, Ложь);
|
||||
// [3] EXPLICIT SEQUENCE SIZE (1..MAX) OF Extension (extensions).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 2, 3);
|
||||
Если АнализДанных.ЕстьОшибка Тогда
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
// SEQUENCE OF
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
СмещениеСледующего = АнализДанных.Родители[0].СмещениеСледующего;
|
||||
Пока АнализДанных.Смещение < СмещениеСледующего Цикл
|
||||
// SEQUENCE (extension).
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
Если АнализДанных.ЕстьОшибка Тогда
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
// OBJECT IDENTIFIER
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьНачалоБлока(АнализДанных, 0, 6);
|
||||
РазмерДанных = АнализДанных.Родители[0].РазмерДанных;
|
||||
Если РазмерДанных = 0 Тогда
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПриОшибкеСтруктурыДанных(АнализДанных);
|
||||
Возврат Ложь;
|
||||
КонецЕсли;
|
||||
Если РазмерДанных = 7 Тогда
|
||||
Буфер = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, РазмерДанных); // БуферДвоичныхДанных
|
||||
СтрокаБуфера = ПолучитьHexСтрокуИзБуфераДвоичныхДанных(Буфер);
|
||||
Если СтрокаБуфера = "2A850302023102" Тогда // 1.2.643.2.2.49.2
|
||||
Возврат Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьРодительскийБлок(АнализДанных); // OBJECT IDENTIFIER
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ПропуститьРодительскийБлок(АнализДанных); // SEQUENCE
|
||||
КонецЦикла;
|
||||
|
||||
Возврат Ложь;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Расширенные данные для печати сертификата.
|
||||
//
|
||||
// Параметры:
|
||||
|
||||
@@ -429,8 +429,10 @@
|
||||
|
||||
Если Параметры.Операция = "Подписание" Тогда
|
||||
|
||||
ДвоичныеДанныеСертификата = СертификатКриптографии.Выгрузить();
|
||||
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата.Вставить("ДвоичныеДанные", СертификатКриптографии.Выгрузить());
|
||||
СвойстваСертификата.Вставить("ДвоичныеДанные", ДвоичныеДанныеСертификата);
|
||||
|
||||
Если ЭлектроннаяПодпись.ДоступнаУсовершенствованнаяПодпись() Тогда
|
||||
СвойстваПодписи = ЭлектроннаяПодписьСлужебный.СвойстваПодписиЧтениеМенеджеромКриптографии(
|
||||
@@ -973,7 +975,8 @@
|
||||
Если Не ЗначениеЗаполнено(ПредставлениеСертификата) Тогда
|
||||
Попытка
|
||||
СертификатКриптографии = Новый СертификатКриптографии(ДанныеСертификата);
|
||||
ПредставлениеСертификата = ЭлектроннаяПодпись.ПредставлениеСертификата(СертификатКриптографии);
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(СертификатКриптографии);
|
||||
ПредставлениеСертификата = СвойстваСертификата.Представление;
|
||||
Исключение
|
||||
ПредставлениеСертификата = "";
|
||||
КонецПопытки;
|
||||
|
||||
@@ -326,6 +326,22 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// См. ЭлектроннаяПодпись.СвойстваСертификата
|
||||
Асинх Функция СвойстваСертификата(Сертификат) Экспорт
|
||||
|
||||
Если ТипЗнч(Сертификат) = Тип("СертификатКриптографии") Тогда
|
||||
ДвоичныеДанныеСертификата = Ждать Сертификат.ВыгрузитьАсинх();
|
||||
ИначеЕсли ТипЗнч(Сертификат) = Тип("ФиксированнаяСтруктура") Тогда
|
||||
ДвоичныеДанныеСертификата = Сертификат.Сертификат;
|
||||
Иначе
|
||||
ДвоичныеДанныеСертификата = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваСертификата(Сертификат,
|
||||
ДобавкаВремени(), ДвоичныеДанныеСертификата);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
@@ -1623,7 +1639,7 @@
|
||||
СвойстваПодписи = Ждать СвойстваПодписиЧтениеМенеджеромКриптографии(Контекст.ДанныеПодписи, Контекст.МенеджерКриптографии, Ложь);
|
||||
Иначе
|
||||
СвойстваПодписи = Ждать СвойстваПодписиИзДвоичныхДанных(Контекст.ДанныеПодписи, Ложь);
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(Сертификат);
|
||||
СвойстваСертификата = Ждать СвойстваСертификата(Сертификат);
|
||||
СвойстваПодписи.Отпечаток = СвойстваСертификата.Отпечаток;
|
||||
СвойстваПодписи.КомуВыданСертификат = СвойстваСертификата.КомуВыдан;
|
||||
КонецЕсли;
|
||||
@@ -1643,6 +1659,13 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Сертификат = СвойстваПодписи.Сертификат;
|
||||
|
||||
Если ТипЗнч(Контекст.РезультатПроверки) = Тип("Структура") Тогда
|
||||
ЗаполнитьЗначенияСвойств(Контекст.РезультатПроверки, СвойстваПодписи);
|
||||
Контекст.РезультатПроверки.Сертификат = Сертификат;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если Не Контекст.Свойство("ПроверитьСертификатНаКлиенте") Тогда
|
||||
@@ -1804,6 +1827,7 @@
|
||||
Контекст.Вставить("ВыполнятьПроверкуУдостоверяющегоЦентра", Истина);
|
||||
Контекст.Вставить("ДляПроверкиПодписи", Ложь);
|
||||
Контекст.Вставить("ДействияДляУстраненияОшибок", Новый Соответствие);
|
||||
Контекст.Вставить("СвойстваСертификата");
|
||||
|
||||
Возврат Контекст;
|
||||
|
||||
@@ -2102,7 +2126,7 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Продолжение процедуры ПроверитьСертификат.
|
||||
Процедура ПроверитьСертификатНаКлиентеПослеПроверки(Контекст) Экспорт
|
||||
Асинх Процедура ПроверитьСертификатНаКлиентеПослеПроверки(Контекст) Экспорт
|
||||
|
||||
ОшибкаПросрочки = ЭлектроннаяПодписьСлужебныйКлиентСервер.СертификатПросрочен(
|
||||
Контекст.СертификатКриптографии, Контекст.НаДату, ДобавкаВремени());
|
||||
@@ -2110,18 +2134,30 @@
|
||||
Если ЗначениеЗаполнено(ОшибкаПросрочки) Тогда
|
||||
ПроверитьСертификатНаКлиентеПослеОшибкиПроверки(ОшибкаПросрочки, Ложь, Контекст);
|
||||
Иначе
|
||||
|
||||
Если Контекст.ДляПроверкиПодписи Тогда
|
||||
СвойстваСертификата = Ждать СвойстваСертификата(Контекст.СертификатКриптографии);
|
||||
Контекст.СвойстваСертификата = СвойстваСертификата;
|
||||
ОшибкаПросрочки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ЗакрытыйКлючПросрочен(
|
||||
СвойстваСертификата, Контекст.НаДату);
|
||||
Если ЗначениеЗаполнено(ОшибкаПросрочки) Тогда
|
||||
ПроверитьСертификатНаКлиентеПослеОшибкиПроверки(ОшибкаПросрочки, Ложь, Контекст);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
ДополнительнаяПроверкаСертификата(Контекст.СертификатКриптографии, Ложь, Контекст);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Продолжение процедуры ПроверитьСертификат.
|
||||
Процедура ДополнительнаяПроверкаСертификата(СертификатКриптографии, ПроверкаНаСервере, Контекст)
|
||||
Асинх Процедура ДополнительнаяПроверкаСертификата(СертификатКриптографии, ПроверкаНаСервере, Контекст)
|
||||
|
||||
Если Контекст.ВыполнятьПроверкуУдостоверяющегоЦентра Тогда
|
||||
|
||||
РезультатПроверкиУдостоверяющегоЦентраСертификата = РезультатПроверкиУдостоверяющегоЦентраСертификата(
|
||||
СертификатКриптографии, Контекст.НаДату, Контекст.ДляПроверкиПодписи);
|
||||
РезультатПроверкиУдостоверяющегоЦентраСертификата = Ждать РезультатПроверкиУдостоверяющегоЦентраСертификата(
|
||||
СертификатКриптографии, Контекст.НаДату, Контекст.ДляПроверкиПодписи, Контекст.СвойстваСертификата);
|
||||
|
||||
Если Не РезультатПроверкиУдостоверяющегоЦентраСертификата.Действует Или ЗначениеЗаполнено(
|
||||
РезультатПроверкиУдостоверяющегоЦентраСертификата.Предупреждение.ТекстОшибки)
|
||||
@@ -2170,7 +2206,7 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии, НаДату = Неопределено, ЭтоПроверкаПодписи = Ложь) Экспорт
|
||||
Асинх Функция РезультатПроверкиУдостоверяющегоЦентраСертификата(СертификатКриптографии, НаДату = Неопределено, ЭтоПроверкаПодписи = Ложь, СвойстваСертификата = Неопределено) Экспорт
|
||||
|
||||
Результат = ЭлектроннаяПодписьСлужебныйКлиентСервер.РезультатПроверкиУдостоверяющегоЦентраПоУмолчанию();
|
||||
|
||||
@@ -2204,6 +2240,11 @@
|
||||
КонтекстПроверки.НаДату = ?(НаДату = Неопределено, ОбщегоНазначенияКлиент.ДатаСеанса(), НаДату);
|
||||
КонтекстПроверки.ДобавкаВремени = ДобавкаВремени();
|
||||
КонтекстПроверки.ЭтоПроверкаПодписи = ЭтоПроверкаПодписи;
|
||||
Если СвойстваСертификата = Неопределено Тогда
|
||||
КонтекстПроверки.СвойстваСертификата = Ждать СвойстваСертификата(СертификатКриптографии);
|
||||
Иначе
|
||||
КонтекстПроверки.СвойстваСертификата = СвойстваСертификата;
|
||||
КонецЕсли;
|
||||
|
||||
Результат = МодульЭлектроннаяПодписьКлиентСерверЛокализация.РезультатПроверкиУдостоверяющегоЦентраСертификата(
|
||||
СертификатКриптографии, КонтекстПроверки);
|
||||
@@ -5071,9 +5112,9 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Продолжение процедуры ВыполнитьНаСтороне.
|
||||
Процедура ВыполнитьНаСторонеПослеВыгрузкиСертификата(ВыгруженныеДанные, Контекст) Экспорт
|
||||
Асинх Процедура ВыполнитьНаСторонеПослеВыгрузкиСертификата(ВыгруженныеДанные, Контекст) Экспорт
|
||||
|
||||
Контекст.Вставить("СвойстваСертификата", ЭлектроннаяПодписьКлиент.СвойстваСертификата(
|
||||
Контекст.Вставить("СвойстваСертификата", Ждать СвойстваСертификата(
|
||||
Контекст.СертификатКриптографии));
|
||||
Контекст.СвойстваСертификата.Вставить("ДвоичныеДанные", ВыгруженныеДанные);
|
||||
|
||||
@@ -6255,11 +6296,11 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Продолжение процедуры УсовершенствоватьНаСтороне.
|
||||
Процедура УсовершенствоватьНаСторонеПослеПолученияКонтейнераПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
Асинх Процедура УсовершенствоватьНаСторонеПослеПолученияКонтейнераПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
|
||||
ДатаСеанса = ОбщегоНазначенияКлиент.ДатаСеанса();
|
||||
ДобавкаВремени = ДатаСеанса - ОбщегоНазначенияКлиент.ДатаУниверсальная();
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписи = Ждать ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ДобавкаВремени, ДатаСеанса);
|
||||
|
||||
Контекст.ЭлементДанных.Вставить("ПараметрыПодписи", ПараметрыПодписи);
|
||||
@@ -6370,11 +6411,11 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// Продолжение процедуры УсовершенствоватьНаСтороне.
|
||||
Процедура ВыполнитьПослеПолученияКонтейнераУсовершенствованнойПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
Асинх Процедура ВыполнитьПослеПолученияКонтейнераУсовершенствованнойПодписи(КонтейнерПодписи, Контекст) Экспорт
|
||||
|
||||
ДатаСеанса = ОбщегоНазначенияКлиент.ДатаСеанса();
|
||||
ДобавкаВремени = ДатаСеанса - ОбщегоНазначенияКлиент.ДатаУниверсальная();
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписи = Ждать ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ДобавкаВремени, ДатаСеанса);
|
||||
|
||||
Контекст.ЭлементДанных.Вставить("ПараметрыПодписи", ПараметрыПодписи);
|
||||
@@ -7196,7 +7237,7 @@
|
||||
КонецПопытки;
|
||||
|
||||
Если АтрибутDigestValue = Неопределено Тогда
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("Hash",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7227,7 +7268,7 @@
|
||||
КонецПопытки;
|
||||
|
||||
Если АтрибутSignatureValue = Неопределено Тогда
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("Sign",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7361,7 +7402,7 @@
|
||||
КонецПопытки;
|
||||
|
||||
Если ПодписьВерна = Неопределено Тогда
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("VerifySign",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7398,7 +7439,7 @@
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("C14N",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7465,7 +7506,7 @@
|
||||
КонецПопытки;
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("C14N_body",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7487,7 +7528,7 @@
|
||||
КонецПопытки;
|
||||
|
||||
Если КанонизированныйТекстXML = Неопределено Тогда
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.GetLastErrorАсинх();
|
||||
РезультатОшибка = Ждать ОбъектКомпоненты.ПолучитьОшибкуАсинх();
|
||||
ТекстОшибки = ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("TransformSMEV",
|
||||
РезультатОшибка.Значение);
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
@@ -7502,30 +7543,30 @@
|
||||
Контекст.Вставить("НачалоОписанияТекстаОшибки", НачалоОписанияТекстаОшибки);
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения(
|
||||
"ПослеВыполненияGetLastError", ЭтотОбъект, Контекст,
|
||||
"ПослеВыполненияGetLastError_Ошибка", ЭтотОбъект);
|
||||
"ПослеВыполненияПолучитьОшибку", ЭтотОбъект, Контекст,
|
||||
"ПослеВыполненияПолучитьОшибку_Ошибка", ЭтотОбъект);
|
||||
|
||||
Попытка
|
||||
Контекст.ОбъектКомпоненты.НачатьВызовGetLastError(Оповещение);
|
||||
Контекст.ОбъектКомпоненты.НачатьВызовПолучитьОшибку(Оповещение);
|
||||
Исключение
|
||||
ЗавершитьОперациюСОшибкой(Контекст,
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("GetLastError",
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("ПолучитьОшибку",
|
||||
ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
|
||||
КонецПопытки;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ПослеВыполненияGetLastError_Ошибка(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
|
||||
Процедура ПослеВыполненияПолучитьОшибку_Ошибка(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
|
||||
ЗавершитьОперациюСОшибкой(Контекст,
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("GetLastError",
|
||||
ЭлектроннаяПодписьСлужебныйКлиентСервер.ОшибкаВызоваМетодаКомпоненты("ПолучитьОшибку",
|
||||
ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ПослеВыполненияGetLastError(ТекстОшибки, Параметры, Контекст) Экспорт
|
||||
Процедура ПослеВыполненияПолучитьОшибку(ТекстОшибки, Параметры, Контекст) Экспорт
|
||||
|
||||
ЗавершитьОперациюСОшибкой(Контекст,
|
||||
Контекст.НачалоОписанияТекстаОшибки + Символы.ПС + ТекстОшибки);
|
||||
@@ -7873,7 +7914,7 @@
|
||||
// * ОписаниеОшибки - ИнформацияОбОшибке
|
||||
// Контекст - Структура
|
||||
//
|
||||
Процедура ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса(РезультатПоиска, Контекст) Экспорт
|
||||
Асинх Процедура ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса(РезультатПоиска, Контекст) Экспорт
|
||||
|
||||
Если Не РезультатПоиска.Выполнено Тогда
|
||||
Ошибка = Новый Структура("ОписаниеОшибки", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
@@ -7889,7 +7930,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Контекст.Вставить("СвойстваСертификата", ЭлектроннаяПодписьКлиент.СвойстваСертификата(
|
||||
Контекст.Вставить("СвойстваСертификата", Ждать СвойстваСертификата(
|
||||
РезультатПоиска.Сертификат));
|
||||
Контекст.СвойстваСертификата.Вставить("ДвоичныеДанные", РезультатПоиска.Сертификат.Сертификат);
|
||||
|
||||
@@ -10673,7 +10714,7 @@
|
||||
Возврат Результат;
|
||||
КонецПопытки;
|
||||
|
||||
ПараметрыПодписиКриптографии = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
|
||||
ПараметрыПодписиКриптографии = Ждать ПараметрыПодписиКриптографии(
|
||||
КонтейнерПодписи, ДобавкаВремени(), ОбщегоНазначенияКлиент.ДатаСеанса());
|
||||
|
||||
Результат.ТипПодписи = ПараметрыПодписиКриптографии.ТипПодписи;
|
||||
@@ -10753,7 +10794,7 @@
|
||||
Сертификат = Новый СертификатКриптографии();
|
||||
Ждать Сертификат.ИнициализироватьАсинх(Результат.Сертификат);
|
||||
Результат.Сертификат = Ждать Сертификат.ВыгрузитьАсинх();
|
||||
СвойстваСертификата = ЭлектроннаяПодписьКлиент.СвойстваСертификата(Сертификат);
|
||||
СвойстваСертификата = Ждать СвойстваСертификата(Сертификат);
|
||||
Результат.Отпечаток = СвойстваСертификата.Отпечаток;
|
||||
Результат.КомуВыданСертификат = СвойстваСертификата.КомуВыдан;
|
||||
Исключение
|
||||
@@ -10847,5 +10888,39 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Только для внутреннего использования.
|
||||
//
|
||||
// Параметры:
|
||||
// КонтейнерПодписи - КонтейнерПодписейКриптографии
|
||||
// ДобавкаВремени - Число
|
||||
// ДатаСеанса - Дата
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - параметры подписи криптографии:
|
||||
// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии
|
||||
// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью менеджера криптографии.
|
||||
// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени.
|
||||
// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи.
|
||||
// - Неопределено - неподтвержденная дата подписи отсутствует в данных подписи.
|
||||
// * ДатаПоследнейМеткиВремени - Дата - дата последней метки времени.
|
||||
// * Сертификат - СертификатКриптографии - сертификат подписанта.
|
||||
// * ОписаниеСертификата - см. ЭлектроннаяПодписьКлиент.СвойстваСертификата.
|
||||
//
|
||||
Асинх Функция ПараметрыПодписиКриптографии(КонтейнерПодписи, ДобавкаВремени, ДатаСеанса) Экспорт
|
||||
|
||||
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.НовыеПараметрыПодписиКриптографии();
|
||||
|
||||
Подпись = КонтейнерПодписи.Подписи[0];
|
||||
|
||||
СертификатСуществует = ЭлектроннаяПодписьСлужебныйКлиентСервер.СертификатСуществует(Подпись.СертификатПодписи);
|
||||
|
||||
Если СертификатСуществует Тогда
|
||||
ПараметрыПодписи.ОписаниеСертификата = Ждать СвойстваСертификата(Подпись.СертификатПодписи);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(ПараметрыПодписи, Подпись, СертификатСуществует, ДобавкаВремени, ДатаСеанса);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
@@ -1436,6 +1436,22 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Только для внутреннего использования.
|
||||
Функция ЗакрытыйКлючПросрочен(СвойстваСертификата, НаДату) Экспорт
|
||||
|
||||
Если Не ЗначениеЗаполнено(НаДату) Или Не ЗначениеЗаполнено(СвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) Тогда
|
||||
Возврат "";
|
||||
КонецЕсли;
|
||||
|
||||
Если СвойстваСертификата.ДатаОкончанияЗакрытогоКлюча > НачалоДня(НаДату) Тогда
|
||||
Возврат "";
|
||||
КонецЕсли;
|
||||
|
||||
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'На %1 просрочен закрытый ключ сертификата.'"), Формат(НачалоДня(НаДату), "ДЛФ=D"));
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Только для внутреннего использования.
|
||||
Функция ТекстОшибкиСервисаСертификатНедействителен() Экспорт
|
||||
|
||||
@@ -1670,25 +1686,7 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Только для внутреннего использования.
|
||||
//
|
||||
// Параметры:
|
||||
// КонтейнерПодписи - КонтейнерПодписейКриптографии
|
||||
// ДобавкаВремени - Число
|
||||
// ДатаСеанса - Дата
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - параметры подписи криптографии:
|
||||
// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии
|
||||
// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью менеджера криптографии.
|
||||
// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени.
|
||||
// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи.
|
||||
// - Неопределено - неподтвержденная дата подписи отсутствует в данных подписи.
|
||||
// * ДатаПоследнейМеткиВремени - Дата - дата последней метки времени.
|
||||
// * Сертификат - СертификатКриптографии - сертификат подписанта.
|
||||
// * ОписаниеСертификата - см. ЭлектроннаяПодписьКлиент.СвойстваСертификата.
|
||||
//
|
||||
Функция ПараметрыПодписиКриптографии(КонтейнерПодписи, ДобавкаВремени, ДатаСеанса) Экспорт
|
||||
Функция НовыеПараметрыПодписиКриптографии() Экспорт
|
||||
|
||||
ПараметрыПодписи = Новый Структура;
|
||||
|
||||
@@ -1701,13 +1699,24 @@
|
||||
ПараметрыПодписи.Вставить("ОписаниеСертификата");
|
||||
ПараметрыПодписи.Вставить("Сертификат");
|
||||
|
||||
Подпись = КонтейнерПодписи.Подписи[0];
|
||||
Возврат ПараметрыПодписи;
|
||||
|
||||
СертификатСуществует = СертификатСуществует(Подпись.СертификатПодписи);
|
||||
КонецФункции
|
||||
|
||||
Если СертификатСуществует Тогда
|
||||
ПараметрыПодписи.ОписаниеСертификата = СвойстваСертификата(Подпись.СертификатПодписи, ДобавкаВремени);
|
||||
КонецЕсли;
|
||||
// Только для внутреннего использования.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - параметры подписи криптографии:
|
||||
// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии
|
||||
// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью менеджера криптографии.
|
||||
// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени.
|
||||
// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи.
|
||||
// - Неопределено - неподтвержденная дата подписи отсутствует в данных подписи.
|
||||
// * ДатаПоследнейМеткиВремени - Дата - дата последней метки времени.
|
||||
// * Сертификат - СертификатКриптографии - сертификат подписанта.
|
||||
// * ОписаниеСертификата - см. ЭлектроннаяПодписьКлиент.СвойстваСертификата.
|
||||
//
|
||||
Функция ПараметрыПодписиКриптографии(ПараметрыПодписи, Подпись, СертификатСуществует, ДобавкаВремени, ДатаСеанса) Экспорт
|
||||
|
||||
ДатаПодписиИзМетки = Дата(3999, 12, 31);
|
||||
|
||||
@@ -2443,16 +2452,24 @@
|
||||
КонецФункции
|
||||
|
||||
// См. ЭлектроннаяПодписьКлиент.ПредставлениеСертификата.
|
||||
Функция ПредставлениеСертификата(Сертификат, ДобавкаВремени) Экспорт
|
||||
Функция ПредставлениеСертификата(Сертификат, ДобавкаВремени = Неопределено) Экспорт
|
||||
|
||||
Представление = "";
|
||||
ЭлектроннаяПодписьКлиентСерверЛокализация.ПриПолученииПредставленияСертификата(Сертификат, ДобавкаВремени, Представление);
|
||||
|
||||
Если ПустаяСтрока(Представление) Тогда
|
||||
Если ТипЗнч(Сертификат) = Тип("Структура") Тогда
|
||||
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1, до %2'"),
|
||||
ПредставлениеСубъекта(Сертификат.Сертификат),
|
||||
Формат(Сертификат.ДействителенДо, "ДФ=MM.yyyy"));
|
||||
Иначе
|
||||
ДатыСертификата = ДатыСертификата(Сертификат, ДобавкаВремени);
|
||||
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1, до %2'"),
|
||||
ПредставлениеСубъекта(Сертификат),
|
||||
Формат(ДатыСертификата.ДатаОкончания, "ДФ=MM.yyyy"));
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Представление;
|
||||
|
||||
КонецФункции
|
||||
@@ -2518,23 +2535,43 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СвойстваСертификата(Сертификат, ДобавкаВремени) Экспорт
|
||||
Функция СвойстваСертификата(Сертификат, ДобавкаВремени, ДвоичныеДанныеСертификата = Неопределено) Экспорт
|
||||
|
||||
ДатыСертификата = ДатыСертификата(Сертификат, ДобавкаВремени);
|
||||
|
||||
Свойства = Новый Структура;
|
||||
Свойства.Вставить("Отпечаток", Base64Строка(Сертификат.Отпечаток));
|
||||
Свойства.Вставить("СерийныйНомер", Сертификат.СерийныйНомер);
|
||||
Свойства.Вставить("Представление", ПредставлениеСертификата(Сертификат, ДобавкаВремени));
|
||||
Свойства.Вставить("КомуВыдан", ПредставлениеСубъекта(Сертификат));
|
||||
Свойства.Вставить("КемВыдан", ПредставлениеИздателя(Сертификат));
|
||||
Свойства.Вставить("ДатаНачала", ДатыСертификата.ДатаНачала);
|
||||
Свойства.Вставить("ДатаОкончания", ДатыСертификата.ДатаОкончания);
|
||||
Свойства.Вставить("ДействителенДо", ДатыСертификата.ДатаОкончания);
|
||||
Свойства.Вставить("Назначение", ПолучитьНазначение(Сертификат));
|
||||
Свойства.Вставить("Подписание", Сертификат.ИспользоватьДляПодписи);
|
||||
Свойства.Вставить("Шифрование", Сертификат.ИспользоватьДляШифрования);
|
||||
|
||||
Если ДвоичныеДанныеСертификата <> Неопределено Тогда
|
||||
|
||||
ДополнительныеСвойстваСертификата = ДополнительныеСвойстваСертификата(ДвоичныеДанныеСертификата, ДобавкаВремени);
|
||||
|
||||
Если ЗначениеЗаполнено(ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча) Тогда
|
||||
Свойства.Вставить("ДействителенДо",
|
||||
Мин(ДатыСертификата.ДатаОкончания, ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча));
|
||||
Иначе
|
||||
Свойства.Вставить("ДействителенДо", ДатыСертификата.ДатаОкончания);
|
||||
КонецЕсли;
|
||||
|
||||
Свойства.Вставить("ДатаНачалаЗакрытогоКлюча", ДополнительныеСвойстваСертификата.ДатаНачалаЗакрытогоКлюча);
|
||||
Свойства.Вставить("ДатаОкончанияЗакрытогоКлюча", ДополнительныеСвойстваСертификата.ДатаОкончанияЗакрытогоКлюча);
|
||||
|
||||
Свойства.Вставить("Представление", ПредставлениеСертификата(
|
||||
Новый Структура("Сертификат, ДействителенДо", Сертификат, Свойства.ДействителенДо),
|
||||
ДобавкаВремени));
|
||||
Иначе
|
||||
Свойства.Вставить("ДействителенДо", ДатыСертификата.ДатаОкончания);
|
||||
Свойства.Вставить("Представление", ПредставлениеСертификата(Сертификат, ДобавкаВремени));
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Свойства;
|
||||
|
||||
КонецФункции
|
||||
@@ -2562,7 +2599,12 @@
|
||||
|
||||
Строка = Таблица.Добавить();
|
||||
Строка.Свойство = НСтр("ru = 'Действителен до:'");
|
||||
Если ТипЗнч(СвойстваСертификата) <> Тип("Структура") Или СвойстваСертификата.ДействителенДо = СвойстваСертификата.ДатаОкончания Тогда
|
||||
Строка.Значение = Формат(СвойстваСертификата.ДействителенДо, "ДЛФ=D");
|
||||
Иначе
|
||||
Строка.Значение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = '%1 (срок действия закрытого ключа)'"), Формат(СвойстваСертификата.ДействителенДо, "ДЛФ=D"));
|
||||
КонецЕсли;
|
||||
|
||||
Строка = Таблица.Добавить();
|
||||
Строка.Свойство = НСтр("ru = 'Назначение:'");
|
||||
@@ -3128,7 +3170,7 @@
|
||||
СвойстваСертификата.КемВыдан,
|
||||
СвойстваСертификата.КомуВыдан,
|
||||
Формат(СвойстваСертификата.ДатаНачала, "ДЛФ=D"),
|
||||
Формат(СвойстваСертификата.ДатаОкончания, "ДЛФ=D"));
|
||||
Формат(СвойстваСертификата.ДействителенДо, "ДЛФ=D"));
|
||||
|
||||
Возврат СведенияОСертификате;
|
||||
|
||||
@@ -3636,10 +3678,17 @@
|
||||
|
||||
#Область СодержимоеСертификата
|
||||
|
||||
Функция ИдентификаторКлючаУдостоверяющегоЦентра(Данные) Экспорт
|
||||
Функция ДополнительныеСвойстваСертификата(Данные, ДобавкаВремени = Неопределено) Экспорт
|
||||
|
||||
Структура = Новый Структура;
|
||||
Структура.Вставить("ТекстОшибки", "");
|
||||
Структура.Вставить("ДатаНачалаЗакрытогоКлюча", Дата(1,1,1));
|
||||
Структура.Вставить("ДатаОкончанияЗакрытогоКлюча", Дата(1,1,1));
|
||||
Структура.Вставить("ИдентификаторКлючаУдостоверяющегоЦентра", "");
|
||||
Структура.Вставить("СодержитВстроеннуюЛицензиюКриптоПро", Ложь);
|
||||
|
||||
ДвоичныеДанные = ДвоичныеДанныеИзДанных(Данные,
|
||||
"ЭлектроннаяПодписьСлужебныйКлиентСервер.ИдентификаторКлючаУдостоверяющегоЦентра");
|
||||
"ЭлектроннаяПодписьСлужебныйКлиентСервер.ДополнительныеСвойстваСертификата");
|
||||
|
||||
АнализДанных = НовыйАнализДанных(ДвоичныеДанные);
|
||||
|
||||
@@ -3659,7 +3708,8 @@
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 2);
|
||||
Целое = ПрочитатьПотоковоеЦелое(АнализДанных);
|
||||
Если Целое <> 2 Тогда
|
||||
Возврат Неопределено;
|
||||
Структура.ТекстОшибки = НСтр("ru = 'Данные не являются сертификатом.'");
|
||||
Возврат Структура;
|
||||
КонецЕсли;
|
||||
ПропуститьРодительскийБлок(АнализДанных);
|
||||
// version
|
||||
@@ -3683,7 +3733,8 @@
|
||||
// [3] EXPLICIT SEQUENCE SIZE (1..MAX) OF Extension (extensions).
|
||||
ПропуститьНачалоБлока(АнализДанных, 2, 3);
|
||||
Если АнализДанных.ЕстьОшибка Тогда
|
||||
Возврат Неопределено;
|
||||
Структура.ТекстОшибки = НСтр("ru = 'Ошибка в данных сертификата.'");
|
||||
Возврат Структура;
|
||||
КонецЕсли;
|
||||
// SEQUENCE OF
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
@@ -3692,24 +3743,89 @@
|
||||
// SEQUENCE (extension).
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
Если АнализДанных.ЕстьОшибка Тогда
|
||||
Возврат Неопределено;
|
||||
Структура.ТекстОшибки = НСтр("ru = 'Ошибка в данных сертификата.'");
|
||||
Возврат Структура;
|
||||
КонецЕсли;
|
||||
// OBJECT IDENTIFIER
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 6);
|
||||
|
||||
РазмерДанных = АнализДанных.Родители[0].РазмерДанных;
|
||||
Если РазмерДанных = 0 Тогда
|
||||
ПриОшибкеСтруктурыДанных(АнализДанных);
|
||||
Возврат Неопределено;
|
||||
Структура.ТекстОшибки = НСтр("ru = 'Ошибка в данных сертификата.'");
|
||||
Возврат Структура;
|
||||
КонецЕсли;
|
||||
|
||||
Если РазмерДанных = 3 Тогда
|
||||
Буфер = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, РазмерДанных); // БуферДвоичныхДанных
|
||||
СтрокаБуфера = ПолучитьHexСтрокуИзБуфераДвоичныхДанных(Буфер);
|
||||
|
||||
Если СтрокаБуфера = "551D23" Тогда //2.5.29.35 authorityKeyIdentifier
|
||||
ПропуститьРодительскийБлок(АнализДанных); // OBJECT IDENTIFIER
|
||||
Если СтрокаБуфера = "551D23" Тогда // 2.5.29.35 authorityKeyIdentifier
|
||||
ЗаполнитьИдентификаторКлючаУдостоверяющегоЦентра(ПрочитанныйБлок(АнализДанных, 0, 4, Истина), Структура);
|
||||
ИначеЕсли СтрокаБуфера = "551D10" Тогда // 2.5.29.16 privateKeyUsagePeriod
|
||||
ЗаполнитьПериодДействияЗакрытогоКлюча(ПрочитанныйБлок(АнализДанных, 0, 4, Истина), Структура, ДобавкаВремени);
|
||||
КонецЕсли;
|
||||
|
||||
ИначеЕсли РазмерДанных = 7 Тогда
|
||||
Буфер = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, РазмерДанных); // БуферДвоичныхДанных
|
||||
СтрокаБуфера = ПолучитьHexСтрокуИзБуфераДвоичныхДанных(Буфер);
|
||||
Если СтрокаБуфера = "2A850302023102" Тогда // 1.2.643.2.2.49.2
|
||||
Структура.СодержитВстроеннуюЛицензиюКриптоПро = Истина;
|
||||
КонецЕсли;
|
||||
ПропуститьРодительскийБлок(АнализДанных); // OBJECT IDENTIFIER
|
||||
Иначе
|
||||
ПропуститьРодительскийБлок(АнализДанных); // OBJECT IDENTIFIER
|
||||
КонецЕсли;
|
||||
|
||||
ПропуститьРодительскийБлок(АнализДанных); // SEQUENCE
|
||||
КонецЦикла;
|
||||
Возврат Структура;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ЗаполнитьПериодДействияЗакрытогоКлюча(ДвоичныеДанные, Структура, ДобавкаВремени)
|
||||
|
||||
АнализДанных = НовыйАнализДанных(ДвоичныеДанные);
|
||||
|
||||
// OCTET STRING
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 4);
|
||||
|
||||
// PrivateKeyUsagePeriod ::= SEQUENCE {
|
||||
// notBefore [0] GeneralizedTime OPTIONAL,
|
||||
// notAfter [1] GeneralizedTime OPTIONAL }
|
||||
// SEQUENCE
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 16);
|
||||
|
||||
// [0]
|
||||
Если ПропуститьНачалоБлока(АнализДанных, 2, 0, Ложь) Тогда
|
||||
БуферДаты = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, 14);
|
||||
ПредставлениеДаты = ПолучитьСтрокуИзБуфераДвоичныхДанных(БуферДаты);
|
||||
ОписаниеТипа = Новый ОписаниеТипов("Дата");
|
||||
Структура.ДатаНачалаЗакрытогоКлюча = ОписаниеТипа.ПривестиЗначение(ПредставлениеДаты);
|
||||
ПропуститьРодительскийБлок(АнализДанных); // [0]
|
||||
КонецЕсли;
|
||||
|
||||
// [1]
|
||||
Если ПропуститьНачалоБлока(АнализДанных, 2, 1, Ложь) Тогда
|
||||
БуферДаты = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, 14);
|
||||
ПредставлениеДаты = ПолучитьСтрокуИзБуфераДвоичныхДанных(БуферДаты);
|
||||
ОписаниеТипа = Новый ОписаниеТипов("Дата");
|
||||
Структура.ДатаОкончанияЗакрытогоКлюча = ОписаниеТипа.ПривестиЗначение(ПредставлениеДаты);
|
||||
ПропуститьРодительскийБлок(АнализДанных); // [1]
|
||||
КонецЕсли;
|
||||
|
||||
Если ДобавкаВремени <> Неопределено И ЗначениеЗаполнено(Структура.ДатаНачалаЗакрытогоКлюча) Тогда
|
||||
Структура.ДатаНачалаЗакрытогоКлюча = Структура.ДатаНачалаЗакрытогоКлюча + ДобавкаВремени;
|
||||
КонецЕсли;
|
||||
|
||||
Если ДобавкаВремени <> Неопределено И ЗначениеЗаполнено(Структура.ДатаОкончанияЗакрытогоКлюча) Тогда
|
||||
Структура.ДатаОкончанияЗакрытогоКлюча = Структура.ДатаОкончанияЗакрытогоКлюча + ДобавкаВремени;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаполнитьИдентификаторКлючаУдостоверяющегоЦентра(ДвоичныеДанные, Структура)
|
||||
|
||||
АнализДанных = НовыйАнализДанных(ДвоичныеДанные);
|
||||
// OCTET STRING
|
||||
ПропуститьНачалоБлока(АнализДанных, 0, 4);
|
||||
|
||||
@@ -3726,19 +3842,10 @@
|
||||
Если Не АнализДанных.ЕстьОшибка Тогда
|
||||
РазмерДанных = АнализДанных.Родители[0].РазмерДанных;
|
||||
Буфер = АнализДанных.Буфер.Прочитать(АнализДанных.Смещение, РазмерДанных); // БуферДвоичныхДанных
|
||||
Возврат ПолучитьHexСтрокуИзБуфераДвоичныхДанных(Буфер);
|
||||
Структура.ИдентификаторКлючаУдостоверяющегоЦентра = ПолучитьHexСтрокуИзБуфераДвоичныхДанных(Буфер);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
ПропуститьРодительскийБлок(АнализДанных); // OBJECT IDENTIFIER
|
||||
ПропуститьРодительскийБлок(АнализДанных); // SEQUENCE
|
||||
КонецЦикла;
|
||||
|
||||
Возврат Неопределено;
|
||||
|
||||
КонецФункции
|
||||
КонецПроцедуры
|
||||
|
||||
Функция АлгоритмСформированнойПодписи(ДанныеПодписи, ВключаяOID = Ложь, ТолькоOID = Ложь, АлгоритмПодписиНеСоответствуетГОСТ = Неопределено) Экспорт
|
||||
|
||||
@@ -4381,7 +4488,7 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ПриОшибкеСтруктурыДанных(АнализДанных) Экспорт
|
||||
Процедура ПриОшибкеСтруктурыДанных(АнализДанных)
|
||||
|
||||
АнализДанных.ЭтоОшибкаСтруктурыДанных = Истина;
|
||||
АнализДанных.ЕстьОшибка = Истина;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
+1
-1
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="6f3c5b90-b030-4267-a973-33d12c2c7680">
|
||||
<name>КомпонентаСканированияДокументов_3_0_1_1021</name>
|
||||
<name>КомпонентаСканированияДокументов_3_0_1_1027</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Компонента сканирования документов</value>
|
||||
@@ -1,17 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ee6aab0e-cece-4e84-9517-f03a6acdee78">
|
||||
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="aac56bf4-7a0d-4e01-9cae-96015ef65bb7">
|
||||
<name>БиблиотекаСтандартныхПодсистем</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Библиотека стандартных подсистем, редакция 3.1</value>
|
||||
</synonym>
|
||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="1dd3e6f2-524b-4f95-8be0-adbbb06d5322"/>
|
||||
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="98038930-c24f-4999-b1a2-c3486d9e0ba2"/>
|
||||
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="6c761e1b-a225-4054-bb04-d335a6b72ad6"/>
|
||||
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="da23e67f-e963-4a56-891e-80422de45449"/>
|
||||
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="6d80d825-f787-44c1-ad58-d000070f335e"/>
|
||||
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="083bee83-ab91-45d4-b85a-fe063d47339c"/>
|
||||
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="5b64c580-2049-4cff-a128-b609cf734a72"/>
|
||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="ae064752-fcb4-48d1-b512-bff639e60924"/>
|
||||
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="ca7b6180-97a4-4c02-8d20-075996090d45"/>
|
||||
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="18e75aba-48f1-4e28-9fef-3121e217725d"/>
|
||||
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="2859e12a-7d03-43e2-82eb-853b4d73cde7"/>
|
||||
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="001121b3-a6ab-4280-8a6a-c3046ad6af6e"/>
|
||||
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="a1eea14d-236d-4494-b9d6-4c828269e808"/>
|
||||
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="d3ad715e-8b10-4b34-86c2-f1ad46b5908d"/>
|
||||
<defaultRunMode>ManagedApplication</defaultRunMode>
|
||||
<usePurposes>PersonalComputer</usePurposes>
|
||||
<scriptVariant>Russian</scriptVariant>
|
||||
@@ -19,7 +19,7 @@
|
||||
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
|
||||
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
|
||||
<vendor>Фирма "1С"</vendor>
|
||||
<version>3.1.9.232</version>
|
||||
<version>3.1.9.238</version>
|
||||
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
|
||||
<includeHelpInContents>true</includeHelpInContents>
|
||||
<usedMobileApplicationFunctionalities>
|
||||
@@ -856,7 +856,7 @@
|
||||
<commonTemplates>CommonTemplate.КомпонентаПечатиQRКода</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.КомпонентаПечатиШтрихкодов_10_0_9_1</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.КомпонентаПоискаСтрок</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.КомпонентаСканированияДокументов_3_0_1_1021</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.КомпонентаСканированияДокументов_3_0_1_1027</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.МакетШтемпеляЭЦПOfficeOpen</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.ПолучениеДереваОбработчиковОбновления</commonTemplates>
|
||||
<commonTemplates>CommonTemplate.ПустойМакетDOCX</commonTemplates>
|
||||
|
||||
@@ -1 +1 @@
|
||||
{6,1,1,f9825f49-0380-4869-b29d-c48407ee952d,1,4370b1a3-a300-489a-960a-e212de4303dc,"3.1.9.232","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7575,1,0,ee6aab0e-cece-4e84-9517-f03a6acdee78,ee6aab0e-cece-4e84-9517-f03a6acdee78,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,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,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,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,1983fe34-c984-4659-ba41-0e94504f8989,1983fe34-c984-4659-ba41-0e94504f8989,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,153e11ac-f898-46a5-98c6-734adb933ca2,153e11ac-f898-46a5-98c6-734adb933ca2,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,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,1,0,f24de2ea-fcda-4052-b90f-e9d84314c4f2,f24de2ea-fcda-4052-b90f-e9d84314c4f2,1,0,ff8ae395-c740-4a30-a048-0d57eef6267f,ff8ae395-c740-4a30-a048-0d57eef6267f,1,0,51d06532-f61a-4ed5-afaa-cc4563633e0c,51d06532-f61a-4ed5-afaa-cc4563633e0c,1,0,0e49d980-581b-459f-a4b0-024e8c97e4c0,0e49d980-581b-459f-a4b0-024e8c97e4c0,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,a3001de6-272f-444e-a8db-ec8cc3a670a2,a3001de6-272f-444e-a8db-ec8cc3a670a2,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,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,4009cb3a-6754-481f-911b-907558cea38a,4009cb3a-6754Line truncated
|
||||
{6,1,1,f36026ea-55d4-4d07-b13f-115019322f13,1,eb0c239a-519d-4f00-8833-f3d8cffb88de,"3.1.9.238","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7575,1,0,aac56bf4-7a0d-4e01-9cae-96015ef65bb7,aac56bf4-7a0d-4e01-9cae-96015ef65bb7,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,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,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,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,1983fe34-c984-4659-ba41-0e94504f8989,1983fe34-c984-4659-ba41-0e94504f8989,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,153e11ac-f898-46a5-98c6-734adb933ca2,153e11ac-f898-46a5-98c6-734adb933ca2,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,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,1,0,f24de2ea-fcda-4052-b90f-e9d84314c4f2,f24de2ea-fcda-4052-b90f-e9d84314c4f2,1,0,ff8ae395-c740-4a30-a048-0d57eef6267f,ff8ae395-c740-4a30-a048-0d57eef6267f,1,0,51d06532-f61a-4ed5-afaa-cc4563633e0c,51d06532-f61a-4ed5-afaa-cc4563633e0c,1,0,0e49d980-581b-459f-a4b0-024e8c97e4c0,0e49d980-581b-459f-a4b0-024e8c97e4c0,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,a3001de6-272f-444e-a8db-ec8cc3a670a2,a3001de6-272f-444e-a8db-ec8cc3a670a2,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,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,4009cb3a-6754-481f-911b-907558cea38a,4009cb3a-6754Line truncated
|
||||
+10
-10
@@ -269,7 +269,7 @@
|
||||
Если ЗначениеЗаполнено(Элемент.ТекущиеДанные.ОбъектСопоставления) Тогда
|
||||
Элемент.ТекущиеДанные.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусСопоставлен();
|
||||
Иначе
|
||||
Элемент.ТекущиеДанные.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен();
|
||||
Элемент.ТекущиеДанные.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен();
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Отбор = Новый Структура("ОбязательнаДляЗаполнения", Истина);
|
||||
@@ -280,7 +280,7 @@
|
||||
Для каждого КолонкаТаблицы Из КолонкиОбязательнаДляЗаполнения Цикл
|
||||
Если Не ЗначениеЗаполнено(Элемент.ТекущиеДанные[ПрефиксТабличнойЧасти + КолонкаТаблицы.Родитель]) Тогда
|
||||
РезультатСопоставленияСтроки = ?(ЗначениеЗаполнено(Элемент.ТекущиеДанные.ОписаниеОшибки),
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеоднозначность(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеоднозначность(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
Прервать;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
@@ -488,7 +488,7 @@
|
||||
Элементы.ВставитьВСписок.Видимость = Ложь;
|
||||
ПодтверждениеЗакрытияФормы = Истина;
|
||||
Если ТипЗагрузки = "ТабличнаяЧасть" Тогда
|
||||
Отбор = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
Отбор = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
Строки = ТаблицаСопоставленияДанных.НайтиСтроки(Отбор);
|
||||
Если Строки.Количество() > 0 Тогда
|
||||
Оповещение = Новый ОписаниеОповещения("ПослеВопросаОДобавлениеВТабличнуюЧасть", ЭтотОбъект);
|
||||
@@ -525,7 +525,7 @@
|
||||
Строка[ПрефиксТабличнойЧасти + Параметр.Имя] = Результат;
|
||||
Строка.ОписаниеОшибки = СтрЗаменить(Строка.ОписаниеОшибки, Параметр.Имя + ";", "");
|
||||
Строка.РезультатСопоставленияСтроки = ?(СтрДлина(Строка.ОписаниеОшибки) = 0,
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусСопоставлен(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусСопоставлен(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Строка = ТаблицаСопоставленияДанных.НайтиПоИдентификатору(Параметр.Идентификатор);
|
||||
@@ -535,7 +535,7 @@
|
||||
Строка.СписокНеоднозначностей = Неопределено;
|
||||
Иначе
|
||||
Если Строка.РезультатСопоставленияСтроки <> ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеоднозначность() Тогда
|
||||
Строка.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен();
|
||||
Строка.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен();
|
||||
Строка.СписокНеоднозначностей = Неопределено;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
@@ -576,7 +576,7 @@
|
||||
КоличествоСопоставленных = Результат.Количество();
|
||||
|
||||
Если ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда
|
||||
Отбор = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
Отбор = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
Результат = ТаблицаСопоставленияДанных.НайтиСтроки(Отбор);
|
||||
КоличествоНеоднозначных = ТаблицаСопоставленияДанных.Количество() - КоличествоСопоставленных - Результат.Количество();
|
||||
Иначе
|
||||
@@ -1188,9 +1188,9 @@
|
||||
Если ТипЗагрузки = "УниверсальнаяЗагрузка" Тогда
|
||||
УстановитьОформлениеДляСтраницыСопоставления(Истина, Элементы.ПояснениеДляСопоставленияДанных, Истина, НСтр("ru = 'Загрузить данные >'"));
|
||||
ИначеЕсли ТипЗагрузки = "ТабличнаяЧасть" Тогда
|
||||
ОтборНесопоставлен = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
ОтборНеСопоставлен = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
ОтборНеоднозначность = Новый Структура("РезультатСопоставленияСтроки", ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеоднозначность());
|
||||
Если ТаблицаСопоставленияДанных.НайтиСтроки(ОтборНесопоставлен).Количество() = 0
|
||||
Если ТаблицаСопоставленияДанных.НайтиСтроки(ОтборНеСопоставлен).Количество() = 0
|
||||
И ТаблицаСопоставленияДанных.НайтиСтроки(ОтборНеоднозначность).Количество() = 0 Тогда
|
||||
// Все строки сопоставлены
|
||||
ПереходКСледующемуШагуЗагрузкиДанных();
|
||||
@@ -1850,7 +1850,7 @@
|
||||
КонецЦикла;
|
||||
|
||||
НоваяСтрока["РезультатСопоставленияСтроки"] = ?(ЗаполненыВсеОбязательныеКолонки,
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусСопоставлен(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен());
|
||||
ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусСопоставлен(), ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен());
|
||||
|
||||
Отбор = Новый Структура("Идентификатор", Строка.Идентификатор);
|
||||
|
||||
@@ -2690,7 +2690,7 @@
|
||||
Если Результат = КодВозвратаДиалога.Да Тогда
|
||||
Для каждого СтрокаТаблицы Из ТаблицаСопоставленияДанных Цикл
|
||||
СтрокаТаблицы.ОбъектСопоставления = Неопределено;
|
||||
СтрокаТаблицы.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен();
|
||||
СтрокаТаблицы.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен();
|
||||
СтрокаТаблицы.СписокНеоднозначностей = Неопределено;
|
||||
СтрокаТаблицы.ОписаниеОшибки = "";
|
||||
КонецЦикла;
|
||||
|
||||
@@ -341,7 +341,7 @@
|
||||
СтрокаДанных.СписокНеоднозначностей.ЗагрузитьЗначения(НайденныеВарианты);
|
||||
СтрокаДанных.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеоднозначность();
|
||||
Иначе
|
||||
СтрокаДанных.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен();
|
||||
СтрокаДанных.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен();
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
@@ -479,7 +479,7 @@
|
||||
СтрокаТаблицыПустая = Истина;
|
||||
НоваяСтрока = ТаблицаСопоставления.Добавить();
|
||||
НоваяСтрока.Идентификатор = НомерСтроки - 1 - КорректировкаИдентификатора;
|
||||
НоваяСтрока.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНесопоставлен();
|
||||
НоваяСтрока.РезультатСопоставленияСтроки = ЗагрузкаДанныхИзФайлаКлиентСервер.СтатусНеСопоставлен();
|
||||
|
||||
Для НомерКолонки = 1 По ШаблонСДанными.ШиринаТаблицы Цикл
|
||||
|
||||
|
||||
+2
-2
@@ -1400,9 +1400,9 @@
|
||||
ОбновитьЗначение(Содержание, "ПодтвержденоОзнакомлениеСИнформацией");
|
||||
ОбновитьЗначение(Содержание, "ОшибкаУстановкиСертификата");
|
||||
ОбновитьЗначение(Содержание, "ДатаУстановкиСертификата");
|
||||
НаименованиеСертификата = ЭлектроннаяПодпись.ПредставлениеСертификата(
|
||||
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(
|
||||
Новый СертификатКриптографии(ТекущийОбъект.ДанныеСертификата.Получить()));
|
||||
|
||||
НаименованиеСертификата = СвойстваСертификата.Представление;
|
||||
КонецЕсли;
|
||||
|
||||
Если ТекущийОбъект.Наименование <> НаименованиеСертификата Тогда
|
||||
|
||||
+4
-2
@@ -60,6 +60,7 @@
|
||||
Если СостояниеЗаявления = Перечисления.СостоянияЗаявленияНаВыпускСертификата.Исполнено Тогда
|
||||
Элементы.ФормаПоказатьЗаявлениеПоКоторомуБылПолученСертификат.Доступность = Истина;
|
||||
Элементы.ПоказатьЗаявлениеПоКоторомуБылПолученСертификат.Доступность = Истина;
|
||||
Элементы.ПоказатьЗаявлениеПоКоторомуБылПолученСертификат.Видимость = Истина;
|
||||
Иначе
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
@@ -1211,7 +1212,7 @@
|
||||
Объект = Сертификат.ПолучитьОбъект();
|
||||
|
||||
// Важно заполнить отпечаток, чтобы не было возможности добавить дубль сертификата.
|
||||
Объект.Наименование = ЭлектроннаяПодпись.ПредставлениеСертификата(СертификатКриптографии);
|
||||
Объект.Наименование = СвойстваСертификата.Представление;
|
||||
|
||||
Объект.Подписание = СвойстваСертификата.Подписание;
|
||||
Объект.Шифрование = СвойстваСертификата.Шифрование;
|
||||
@@ -1490,7 +1491,7 @@
|
||||
// Параметры:
|
||||
// СертификатОбъект - СправочникОбъект.СертификатыКлючейЭлектроннойПодписиИШифрования.
|
||||
//
|
||||
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(СертификатОбъект) Экспорт
|
||||
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(СертификатОбъект, ЗаписатьОбъект) Экспорт
|
||||
|
||||
СодержаниеЗаявления = СертификатОбъект.УдалитьСодержаниеЗаявления.Получить();
|
||||
ДатаПолученияСертификата = '39991231235959';
|
||||
@@ -1528,6 +1529,7 @@
|
||||
КонецЕсли;
|
||||
СертификатОбъект.ДатаПолученияСертификата = ДатаПолученияСертификата;
|
||||
СертификатОбъект.УдалитьСостояниеЗаявления = Неопределено;
|
||||
ЗаписатьОбъект = Истина;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
@@ -1,82 +1,106 @@
|
||||
<!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.10570.1001"></meta></head><body>
|
||||
<p>Предназначен для работы с файлами, присоединенными к объекту программы.</p>
|
||||
<p>Открывается по ссылке <strong>Файлы</strong> из карточки объекта программы.</p>
|
||||
<p>Предназначен для работы с файлами, присоединенными к объекту приложения.</p>
|
||||
<p>Открывается по ссылке <strong>Файлы</strong> из карточки объекта приложения.</p>
|
||||
<p>В списке выводится:</p>
|
||||
<ul><li><img src="CommonPicture.ПодписанЗашифрованЗаголовок"></img> - наличие ЭП или шифрования.
|
||||
</li><li><strong>Наименование</strong> - полное имя файла. Значок рядом с наименованием указывает тип файла. При наличии в колонке выводится также и описание - подробные сведения о файле.
|
||||
</li><li><strong>Автор</strong> - пользователь, который добавил файл;
|
||||
</li><li><strong>Дата изменения</strong> - дата изменения данных файла (местное время); </li></ul><p>С помощью команды <strong>Еще - Дополнительно - Изменить форму</strong> можно добавить сведения:</p>
|
||||
</li>
|
||||
<li><strong>Наименование</strong> - полное имя файла. Значок рядом с наименованием указывает тип файла. При наличии в колонке выводится также и описание - подробные сведения о файле.
|
||||
</li>
|
||||
<li><strong>Автор</strong> - пользователь, который добавил файл;
|
||||
</li>
|
||||
<li><strong>Дата изменения</strong> - дата изменения данных файла (местное время); </li></ul><p>С помощью команды <strong>Еще - Дополнительно - Изменить форму</strong> можно добавить сведения:</p>
|
||||
<ul><li>
|
||||
<div><strong>Дата создания</strong> - дата и время ввода файла в программу;</div></li></ul><ul><li><strong>Редактирует</strong> - пользователь, который занял файл для редактирования и т.д. </li></ul><h3>Добавление нового файла</h3>
|
||||
<div><strong>Дата создания</strong> - дата и время ввода файла в приложение;</div></li></ul><ul><li><strong>Редактирует</strong> - пользователь, который занял файл для редактирования и т.д. </li></ul><h3>Добавление нового файла</h3>
|
||||
<ul><li>
|
||||
<div>Нажмите <strong>Добавить</strong>. Выберите способ ввода файла из выпадающего меню:</div>
|
||||
<ul><li>
|
||||
<div><strong>Файл с компьютера</strong>;</div>
|
||||
<div><strong>Файл с устройства</strong>;</div>
|
||||
<ul><li>
|
||||
<div>укажите путь к файлу на компьютере.</div></li></ul></li><li>
|
||||
<div>укажите путь к файлу на устройстве.</div></li></ul></li>
|
||||
<li>
|
||||
<div><strong>По шаблону</strong>;</div>
|
||||
<ul><li>
|
||||
<div>выберите шаблон из предлагаемого списка.</div></li></ul></li><li>
|
||||
<div>выберите шаблон из предлагаемого списка.</div></li></ul></li>
|
||||
<li>
|
||||
<div><strong>со сканера</strong>.</div>
|
||||
<ul><li>
|
||||
<div>открывается <a href="DataProcessor.Сканирование.Form.РезультатСканирования/Help">окно для работы со сканированием</a>. Следуйте указаниям программы.</div></li></ul></li></ul></li><li>После добавления файла автоматически открывается обновленный список файлов.
|
||||
</li><li>
|
||||
<div>Файл хранится в специальном каталоге. Для каждого объекта программы формируется отдельная папка.</div>
|
||||
</li><li>
|
||||
<div>В некоторых списках программы элементы, к которым присоединены файлы, обозначаются значком <img src="CommonPicture.Скрепка"></img>.</div></li></ul><h3>Загрузка файлов</h3>
|
||||
<div>открывается <a href="DataProcessor.Сканирование.Form.РезультатСканирования/Help">окно для работы со сканированием</a>. Следуйте указаниям приложения.</div></li></ul></li></ul></li>
|
||||
<li>После добавления файла автоматически открывается обновленный список файлов.
|
||||
</li>
|
||||
<li>
|
||||
<div>Файл хранится в специальном каталоге. Для каждого объекта приложения формируется отдельная папка.</div>
|
||||
</li>
|
||||
<li>
|
||||
<div>В некоторых списках приложения элементы, к которым присоединены файлы, обозначаются значком <img src="CommonPicture.Скрепка"></img>.</div></li></ul><h3>Загрузка файлов</h3>
|
||||
<ul><li>
|
||||
<div>Нажмите <strong>Еще - Загрузить файлы,</strong> укажите путь к файлам на компьютере.</div></li></ul><h3>Просмотр изображений в списке</h3>
|
||||
<div>Нажмите <strong>Еще - Загрузить файлы,</strong> укажите путь к файлам на устройстве.</div></li></ul><h3>Просмотр изображений в списке</h3>
|
||||
<ul><li>
|
||||
<div>Включите флажок <strong>Еще - Предпросмотр</strong>, для того чтобы можно было просматривать файлы изображений прямо в списке в специальном окне.</div></li></ul><h3>Просмотр карточки файла</h3>
|
||||
<ul><li>Нажмите <strong>Еще - Открыть карточку</strong> (нажмите клавишу <strong>F2</strong>), для того чтобы просмотреть <a href="DataProcessor.РаботаСФайлами.Form.ПрисоединенныйФайл/Help">свойства</a> выделенного в списке файла, открыв окно <strong>Присоединенный файл</strong>, также можно воспользоваться соответствующей командой контекстного меню.</li></ul><h3>Редактирование присоединенных файлов</h3>
|
||||
<ul><li>
|
||||
<div>
|
||||
<div>В тонком клиенте <a href="CommonForm.РедактированиеТабличногоДокумента/Help">редактирование файлов табличных документов</a> (формата <strong>.mxl</strong>) осуществляется во встроенной форме редактора табличных документов. В веб-клиенте необходимо загрузить приложение для редактирования этих файлов. Подробнее об особенностях редактирования табличных документов в веб-клиенте см. <a href="InformationRegister.ПользовательскиеМакетыПечати/Help">здесь</a>. </div></div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>
|
||||
<div>Для редактирования файлов других форматов на компьютере должны быть установлены соответствующие приложения, например, для редактирования файлов в формате Microsoft Word должно быть установлено это приложение.</div></div>
|
||||
</li><li>Команда <strong>Просмотреть</strong> открывает файл внешним приложением для просмотра или редактирования, в зависимости от того, помечен или нет файл как занятый другим пользователем для редактирования.
|
||||
<div>Для редактирования файлов других форматов на устройстве должны быть установлены соответствующие приложения, например, для редактирования файлов в формате Microsoft Word должно быть установлено это приложение.</div></div>
|
||||
</li>
|
||||
<li>Команда <strong>Просмотреть</strong> открывает файл внешним приложением для просмотра или редактирования, в зависимости от того, помечен или нет файл как занятый другим пользователем для редактирования.
|
||||
<div></div>
|
||||
<div></div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>
|
||||
<div>Команда <strong>Редактировать</strong> открывает файл в режиме редактирования, а также производит захват файла в программе. Захваченный файл будет недоступен для редактирования другим пользователям программы и помечается в списке зеленым цветом.</div></div>
|
||||
</li><li>
|
||||
<div>После окончания редактирования сохраните файл, закройте внешнее приложение. Нажмите <img src="CommonPicture.ЗакончитьРедактированиеФайла"></img> <strong>Сохранить и освободить файл в информационной базе</strong>, это действие освобождает файл, сохраняет его в программе и снимает пометку занятости для редактирования. </div>
|
||||
</li><li>
|
||||
<div>Команда <strong>Еще - Дополнительно -</strong> <strong>Отменить редактирование</strong> освобождает файл, не сохраняя произведенные в нем изменения в программе, и снимает пометку занятости для редактирования. Команда может быть полезна, если необходимо отказаться от результатов редактирования файла (например, при редактировании в файл были внесены нежелательные изменения или ошибки).</div></li></ul><h3>Печать файла</h3>
|
||||
<div>Команда <strong>Редактировать</strong> открывает файл в режиме редактирования, а также производит захват файла в приложении. Захваченный файл будет недоступен для редактирования другим пользователям приложения и помечается в списке зеленым цветом.</div></div>
|
||||
</li>
|
||||
<li>
|
||||
<div>После окончания редактирования сохраните файл, закройте внешнее приложение. Нажмите <img src="CommonPicture.ЗакончитьРедактированиеФайла"></img> <strong>Сохранить и освободить файл в информационной базе</strong>, это действие освобождает файл, сохраняет его в приложении и снимает пометку занятости для редактирования. </div>
|
||||
</li>
|
||||
<li>
|
||||
<div>Команда <strong>Еще - Дополнительно -</strong> <strong>Отменить редактирование</strong> освобождает файл, не сохраняя произведенные в нем изменения в приложении, и снимает пометку занятости для редактирования. Команда может быть полезна, если необходимо отказаться от результатов редактирования файла (например, при редактировании в файл были внесены нежелательные изменения или ошибки).</div></li></ul><h3>Печать файла</h3>
|
||||
<p>Нажмите кнопку <strong>Печать</strong>, из выпадающего меню выберите нужное действие, например, <strong>Сразу на принтер</strong>. Возможны и другие действия.</p>
|
||||
<h3>Отправка файла по электронной почте</h3>
|
||||
<ul><li>
|
||||
<div>Нажмите кнопку <strong>Отправить</strong>. Программа формирует почтовое сообщение, заполните необходимые поля. Присоединенный файл автоматически будет приложением данного письма.</div></li></ul><h3>Сохранение файла</h3>
|
||||
<div>Нажмите кнопку <strong>Отправить</strong>. приложение формирует почтовое сообщение, заполните необходимые поля. Присоединенный файл автоматически будет приложением данного письма.</div></li></ul><h3>Сохранение файла</h3>
|
||||
<ul><li>
|
||||
<div>С помощью команды <strong>Еще - Дополнительно - Сохранить как</strong> можно сохранить файл в указанный каталог на компьютере.</div>
|
||||
</li><li>
|
||||
<div>С помощью команды <strong>Еще - Дополнительно - Сохранить как</strong> можно сохранить файл в указанный каталог на устройстве.</div>
|
||||
</li>
|
||||
<li>
|
||||
<div>
|
||||
<div>Также можно воспользоваться соответствующей командой контекстного меню по правой кнопке мыши.</div></div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Соответствующей командой меню <strong>Еще - Дополнительно</strong> или контекстного меню по правой кнопке мыши можно <strong>Открыть каталог файла</strong> в Проводнике Windows.</div></li></ul><h3>Обновление файла</h3>
|
||||
<ul><li>С помощью команды <strong>Еще - Дополнительно - Обновить из файла на компьютере</strong> можно обновить файл из оригинального файла на компьютере (из которого изначально был создан файл в программе).
|
||||
</li><li>Также можно воспользоваться соответствующей командой контекстного меню по правой кнопке мыши.</li></ul><h3>Сравнение файлов</h3>
|
||||
<ul><li>С помощью команды <strong>Еще - Дополнительно - Обновить из файла на устройстве</strong> можно обновить файл из оригинального файла на устройстве (из которого изначально был создан файл в приложении).
|
||||
</li>
|
||||
<li>Также можно воспользоваться соответствующей командой контекстного меню по правой кнопке мыши.</li></ul><h3>Сравнение файлов</h3>
|
||||
<ul><li>
|
||||
<div>Выберите в списке файлы для сравнения.</div>
|
||||
</li><li>
|
||||
<div>Выполните команду <strong>Еще - Сравнить файлы</strong>. При первом сравнении файлов программа предлагает выбрать, с помощью какой офисной программы выполнить сравнение. После этого открываются файлы для сравнения в выбранной офисной программе. Программа для сравнения должна быть установлена на компьютере.</div></li></ul><h3>Электронная подпись и шифрование</h3>
|
||||
</li>
|
||||
<li>
|
||||
<div>Выполните команду <strong>Еще - Сравнить файлы</strong>. При первом сравнении файлов приложение предлагает выбрать, с помощью какого офисного приложения выполнить сравнение. После этого открываются файлы для сравнения в выбранном офисном приложении. Приложение для сравнения должна быть установлена на устртойстве.</div></li></ul><h3>Электронная подпись и шифрование</h3>
|
||||
<p>В выпадающем меню по кнопке <img src="CommonPicture.ПодписанЗашифрованЗаголовок" width="16" height="16"></img> <strong>Электронная подпись и шифрование</strong> доступны команды для работы с электронной подписью файлов:</p>
|
||||
<ul><li><strong>Подписать</strong> - создает ЭП для файла. Перед созданием ЭП программа предлагает <a>выбрать сертификат ЭП</a> из имеющихся на компьютере. Выбор сертификата можно сделать и во время персональных настроек программы. Подписанный файл становится недоступным для редактирования и отображается в списках со значком <img src="CommonPicture.ПодписанЭП" width="16" height="16"></img>.
|
||||
</li><li><strong>Сохранить вместе с электронной подписью</strong> - <a href="CommonForm.СохранениеВместеСЭлектроннойПодписью/Help">сохраняет подпись</a> в файл на компьютере. Команду можно использовать, например, если необходимо передать подписанный файл другому лицу.
|
||||
</li><li><strong>Добавить электронную подпись из файла</strong> - <a href="CommonForm.ДобавлениеЭлектроннойПодписиИзФайла/Help">добавляет подпись</a> к файлу. Команду можно использовать, например, если подпись (файл подписи) была получена позже, чем подписанный файл.
|
||||
</li><li><strong>Зашифровать</strong> - по команде происходит <a>шифрование файла</a>. В отличие от подписания могут использоваться несколько сертификатов, например, если необходимо зашифровать файл для нескольких пользователей. Зашифрованный файл в списках отображается со значком <img src="CommonPicture.Зашифрован" width="16" height="16"></img>.
|
||||
</li><li><strong>Расшифровать</strong> - по команде происходит <a>расшифровка файла</a>. Для расшифровки нужно ввести пароль к закрытому ключу.</li></ul><h3>Печать табличного документа со штампом электронной подписи</h3>
|
||||
<ul><li><strong>Подписать</strong> - создает ЭП для файла. Перед созданием ЭП приложение предлагает <a>выбрать сертификат ЭП</a> из имеющихся на устройстве. Выбор сертификата можно сделать и во время персональных настроек приложения. Также файл можно подписать по доверенности, выбрав соответствующую из списка. Подписанный файл становится недоступным для редактирования и отображается в списках со значком <img src="CommonPicture.ПодписанЭП" width="16" height="16"></img>.
|
||||
</li>
|
||||
<li><strong>Сохранить вместе с электронной подписью</strong> - <a href="CommonForm.СохранениеВместеСЭлектроннойПодписью/Help">сохраняет подпись</a> в файл на устройств. Команду можно использовать, например, если необходимо передать подписанный файл другому лицу.
|
||||
</li>
|
||||
<li><strong>Добавить электронную подпись из файла</strong> - <a href="CommonForm.ДобавлениеЭлектроннойПодписиИзФайла/Help">добавляет подпись</a> к файлу. Команду можно использовать, например, если подпись (файл подписи) была получена позже, чем подписанный файл.
|
||||
</li>
|
||||
<li><strong>Зашифровать</strong> - по команде происходит <a>шифрование файла</a>. В отличие от подписания могут использоваться несколько сертификатов, например, если необходимо зашифровать файл для нескольких пользователей. Зашифрованный файл в списках отображается со значком <img src="CommonPicture.Зашифрован" width="16" height="16"></img>.
|
||||
</li>
|
||||
<li><strong>Расшифровать</strong> - по команде происходит <a>расшифровка файла</a>. Для расшифровки нужно ввести пароль к закрытому ключу.</li></ul><h3>Печать табличного документа со штампом электронной подписи</h3>
|
||||
<ul><li>
|
||||
<div>Для печати подписанного электронной подписью табличного документа со штампами визуализации электронной подписи в списке присоединенных файлов предусмотрена команда <strong>Печать - Со штампом электронной подписи</strong>. </div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Предварительно, табличный документ должен быть подписан одной или несколькими электронными подписями в соответствии с тем, как это предусмотрено в документе.</div></li></ul><h3>Служебные присоединенные файлы (только для администратора)</h3>
|
||||
<ul><li>
|
||||
<div>В процессе работы с объектами программа также может присоединять к ним служебные файлы, например, файлы, которые создаются автоматически при отправке сведений в банк и т.д. Они могут быть интересны разработчику, но пользователь их видеть и редактировать не должен.</div>
|
||||
</li><li>
|
||||
<div>В процессе работы с объектами приложения также может присоединять к ним служебные файлы, например, файлы, которые создаются автоматически при отправке сведений в банк и т.д. Они могут быть интересны разработчику, но пользователь их видеть и редактировать не должен.</div>
|
||||
</li>
|
||||
<li>
|
||||
<div>Включите флажок меню Еще, для того чтобы <strong>Показывать служебные файлы</strong>. Флажок доступен только пользователям с ролью <strong>Полные права</strong>.</div>
|
||||
</li><li>
|
||||
</li>
|
||||
<li>
|
||||
<div>Служебные присоединенные файлы можно только просмотреть.</div></li></ul><h3>См. также:</h3>
|
||||
<ul><li>
|
||||
<div><a href="v8help://frame/form_common">Работа с формами</a>.</div></li></ul></body></html>
|
||||
@@ -704,6 +704,15 @@
|
||||
НаименованиеУровня = ОбъектАдреса[ИмяПоля];
|
||||
КонецЕсли;
|
||||
|
||||
ЭтоУровеньРегиона = СтрСравнить(ИмяПоля, "area") = 0;
|
||||
|
||||
Если ЭтоУровеньРегиона И ЗначениеЗаполнено(ОбъектАдреса.areaValue) Тогда
|
||||
ПредставлениеУровня = ОбъектАдреса.areaValue;
|
||||
Иначе
|
||||
ПредставлениеУровня = УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(НаименованиеУровня,
|
||||
ОбъектАдреса[ИмяПоля + "Type"], ЭтоУровеньРегиона);
|
||||
КонецЕсли;
|
||||
|
||||
ПредставлениеУровня = УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(НаименованиеУровня,
|
||||
ОбъектАдреса[ИмяПоля + "Type"], СтрСравнить(ИмяПоля, "area") = 0);
|
||||
|
||||
|
||||
@@ -55,7 +55,8 @@
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<horizontalStretch>false</horizontalStretch>
|
||||
<wrap>true</wrap>
|
||||
<choiceButton>true</choiceButton>
|
||||
<dropListButton>true</dropListButton>
|
||||
<listChoiceMode>true</listChoiceMode>
|
||||
<chooseType>true</chooseType>
|
||||
<typeDomainEnabled>true</typeDomainEnabled>
|
||||
<textSize>Normal</textSize>
|
||||
|
||||
@@ -126,21 +126,16 @@
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ИмяУстройстваНачалоВыбора(Элемент, СтандартнаяОбработка)
|
||||
СтандартнаяОбработка = Ложь;
|
||||
Попытка
|
||||
МассивУстройств = РаботаСФайламиСлужебныйКлиент.ПолучитьУстройства(ЭтотОбъект, ПодключаемыйМодуль);
|
||||
Исключение
|
||||
МассивУстройств = Новый Массив;
|
||||
КонецПопытки;
|
||||
Если МассивУстройств.Количество() > 0 Тогда
|
||||
СписокВыбора = Новый СписокЗначений();
|
||||
Для Каждого Строка Из МассивУстройств Цикл
|
||||
СписокВыбора.Добавить(Строка);
|
||||
КонецЦикла;
|
||||
|
||||
ОписаниеОповещения = Новый ОписаниеОповещения("ИмяУстройстваНачалоВыбораЗавершение", ЭтотОбъект, Элемент);
|
||||
СписокВыбора.ПоказатьВыборЭлемента(ОписаниеОповещения, НСтр("ru='Выберите сканер'"));
|
||||
Если МассивУстройств.Количество() > 0 Тогда
|
||||
Элемент.СписокВыбора.ЗагрузитьЗначения(МассивУстройств);
|
||||
Иначе
|
||||
СтандартнаяОбработка = Ложь;
|
||||
ПоказатьПредупреждение(,НСтр("ru = 'Не обнаружено подключенных сканеров. Проверьте подключение сканера.'"));
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
@@ -384,14 +379,6 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ИмяУстройстваНачалоВыбораЗавершение(ВыбранныйЭлемент, Элемент) Экспорт
|
||||
Если ВыбранныйЭлемент <> Неопределено Тогда
|
||||
ИмяУстройства = ВыбранныйЭлемент.Значение;
|
||||
ИмяУстройстваПриИзменении(Элемент);
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОКЗавершение(НастройкиСканированияПользователя)
|
||||
РаботаСФайламиКлиент.СохранитьНастройкиСканированияПользователя(НастройкиСканированияПользователя);
|
||||
|
||||
@@ -458,7 +458,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
ПодключаемыйМодуль = РезультатПроверкиИнициализации.ПодключаемыйМодуль;
|
||||
РаботаСФайламиСлужебныйКлиент.ВключитьЛогированиеКомпоненты(ПодключаемыйМодуль);
|
||||
РаботаСФайламиСлужебныйКлиент.ВключитьЛогированиеКомпоненты(ПодключаемыйМодуль, Истина);
|
||||
|
||||
ПараметрыОткрытия.ТекущийШаг = 2;
|
||||
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
Процедура ОбновитьВозможныеПраваДляНастройкиПравОбъектов(ЕстьИзменения = Неопределено) Экспорт
|
||||
|
||||
СвойстваСеанса = УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса().СвойстваСеанса;
|
||||
ВозможныеПраваСеанса = ПроверенныеВозможныеПраваСеанса(СвойстваСеанса);
|
||||
НовоеЗначение = ХешСуммаВозможныхПрав(ВозможныеПраваСеанса);
|
||||
НовоеЗначение = "";
|
||||
ПроверенныеВозможныеПраваСеанса(СвойстваСеанса, НовоеЗначение);
|
||||
|
||||
НачатьТранзакцию();
|
||||
Попытка
|
||||
@@ -791,11 +791,12 @@
|
||||
// Параметры:
|
||||
// СвойстваВидовДоступа - см. УправлениеДоступомСлужебный.СвойстваВидовДоступа
|
||||
// - Неопределено
|
||||
// ХешСумма - Строка - возвращаемое значение.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// см. УправлениеДоступомСлужебный.ВозможныеПраваДляНастройкиПравОбъектов
|
||||
//
|
||||
Функция ПроверенныеВозможныеПраваСеанса(СвойстваВидовДоступа = Неопределено) Экспорт
|
||||
Функция ПроверенныеВозможныеПраваСеанса(СвойстваВидовДоступа = Неопределено, ХешСумма = "") Экспорт
|
||||
|
||||
ВозможныеПрава = ЗаполненныеВозможныеПраваСеанса();
|
||||
|
||||
@@ -807,10 +808,8 @@
|
||||
+ Символы.ПС
|
||||
+ Символы.ПС;
|
||||
|
||||
ПоТипам = Новый Соответствие;
|
||||
ПоТипамСсылок = Новый Соответствие;
|
||||
ПоПолнымИменам = Новый Соответствие;
|
||||
ТипыВладельцев = Новый Массив;
|
||||
СвойстваВладельцев = Новый Соответствие;
|
||||
ТипыВладельцев = Новый СписокЗначений;
|
||||
ОтдельныеТаблицы = Новый Соответствие;
|
||||
ИерархическиеТаблицы = Новый Соответствие;
|
||||
|
||||
@@ -852,8 +851,10 @@
|
||||
ЗаполнитьИдентификаторы("ЧтениеВТаблицах", ВозможноеПраво, ЗаголовокОшибки, ОтдельныеТаблицы, ДополнительныеПараметры);
|
||||
ЗаполнитьИдентификаторы("ИзменениеВТаблицах", ВозможноеПраво, ЗаголовокОшибки, ОтдельныеТаблицы, ДополнительныеПараметры);
|
||||
|
||||
ПраваВладельца = ПоПолнымИменам[ВозможноеПраво.ВладелецПрав];
|
||||
Если ПраваВладельца = Неопределено Тогда
|
||||
СвойстваВладельца = СвойстваВладельцев[ВозможноеПраво.ВладелецПрав];
|
||||
Если СвойстваВладельца <> Неопределено Тогда
|
||||
ПраваВладельца = СвойстваВладельца.ПраваВладельца;
|
||||
Иначе
|
||||
ПраваВладельца = ПраваВладельца();
|
||||
МассивПравВладельца = Новый Массив;
|
||||
|
||||
@@ -930,17 +931,20 @@
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЕсли;
|
||||
|
||||
ПоПолнымИменам.Вставить(ВозможноеПраво.ВладелецПрав, ПраваВладельца);
|
||||
ПоТипамСсылок.Вставить(ТипСсылки, МассивПравВладельца);
|
||||
ПоТипам.Вставить(ТипСсылки, ПраваВладельца);
|
||||
ПоТипам.Вставить(ТипОбъекта, ПраваВладельца);
|
||||
СвойстваВладельца = Новый Структура;
|
||||
СвойстваВладельца.Вставить("ПраваВладельца", ПраваВладельца);
|
||||
СвойстваВладельца.Вставить("МассивПравВладельца", МассивПравВладельца);
|
||||
СвойстваВладельца.Вставить("ТипСсылки", ТипСсылки);
|
||||
СвойстваВладельца.Вставить("ТипОбъекта", ТипОбъекта);
|
||||
СвойстваВладельцев.Вставить(ВозможноеПраво.ВладелецПрав, СвойстваВладельца);
|
||||
|
||||
Если ИерархическийОбъектМетаданных(ОбъектМетаданныхВладельца) Тогда
|
||||
ИерархическиеТаблицы.Вставить(ТипСсылки, Истина);
|
||||
ИерархическиеТаблицы.Вставить(ТипОбъекта, Истина);
|
||||
КонецЕсли;
|
||||
|
||||
ТипыВладельцев.Добавить(ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(
|
||||
ВозможноеПраво.ВладелецПрав).ПустаяСсылка());
|
||||
ВозможноеПраво.ВладелецПрав).ПустаяСсылка(), ВозможноеПраво.ВладелецПрав);
|
||||
|
||||
ИндексыПравВладельцев.Вставить(ВозможноеПраво.ВладелецПрав, 0);
|
||||
КонецЕсли;
|
||||
@@ -967,62 +971,120 @@
|
||||
ВызватьИсключение ТекстОшибки;
|
||||
КонецЦикла;
|
||||
|
||||
СвойстваВозможногоПрава = СвойстваВозможногоПрава(ВозможноеПраво);
|
||||
СвойстваВозможногоПрава.ИндексПрава = ИндексыПравВладельцев[ВозможноеПраво.ВладелецПрав];
|
||||
ИндексыПравВладельцев[ВозможноеПраво.ВладелецПрав] = СвойстваВозможногоПрава.ИндексПрава + 1;
|
||||
ИндексПрава = ИндексыПравВладельцев[ВозможноеПраво.ВладелецПрав];
|
||||
ИндексыПравВладельцев[ВозможноеПраво.ВладелецПрав] = ИндексПрава + 1;
|
||||
СвойстваВозможногоПрава = СвойстваВозможногоПрава(ВозможноеПраво, ИндексПрава);
|
||||
|
||||
ПраваВладельца.Вставить(ВозможноеПраво.Имя, СвойстваВозможногоПрава);
|
||||
МассивПравВладельца.Добавить(СвойстваВозможногоПрава);
|
||||
КонецЦикла;
|
||||
|
||||
// Дополнение отдельных таблиц.
|
||||
ОбщаяТаблица = Справочники.ИдентификаторыОбъектовМетаданных.ПустаяСсылка();
|
||||
Для каждого ОписаниеПрав Из ПоПолнымИменам Цикл
|
||||
ОтдельныеПрава = ДополнительныеПараметры.ОтдельныеПраваВладельцев.Получить(ОписаниеПрав.Ключ);
|
||||
Для каждого ОписаниеПрава Из ОписаниеПрав.Значение Цикл
|
||||
СвойстваПрава = ОписаниеПрава.Значение;
|
||||
ТипыВладельцев.СортироватьПоЗначению();
|
||||
|
||||
ПоТипам = Новый Соответствие;
|
||||
ПоТипамСсылок = Новый Соответствие;
|
||||
ПоПолнымИменам = Новый Соответствие;
|
||||
|
||||
ОписаниеВерсии = Новый Структура("СвойстваВерсии", Новый Массив);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "Версия", "1");
|
||||
|
||||
Для Каждого ЭлементСписка Из ТипыВладельцев Цикл
|
||||
СвойстваВладельца = СвойстваВладельцев.Получить(ЭлементСписка.Представление);
|
||||
|
||||
// Дополнение отдельных таблиц.
|
||||
ОтдельныеПрава = ДополнительныеПараметры.ОтдельныеПраваВладельцев.Получить(ЭлементСписка.Представление);
|
||||
Индекс = -1;
|
||||
Для Каждого СвойстваПрава Из СвойстваВладельца.МассивПравВладельца Цикл
|
||||
Индекс = Индекс + 1;
|
||||
Если СвойстваПрава.ИзменениеВТаблицах.Найти(ОбщаяТаблица) <> Неопределено Тогда
|
||||
Для каждого КлючИЗначение Из ОтдельныеТаблицы Цикл
|
||||
Для Каждого КлючИЗначение Из ОтдельныеТаблицы Цикл
|
||||
ОтдельнаяТаблица = КлючИЗначение.Ключ;
|
||||
|
||||
Если ОтдельныеПрава.ИзменениеВТаблицах[ОтдельнаяТаблица] = Неопределено
|
||||
И СвойстваПрава.ИзменениеВТаблицах.Найти(ОтдельнаяТаблица) = Неопределено Тогда
|
||||
|
||||
ИзменениеВТаблицах = Новый Массив(СвойстваПрава.ИзменениеВТаблицах);
|
||||
Свойства = Новый Структура(СвойстваПрава);
|
||||
ИзменениеВТаблицах = Новый Массив(Свойства.ИзменениеВТаблицах);
|
||||
ИзменениеВТаблицах.Добавить(ОтдельнаяТаблица);
|
||||
СвойстваПрава.ИзменениеВТаблицах = Новый ФиксированныйМассив(ИзменениеВТаблицах);
|
||||
Свойства.ИзменениеВТаблицах = Новый ФиксированныйМассив(ИзменениеВТаблицах);
|
||||
СвойстваПрава = Новый ФиксированнаяСтруктура(Свойства);
|
||||
СвойстваВладельца.МассивПравВладельца[Индекс] = СвойстваПрава;
|
||||
СвойстваВладельца.ПраваВладельца[СвойстваПрава.Имя] = СвойстваПрава;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
// Фиксация и добавление строки версии.
|
||||
ТипСсылкиВладельца = ТипЗнч(ЭлементСписка.Значение);
|
||||
ПраваВладельца = Новый ФиксированноеСоответствие(СвойстваВладельца.ПраваВладельца);
|
||||
МассивПравВладельца = Новый ФиксированныйМассив(СвойстваВладельца.МассивПравВладельца);
|
||||
ПоПолнымИменам.Вставить(ЭлементСписка.Представление, ПраваВладельца);
|
||||
ПоТипамСсылок.Вставить(СвойстваВладельца.ТипСсылки, МассивПравВладельца);
|
||||
ПоТипам.Вставить(ТипСсылки, ПраваВладельца);
|
||||
ПоТипам.Вставить(ТипОбъекта, ПраваВладельца);
|
||||
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить("");
|
||||
ВладелецПравДобавлен = Ложь;
|
||||
ПраваВладельца = ПоТипамСсылок.Получить(ТипСсылкиВладельца);
|
||||
Для Каждого СвойстваПрава Из МассивПравВладельца Цикл
|
||||
Если Не ВладелецПравДобавлен Тогда
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ВладелецПрав", СвойстваПрава.ВладелецПрав);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ТипВладельцаПрав", ТипСсылкиВладельца);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ИерархияВладельцаПрав",
|
||||
ИерархическиеТаблицы.Получить(ТипСсылкиВладельца) <> Неопределено);
|
||||
ВладелецПравДобавлен = Истина;
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить("");
|
||||
КонецЕсли;
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "Имя", СвойстваПрава.Имя);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ИндексПрава", СвойстваПрава.ИндексПрава);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ЧтениеВТаблицах", СвойстваПрава.ЧтениеВТаблицах);
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ИзменениеВТаблицах", СвойстваПрава.ИзменениеВТаблицах);
|
||||
ОписаниеВерсии.СвойстваВерсии.Добавить("");
|
||||
КонецЦикла;
|
||||
КонецЦикла;
|
||||
|
||||
Список = Новый СписокЗначений;
|
||||
Для Каждого КлючИЗначение Из ОтдельныеТаблицы Цикл
|
||||
Список.Добавить(КлючИЗначение.Ключ);
|
||||
КонецЦикла;
|
||||
Список.СортироватьПоЗначению();
|
||||
ДобавитьЭлементВерсии(ОписаниеВерсии, "ОтдельныеТаблицы", Список.ВыгрузитьЗначения());
|
||||
|
||||
СтрокаВерсии = СтрСоединить(ОписаниеВерсии.СвойстваВерсии, Символы.ПС);
|
||||
ХешСумма = УправлениеДоступомСлужебный.ХешСуммаДанных(СтрокаВерсии);
|
||||
|
||||
ВозможныеПрава = Новый Структура;
|
||||
ВозможныеПрава.Вставить("ПоТипам", ПоТипам);
|
||||
ВозможныеПрава.Вставить("ПоТипамСсылок", ПоТипамСсылок);
|
||||
ВозможныеПрава.Вставить("ПоПолнымИменам", ПоПолнымИменам);
|
||||
ВозможныеПрава.Вставить("ТипыВладельцев", ТипыВладельцев);
|
||||
ВозможныеПрава.Вставить("ОтдельныеТаблицы", ОтдельныеТаблицы);
|
||||
ВозможныеПрава.Вставить("ИерархическиеТаблицы", ИерархическиеТаблицы);
|
||||
ВозможныеПрава.Вставить("ПоТипам",
|
||||
Новый ФиксированноеСоответствие(ПоТипам));
|
||||
|
||||
Возврат ОбщегоНазначения.ФиксированныеДанные(ВозможныеПрава);
|
||||
ВозможныеПрава.Вставить("ПоТипамСсылок",
|
||||
Новый ФиксированноеСоответствие(ПоТипамСсылок));
|
||||
|
||||
ВозможныеПрава.Вставить("ПоПолнымИменам",
|
||||
Новый ФиксированноеСоответствие(ПоПолнымИменам));
|
||||
|
||||
ВозможныеПрава.Вставить("ТипыВладельцев",
|
||||
Новый ФиксированныйМассив(ТипыВладельцев.ВыгрузитьЗначения()));
|
||||
|
||||
ВозможныеПрава.Вставить("ОтдельныеТаблицы",
|
||||
Новый ФиксированноеСоответствие(ОтдельныеТаблицы));
|
||||
|
||||
ВозможныеПрава.Вставить("ИерархическиеТаблицы",
|
||||
Новый ФиксированноеСоответствие(ИерархическиеТаблицы));
|
||||
|
||||
Возврат Новый ФиксированнаяСтруктура(ВозможныеПрава);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Параметры:
|
||||
// ВозможныеПрава - см. УправлениеДоступомСлужебный.ВозможныеПраваДляНастройкиПравОбъектов
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Строка
|
||||
//
|
||||
Функция ХешСуммаВозможныхПрав(ВозможныеПрава) Экспорт
|
||||
|
||||
Возврат УправлениеДоступомСлужебный.ХешСуммаДанных(ВозможныеПрава);
|
||||
|
||||
КонецФункции
|
||||
// См. УправлениеДоступомСлужебный.ДобавитьЭлементВерсии
|
||||
Процедура ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение)
|
||||
УправлениеДоступомСлужебный.ДобавитьЭлементВерсии(Контекст, ИмяПоля, Значение);
|
||||
КонецПроцедуры
|
||||
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// ФиксированнаяСтруктура:
|
||||
// * ВладелецПрав - Строка
|
||||
// * Имя - Строка
|
||||
// * Заголовок - Строка
|
||||
@@ -1032,7 +1094,7 @@
|
||||
// * ЧтениеВТаблицах - ФиксированныйМассив из Строка
|
||||
// * ИзменениеВТаблицах - ФиксированныйМассив из Строка
|
||||
//
|
||||
Функция СвойстваВозможногоПрава(ВозможноеПраво) Экспорт
|
||||
Функция СвойстваВозможногоПрава(ВозможноеПраво, ИндексПрава) Экспорт
|
||||
|
||||
СвойстваВозможногоПрава = Новый Структура(
|
||||
"ВладелецПрав,
|
||||
@@ -1045,19 +1107,33 @@
|
||||
|
||||
ЗаполнитьЗначенияСвойств(СвойстваВозможногоПрава, ВозможноеПраво);
|
||||
|
||||
СвойстваВозможногоПрава.ИндексПрава = ИндексПрава;
|
||||
|
||||
СвойстваВозможногоПрава.ТребуемыеПрава =
|
||||
Новый ФиксированныйМассив(СвойстваВозможногоПрава.ТребуемыеПрава);
|
||||
СортированныйФиксированныйМассив(СвойстваВозможногоПрава.ТребуемыеПрава);
|
||||
|
||||
СвойстваВозможногоПрава.ЧтениеВТаблицах =
|
||||
Новый ФиксированныйМассив(СвойстваВозможногоПрава.ЧтениеВТаблицах);
|
||||
СортированныйФиксированныйМассив(СвойстваВозможногоПрава.ЧтениеВТаблицах);
|
||||
|
||||
СвойстваВозможногоПрава.ИзменениеВТаблицах =
|
||||
Новый ФиксированныйМассив(СвойстваВозможногоПрава.ИзменениеВТаблицах);
|
||||
СортированныйФиксированныйМассив(СвойстваВозможногоПрава.ИзменениеВТаблицах);
|
||||
|
||||
Возврат СвойстваВозможногоПрава;
|
||||
Возврат Новый ФиксированнаяСтруктура(СвойстваВозможногоПрава);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Для функции СвойстваВозможногоПрава.
|
||||
Функция СортированныйФиксированныйМассив(ИсходныйМассив)
|
||||
|
||||
Список = Новый СписокЗначений;
|
||||
Список.ЗагрузитьЗначения(ИсходныйМассив);
|
||||
Список.СортироватьПоЗначению();
|
||||
|
||||
Возврат Новый ФиксированныйМассив(Список.ВыгрузитьЗначения());
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
// Возвращаемое значение:
|
||||
// Соответствие из КлючИЗначение:
|
||||
// * Ключ - Тип
|
||||
|
||||
+1
-1
@@ -57,7 +57,7 @@
|
||||
|
||||
Иначе
|
||||
|
||||
СвойстваВладельца = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Запись.ВладелецФайла,
|
||||
СвойстваВладельца = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Запись.ВладелецФайла,
|
||||
"Наименование,ЗначениеПустойСсылки");
|
||||
СписокСуществующихНастроек.ЗагрузитьЗначения(СуществующиеОбъектыСинхронизации(ТипЗнч(СвойстваВладельца.ЗначениеПустойСсылки)));
|
||||
ОбъектСинхронизации = "ВсеФайлы";
|
||||
|
||||
+9
-9
@@ -155,20 +155,20 @@
|
||||
|
||||
ТипФайла = НРег(ТипМакета);
|
||||
Если ТипФайла = "mxl" Тогда
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = '""1С:Предприятие - Работа с файлами""'");
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = '1С:Предприятие - Работа с файлами'");
|
||||
АдресПрограммыДляОткрытияМакета = "http://v8.1c.ru/metod/fileworkshop.htm";
|
||||
ИначеЕсли ТипФайла = "doc" Тогда
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = '""Microsoft Word""'");
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = 'Microsoft Word'");
|
||||
АдресПрограммыДляОткрытияМакета = "http://office.microsoft.com/ru-ru/word";
|
||||
ИначеЕсли ТипФайла = "odt" Тогда
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = '""OpenOffice Writer""'");
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = 'OpenOffice Writer'");
|
||||
АдресПрограммыДляОткрытияМакета = "http://www.openoffice.org/product/writer.html";
|
||||
ИначеЕсли ТипФайла = "docx" Тогда
|
||||
НазваниеПрограммыДляОткрытияМакета = НСтр("ru = 'один из офисных пакетов или редактор документов формата Office Open XML'");
|
||||
АдресПрограммыДляОткрытияМакета = "";
|
||||
КонецЕсли;
|
||||
|
||||
ПерейтиНаСтаницуПрограммы = НСтр("ru = 'Перейти на страницу программы ""%1"" для установки'");
|
||||
ПерейтиНаСтаницуПрограммы = НСтр("ru = 'Перейти на веб-страницу %1 для установки'");
|
||||
ПерейтиНаСтаницуПрограммы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ПерейтиНаСтаницуПрограммы, НазваниеПрограммыДляОткрытияМакета);
|
||||
Элементы.СсылкаНаСтраницуПрограммыПередЗагрузкойВебКлиент.Заголовок = ПерейтиНаСтаницуПрограммы;
|
||||
Элементы.СсылкаНаСтраницуПрограммыПередЗагрузкойНеВебКлиент.Заголовок = ПерейтиНаСтаницуПрограммы;
|
||||
@@ -184,18 +184,18 @@
|
||||
Элементы.НадписьПередЗагрузкойМакетаПрограммаВебКлиент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Файл макета ""%1"" подготовлен для загрузки на компьютер и открытия с помощью другой программы.
|
||||
|
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить ""%2"".'"), ПредставлениеМакета,
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить %2.'"), ПредставлениеМакета,
|
||||
НазваниеПрограммыДляОткрытияМакета);
|
||||
Иначе
|
||||
Элементы.НадписьПередЗагрузкойМакетаПрограммаВебКлиент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Файл макета ""%1"" подготовлен для загрузки на компьютер и внесения изменений с помощью другой программы.
|
||||
|
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить ""%2"".'"), ПредставлениеМакета,
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить %2.'"), ПредставлениеМакета,
|
||||
НазваниеПрограммыДляОткрытияМакета);
|
||||
КонецЕсли;
|
||||
|
||||
Элементы.НадписьПередЗагрузкойМакетаПрограммаНеВебКлиент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Файл макета ""%1"" подготовлен для внесения изменений с помощью другой программы. Если программа для редактирования еще не установлена, рекомендуется установить ""%2"".'"),
|
||||
НСтр("ru = 'Файл макета ""%1"" подготовлен для внесения изменений с помощью другой программы. Если программа для редактирования еще не установлена, рекомендуется установить %2.'"),
|
||||
ПредставлениеМакета, НазваниеПрограммыДляОткрытияМакета);
|
||||
|
||||
Элементы.НадписьЗавершениеИзмененияВебКлиент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
@@ -203,14 +203,14 @@
|
||||
|
|
||||
|После завершения редактирования, закройте файл макета, подтвердив изменения. Затем нажмите на кнопку ""Завершить изменение"" и выберите этот файл в следующем диалоге.
|
||||
|
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить ""%1"".'"), НазваниеПрограммыДляОткрытияМакета);
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить %1.'"), НазваниеПрограммыДляОткрытияМакета);
|
||||
|
||||
Элементы.НадписьЗавершениеИзмененияНеВебКлиент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Дождитесь открытия макета в программе для редактирования.
|
||||
|
|
||||
|После завершения редактирования, закройте макет, подтвердив изменения. Затем нажмите на кнопку ""Завершить изменение"".
|
||||
|
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить ""%1"".'"), НазваниеПрограммыДляОткрытияМакета);
|
||||
|Если программа для редактирования еще не установлена, рекомендуется установить %1.'"), НазваниеПрограммыДляОткрытияМакета);
|
||||
|
||||
ВидимостьСсылкиНаСтраницуПрограммы = (ОбщегоНазначения.ЭтоВебКлиент() Или ТипФайла <> "mxl") И ТипФайла <> "docx";
|
||||
Элементы.СсылкаНаСтраницуПрограммыПередЗагрузкойВебКлиент.Видимость = ВидимостьСсылкиНаСтраницуПрограммы;
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
// Настройки - НастройкиКомпоновкиДанных
|
||||
// ПользовательскиеНастройки - ПользовательскиеНастройкиКомпоновкиДанных
|
||||
// ДоступныеЗначения - Структура
|
||||
// Контекст - Произвольный
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
@@ -62,7 +63,7 @@
|
||||
// * ИмяТаблицы - Строка
|
||||
// * ИсточникДанных - СправочникСсылка.ИдентификаторыОбъектовМетаданных
|
||||
//
|
||||
Функция ФиксированныеПараметры(Настройки, ПользовательскиеНастройки, ДоступныеЗначения) Экспорт
|
||||
Функция ФиксированныеПараметры(Настройки, ПользовательскиеНастройки, ДоступныеЗначения, Контекст) Экспорт
|
||||
ФиксированныеПараметры = Новый Структура("Период, ИсточникДанных, ТипОбъектаМетаданных, ИмяОбъектаМетаданных, ИмяТаблицы");
|
||||
ДоступныеЗначения = Новый Структура("ТипОбъектаМетаданных, ИмяОбъектаМетаданных, ИмяТаблицы");
|
||||
|
||||
@@ -74,7 +75,7 @@
|
||||
"ТипОбъектаМетаданных",
|
||||
ФиксированныеПараметры,
|
||||
Настройки, ПользовательскиеНастройки,
|
||||
ДоступныеЗначения.ТипОбъектаМетаданных);
|
||||
ДоступныеЗначения.ТипОбъектаМетаданных, Контекст);
|
||||
|
||||
ДоступныеЗначения.ИмяОбъектаМетаданных = ДоступныеОбъектыМетаданных(
|
||||
ФиксированныеПараметры.ТипОбъектаМетаданных);
|
||||
@@ -109,7 +110,7 @@
|
||||
Возврат ФиксированныеПараметры;
|
||||
КонецФункции
|
||||
|
||||
Процедура УстановитьФиксированныйПараметр(Идентификатор, Параметры, Настройки, ПользовательскиеНастройки, ДоступныеЗначения = Неопределено)
|
||||
Процедура УстановитьФиксированныйПараметр(Идентификатор, Параметры, Настройки, ПользовательскиеНастройки, ДоступныеЗначения = Неопределено, Контекст = Неопределено)
|
||||
ФиксированныйПараметр = Параметры[Идентификатор];
|
||||
|
||||
Если ДоступныеЗначения = Неопределено Тогда
|
||||
@@ -155,11 +156,15 @@
|
||||
И ЗначениеЗаполнено(Параметры.ИсточникДанных)
|
||||
И Параметры.ИсточникДанных.ПолучитьОбъект() <> Неопределено Тогда
|
||||
|
||||
ОбъектМетаданных = МетаданныеИсточникаДанных(Параметры.ИсточникДанных);
|
||||
ОбъектМетаданных = МетаданныеИсточникаДанных(Параметры.ИсточникДанных, Контекст);
|
||||
Если ОбъектМетаданных <> Неопределено Тогда
|
||||
ТипОбъектаМетаданных = ОбщегоНазначения.ИмяБазовогоТипаПоОбъектуМетаданных(ОбъектМетаданных);
|
||||
Если ТипОбъектаМетаданных <> ФиксированныйПараметр Тогда
|
||||
Параметры.ИсточникДанных = Неопределено;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Параметры.ИсточникДанных = Неопределено;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Параметры[Идентификатор] = ФиксированныйПараметр;
|
||||
@@ -1309,16 +1314,30 @@
|
||||
Возврат ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ПолноеИмяОбъекта);
|
||||
КонецФункции
|
||||
|
||||
Функция МетаданныеИсточникаДанных(ИсточникДанных)
|
||||
Функция МетаданныеИсточникаДанных(ИсточникДанных, Контекст)
|
||||
|
||||
Попытка
|
||||
ОбъектМетаданных = ОбщегоНазначения.ОбъектМетаданныхПоИдентификатору(ИсточникДанных);
|
||||
Исключение
|
||||
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Отчет не может быть сформирован по причине: %1'"),
|
||||
ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Отчет не может быть сформирован по причине: %1 %2'"),
|
||||
ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()),
|
||||
НСтр("ru = 'Выберите другой справочник или документ.'"));
|
||||
ЗаписьЖурналаРегистрации(НСтр("ru = 'Формирование варианта универсального отчета'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
||||
УровеньЖурналаРегистрации.Предупреждение, Метаданные.Отчеты.УниверсальныйОтчет,, ТекстСообщения);
|
||||
Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда
|
||||
ТекстРекомендации = НСтр("ru = 'Отчет не может быть сформирован. Выберите другой справочник или документ.'");
|
||||
ОтчетыКлиентСервер.ОтобразитьСостояниеОтчета(
|
||||
Контекст, ТекстРекомендации);
|
||||
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
|
||||
Иначе
|
||||
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
|
||||
КонецЕсли;
|
||||
Возврат Неопределено;
|
||||
КонецПопытки;
|
||||
|
||||
Возврат ОбъектМетаданных;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Возвращает тип объекта метаданных по соответствующему типу менеджера
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
|
||||
ДоступныеЗначения = Неопределено;
|
||||
ФиксированныеПараметры = Отчеты.УниверсальныйОтчет.ФиксированныеПараметры(
|
||||
НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД, ДоступныеЗначения);
|
||||
НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД, ДоступныеЗначения, Контекст);
|
||||
|
||||
Если НовыеНастройкиКД.ДополнительныеСвойства.Свойство("ЗагруженныеНастройкиXML") Тогда
|
||||
ЗагруженныеНастройкиXML = НовыеНастройкиКД.ДополнительныеСвойства.ЗагруженныеНастройкиXML;
|
||||
@@ -267,7 +267,7 @@
|
||||
КонецЕсли;
|
||||
ДоступныеЗначения = Неопределено;
|
||||
ФиксированныеПараметры = Отчеты.УниверсальныйОтчет.ФиксированныеПараметры(
|
||||
НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД, ДоступныеЗначения);
|
||||
НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД, ДоступныеЗначения, Контекст);
|
||||
Иначе
|
||||
Отчеты.УниверсальныйОтчет.УстановитьФиксированныеПараметры(
|
||||
ЭтотОбъект, ФиксированныеПараметры, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД);
|
||||
@@ -279,7 +279,7 @@
|
||||
Контекст, НовыеНастройкиКД, ФиксированныеПараметры, ДоступныеЗначения);
|
||||
|
||||
Если ТипЗнч(Контекст) = Тип("Структура") Тогда
|
||||
ЗаменитьЗначенияПараметровНаПредставления(НовыеНастройкиКД, НовыеНастройкиКД.ДополнительныеСвойства.ДоступныеЗначения);
|
||||
ЗаменитьЗначенияПараметров(НовыеНастройкиКД, НовыеНастройкиКД.ДополнительныеСвойства.ДоступныеЗначения);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -344,7 +344,8 @@
|
||||
|
||||
Отчеты.УниверсальныйОтчет.ВывестиКоличествоПодчиненныхЗаписей(Настройки, СхемаКомпоновкиДанных, СтандартнаяОбработка);
|
||||
|
||||
ЗаменитьЗначенияПараметровНаПредставления(Настройки, Настройки.ДополнительныеСвойства.ДоступныеЗначения);
|
||||
ИсходныеЗначенияПараметров = Неопределено;
|
||||
ЗаменитьЗначенияПараметров(Настройки, Настройки.ДополнительныеСвойства.ДоступныеЗначения, ИсходныеЗначенияПараметров);
|
||||
|
||||
Если СтандартнаяОбработка Тогда
|
||||
Возврат;
|
||||
@@ -353,6 +354,8 @@
|
||||
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
|
||||
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
|
||||
|
||||
ЗаменитьЗначенияПараметров(ДанныеРасшифровки.Настройки, Настройки.ДополнительныеСвойства.ДоступныеЗначения, ИсходныеЗначенияПараметров);
|
||||
|
||||
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
|
||||
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки);
|
||||
|
||||
@@ -377,7 +380,12 @@
|
||||
Возврат СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "") + "_" + Формат(ДвоичныеДанные.Размер(), "ЧГ=");
|
||||
КонецФункции
|
||||
|
||||
Процедура ЗаменитьЗначенияПараметровНаПредставления(Настройки, ДоступныеЗначения)
|
||||
Процедура ЗаменитьЗначенияПараметров(Настройки, ДоступныеЗначения, ИсходныеЗначения = Неопределено)
|
||||
|
||||
ЗаменятьНаПредставления = ИсходныеЗначения = Неопределено;
|
||||
Если ИсходныеЗначения = Неопределено Тогда
|
||||
ИсходныеЗначения = Новый Соответствие;
|
||||
КонецЕсли;
|
||||
|
||||
ИменаПараметров = Новый Массив;
|
||||
ИменаПараметров.Добавить("ТипОбъектаМетаданных");
|
||||
@@ -386,11 +394,22 @@
|
||||
|
||||
Для Каждого ИмяПараметра Из ИменаПараметров Цикл
|
||||
Параметр = Настройки.ПараметрыДанных.Элементы.Найти(ИмяПараметра);
|
||||
Если Параметр <> Неопределено И ДоступныеЗначения.Свойство(ИмяПараметра) Тогда
|
||||
Если Параметр = Неопределено Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
Если ЗаменятьНаПредставления Тогда
|
||||
Если ДоступныеЗначения.Свойство(ИмяПараметра) Тогда
|
||||
ДоступныеЗначенияПараметра = ДоступныеЗначения[ИмяПараметра];
|
||||
ОписаниеЗначенияПараметра = ДоступныеЗначенияПараметра.НайтиПоЗначению(Параметр.Значение);
|
||||
Если ОписаниеЗначенияПараметра <> Неопределено Тогда
|
||||
Параметр.Значение = ОписаниеЗначенияПараметра.Представление;
|
||||
ИсходныеЗначения.Вставить(ОписаниеЗначенияПараметра.Представление, ОписаниеЗначенияПараметра.Значение);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
ИсходноеЗначение = ИсходныеЗначения.Получить(Параметр.Значение);
|
||||
Если ИсходноеЗначение <> Неопределено Тогда
|
||||
Параметр.Значение = ИсходноеЗначение;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
@@ -3648,6 +3648,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>InformationRegister.АдминистративнаяИерархия</name>
|
||||
<right>
|
||||
@@ -5485,93 +5572,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>
|
||||
|
||||
@@ -2022,6 +2022,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.АдминистративнаяИерархия</name>
|
||||
<right>
|
||||
@@ -2799,33 +2826,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ДетализироватьОбновлениеИБВЖурналеРегистрации</name>
|
||||
<right>
|
||||
|
||||
@@ -1616,6 +1616,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.АдминистративнаяИерархия</name>
|
||||
<right>
|
||||
@@ -2003,6 +2030,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.ОбщиеПоставляемыеМакетыПечати</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно</name>
|
||||
<right>
|
||||
@@ -2274,33 +2312,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ДетализироватьОбновлениеИБВЖурналеРегистрации</name>
|
||||
<right>
|
||||
@@ -2345,6 +2356,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.ПоставляемыеМакетыПечати</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ИзменятьЗаданияЗаднимЧислом</name>
|
||||
<right>
|
||||
|
||||
@@ -616,6 +616,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>WebService.Exchange_2_0_1_6.Operation.UploadData</name>
|
||||
<right>
|
||||
@@ -839,33 +866,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>WebService.Exchange_3_0_2_1.Operation.GetFilePart</name>
|
||||
<right>
|
||||
|
||||
@@ -187,6 +187,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.АдминистративнаяИерархия</name>
|
||||
<right>
|
||||
@@ -302,31 +329,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
+27
-27
@@ -60,6 +60,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.УничтоженныеПерсональныеДанные</name>
|
||||
<right>
|
||||
@@ -146,31 +173,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -21,6 +21,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.КлассификаторБанков</name>
|
||||
<right>
|
||||
@@ -60,31 +87,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -128,6 +128,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ВариантыОтчетов.Command.Изменить</name>
|
||||
<right>
|
||||
@@ -179,31 +206,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -1048,6 +1048,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</name>
|
||||
<right>
|
||||
@@ -1303,33 +1330,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.КонтактыВзаимодействий</name>
|
||||
<right>
|
||||
|
||||
@@ -74,6 +74,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ГруппыВнешнихПользователей</name>
|
||||
<right>
|
||||
@@ -113,31 +140,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -36,6 +36,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.ДатыЗапретаИзменения</name>
|
||||
<right>
|
||||
@@ -131,33 +158,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>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляРегистра(Регистр, Поле1, Поле2, Поле3, Поле4, Поле5)</name>
|
||||
<condition>// ДляРегистра(Регистр, Поле1, Поле2 = "", Поле3 = "", Поле4 = "", Поле5 = "")
|
||||
|
||||
@@ -18,6 +18,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Report.ДатыЗапретаИзменения</name>
|
||||
<right>
|
||||
@@ -135,33 +162,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>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляРегистра(Регистр, Поле1, Поле2, Поле3, Поле4, Поле5)</name>
|
||||
<condition>// ДляРегистра(Регистр, Поле1, Поле2 = "", Поле3 = "", Поле4 = "", Поле5 = "")
|
||||
|
||||
@@ -95,20 +95,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.ДополнительныеОтчетыИОбработки</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.НастройкаМоихОтчетовИОбработок</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -136,4 +122,18 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.ДополнительныеОтчетыИОбработки</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.НастройкаМоихОтчетовИОбработок</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -127,6 +127,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ЗначенияСвойствОбъектов</name>
|
||||
<right>
|
||||
@@ -173,33 +200,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.РедактированиеДополнительныхСведений</name>
|
||||
<right>
|
||||
|
||||
@@ -100,6 +100,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Task.ЗадачаИсполнителя.Command.МоиЗадачи</name>
|
||||
<right>
|
||||
@@ -204,33 +231,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>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.ДанныеБизнесПроцессов.Command.МоиБизнесПроцессы</name>
|
||||
<right>
|
||||
|
||||
@@ -70,13 +70,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.МоиЗаметкиПоПредмету</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -104,6 +97,13 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.МоиЗаметкиПоПредмету</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.Заметки.Command.ВсеЗаметки</name>
|
||||
<right>
|
||||
|
||||
@@ -88,25 +88,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ИспользоватьНесколькоПроизводственныхКалендарей</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Update</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Edit</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -134,4 +115,23 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Constant.ИспользоватьНесколькоПроизводственныхКалендарей</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Update</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Edit</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -158,20 +158,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ВариантыОтчетов.Command.Изменить</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ВариантыОтчетов.Command.РазместитьВРазделах</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -199,6 +185,20 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ВариантыОтчетов.Command.Изменить</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.ВариантыОтчетов.Command.РазместитьВРазделах</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -60,6 +60,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.МашиночитаемыеДоверенностиПрисоединенныеФайлы</name>
|
||||
<right>
|
||||
@@ -110,31 +137,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -136,32 +136,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>DataProcessor.ДоступныеАнкеты</name>
|
||||
<right>
|
||||
<name>Use</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>ChartOfCharacteristicTypes.ВопросыДляАнкетирования</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>InputByString</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -189,4 +163,30 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>DataProcessor.ДоступныеАнкеты</name>
|
||||
<right>
|
||||
<name>Use</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>ChartOfCharacteristicTypes.ВопросыДляАнкетирования</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>InputByString</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -87,6 +87,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
||||
<right>
|
||||
@@ -221,33 +248,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>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -87,6 +87,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
||||
<right>
|
||||
@@ -221,33 +248,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>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -132,17 +132,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Report.КонтрольРассылкиОтчетов</name>
|
||||
<right>
|
||||
<name>Use</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -174,6 +163,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Report.КонтрольРассылкиОтчетов</name>
|
||||
<right>
|
||||
<name>Use</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -105,6 +105,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач</name>
|
||||
<right>
|
||||
@@ -162,31 +189,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -60,17 +60,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.СертификатыПользователяDSS</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -98,6 +87,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.СертификатыПользователяDSS</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -77,13 +77,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.ОтправкаСообщения</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -111,6 +104,13 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.ОтправкаСообщения</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -127,6 +127,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>ChartOfCharacteristicTypes.ВопросыДляАнкетирования</name>
|
||||
<right>
|
||||
@@ -166,31 +193,4 @@
|
||||
<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>
|
||||
</object>
|
||||
</Rights>
|
||||
@@ -131,6 +131,33 @@
|
||||
<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>
|
||||
</object>
|
||||
<object>
|
||||
<name>ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач</name>
|
||||
<right>
|
||||
@@ -178,33 +205,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>
|
||||
</object>
|
||||
<restrictionTemplate>
|
||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||
|
||||
@@ -40,13 +40,6 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.ДополнительныеСведенияКоманднаяПанель</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||
<right>
|
||||
@@ -74,6 +67,13 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonCommand.ДополнительныеСведенияКоманднаяПанель</name>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>CommonForm.РедактированиеДополнительныхСведений</name>
|
||||
<right>
|
||||
|
||||
Loaded 100 of 125 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user