3_1_11_299
This commit is contained in:
1 parent
5a3a164f99
commit
722ba9b717
55 files changed
+1076
-914
No files matched your search
@@ -1146,7 +1146,9 @@
|
|||||||
|
|
||||||
Если ПараметрыРегистрации.Успех Тогда
|
Если ПараметрыРегистрации.Успех Тогда
|
||||||
ЗаполнитьКоманды(КомандыСохраненные);
|
ЗаполнитьКоманды(КомандыСохраненные);
|
||||||
|
Если ПараметрыРегистрации.Свойство("НазначениеВариантаОтчета") Тогда
|
||||||
НазначениеВариантаОтчета = ПараметрыРегистрации.НазначениеВариантаОтчета;
|
НазначениеВариантаОтчета = ПараметрыРегистрации.НазначениеВариантаОтчета;
|
||||||
|
КонецЕсли;
|
||||||
ИначеЕсли ПараметрыРегистрации.ИмяОбъектаЗанято Тогда
|
ИначеЕсли ПараметрыРегистрации.ИмяОбъектаЗанято Тогда
|
||||||
ПредставлениеЗанявших = "";
|
ПредставлениеЗанявших = "";
|
||||||
Для Каждого ЭлементСписка Из ПараметрыРегистрации.Конфликтующие Цикл
|
Для Каждого ЭлементСписка Из ПараметрыРегистрации.Конфликтующие Цикл
|
||||||
|
|||||||
@@ -1230,15 +1230,7 @@
|
|||||||
Имя = ФИОДоверителя.Имя;
|
Имя = ФИОДоверителя.Имя;
|
||||||
Отчество = ФИОДоверителя.Отчество;
|
Отчество = ФИОДоверителя.Отчество;
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Отчество) Тогда
|
ФИО = МашиночитаемыеДоверенностиФНССлужебный.ФИОСтрокой(ФИОДоверителя);
|
||||||
ФИО = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
|
||||||
НСтр("ru = '%1 %2 %3'"),
|
|
||||||
Фамилия, Имя, Отчество);
|
|
||||||
Иначе
|
|
||||||
ФИО = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
|
||||||
НСтр("ru = '%1 %2'"),
|
|
||||||
Фамилия, Имя);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КодВидаДокумента = Неопределено;
|
КодВидаДокумента = Неопределено;
|
||||||
СерияИНомерДокумента = Неопределено;
|
СерияИНомерДокумента = Неопределено;
|
||||||
|
|||||||
+2
@@ -292,6 +292,7 @@
|
|||||||
<autoFill>true</autoFill>
|
<autoFill>true</autoFill>
|
||||||
</contextMenu>
|
</contextMenu>
|
||||||
<type>InputField</type>
|
<type>InputField</type>
|
||||||
|
<markRequiredComplete>true</markRequiredComplete>
|
||||||
<editMode>Enter</editMode>
|
<editMode>Enter</editMode>
|
||||||
<showInHeader>true</showInHeader>
|
<showInHeader>true</showInHeader>
|
||||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||||
@@ -301,6 +302,7 @@
|
|||||||
<autoMaxHeight>true</autoMaxHeight>
|
<autoMaxHeight>true</autoMaxHeight>
|
||||||
<wrap>true</wrap>
|
<wrap>true</wrap>
|
||||||
<extendedEditMultipleValues>true</extendedEditMultipleValues>
|
<extendedEditMultipleValues>true</extendedEditMultipleValues>
|
||||||
|
<autoMarkIncomplete>true</autoMarkIncomplete>
|
||||||
<chooseType>true</chooseType>
|
<chooseType>true</chooseType>
|
||||||
<typeDomainEnabled>true</typeDomainEnabled>
|
<typeDomainEnabled>true</typeDomainEnabled>
|
||||||
<textEdit>true</textEdit>
|
<textEdit>true</textEdit>
|
||||||
|
|||||||
+6
-1
@@ -47,6 +47,8 @@
|
|||||||
Должность = "";
|
Должность = "";
|
||||||
НаименованиеОрганизации = "";
|
НаименованиеОрганизации = "";
|
||||||
ОГРН = "";
|
ОГРН = "";
|
||||||
|
Иначе
|
||||||
|
ИННФЛ = "";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
УстановитьВидимостьИДоступность(ЭтотОбъект);
|
УстановитьВидимостьИДоступность(ЭтотОбъект);
|
||||||
@@ -173,7 +175,10 @@
|
|||||||
&НаКлиентеНаСервереБезКонтекста
|
&НаКлиентеНаСервереБезКонтекста
|
||||||
Процедура УстановитьВидимостьИДоступность(Форма)
|
Процедура УстановитьВидимостьИДоступность(Форма)
|
||||||
|
|
||||||
Форма.Элементы.ГруппаОрганизация.Видимость = Форма.ВидПодписанта = "ЮридическоеЛицо";
|
ЭтоЮрЛицо = Форма.ВидПодписанта = "ЮридическоеЛицо";
|
||||||
|
|
||||||
|
Форма.Элементы.ГруппаОрганизация.Видимость = ЭтоЮрЛицо;
|
||||||
|
Форма.Элементы.ИННФЛ.Видимость = Не ЭтоЮрЛицо;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
|||||||
@@ -14,10 +14,10 @@
|
|||||||
НомерТелефона = Прав(Объект.НомерТелефона, 10);
|
НомерТелефона = Прав(Объект.НомерТелефона, 10);
|
||||||
ИспользуетсяАвтоНаименование = ИспользуетсяАвтоНаименование(Объект);
|
ИспользуетсяАвтоНаименование = ИспользуетсяАвтоНаименование(Объект);
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Объект.ИННФЛ) И Не ЗначениеЗаполнено(Объект.ИНН) Тогда
|
Если ЗначениеЗаполнено(Объект.ИНН) Тогда
|
||||||
ВидПодписанта = "ИндивидуальныйПредприниматель"
|
ВидПодписанта = "ЮридическоеЛицо";
|
||||||
Иначе
|
Иначе
|
||||||
ВидПодписанта = "ЮридическоеЛицо"
|
ВидПодписанта = "ИндивидуальныйПредприниматель";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Параметры.Ключ) Тогда
|
Если ЗначениеЗаполнено(Параметры.Ключ) Тогда
|
||||||
@@ -116,6 +116,8 @@
|
|||||||
Объект.Должность = "";
|
Объект.Должность = "";
|
||||||
Объект.НаименованиеОрганизации = "";
|
Объект.НаименованиеОрганизации = "";
|
||||||
Объект.ОГРН = "";
|
Объект.ОГРН = "";
|
||||||
|
Иначе
|
||||||
|
Объект.ИННФЛ = "";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
УстановитьВидимостьИДоступность(ЭтотОбъект);
|
УстановитьВидимостьИДоступность(ЭтотОбъект);
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
@@ -147,8 +149,11 @@
|
|||||||
Элементы.НомерТелефона.ТолькоПросмотр = Истина;
|
Элементы.НомерТелефона.ТолькоПросмотр = Истина;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЭтоЮрЛицо = Форма.ВидПодписанта = "ЮридическоеЛицо";
|
||||||
|
|
||||||
Элементы.ВидПодписанта.Видимость = Не Элементы.ВидПодписанта.ТолькоПросмотр;
|
Элементы.ВидПодписанта.Видимость = Не Элементы.ВидПодписанта.ТолькоПросмотр;
|
||||||
Элементы.ГруппаОрганизация.Видимость = Форма.ВидПодписанта = "ЮридическоеЛицо";
|
Элементы.ГруппаОрганизация.Видимость = ЭтоЮрЛицо;
|
||||||
|
Элементы.ИННФЛ.Видимость = Не ЭтоЮрЛицо;
|
||||||
|
|
||||||
Элементы.НаименованиеОрганизации.Видимость = Не ЗначениеЗаполнено(Объект.Организация)
|
Элементы.НаименованиеОрганизации.Видимость = Не ЗначениеЗаполнено(Объект.Организация)
|
||||||
Или ЗначениеЗаполнено(Объект.НаименованиеОрганизации);
|
Или ЗначениеЗаполнено(Объект.НаименованиеОрганизации);
|
||||||
|
|||||||
@@ -42,16 +42,19 @@
|
|||||||
|
|
||||||
Наименование = Новый Массив;
|
Наименование = Новый Массив;
|
||||||
|
|
||||||
|
ФИО = "";
|
||||||
Если ЗначениеЗаполнено(Объект.Фамилия) Тогда
|
Если ЗначениеЗаполнено(Объект.Фамилия) Тогда
|
||||||
СтруктураФИО = Новый Структура("Фамилия, Имя, Отчество", Объект.Фамилия, Объект.Имя, Объект.Отчество);
|
СтруктураФИО = Новый Структура("Фамилия, Имя, Отчество", Объект.Фамилия, Объект.Имя, Объект.Отчество);
|
||||||
ФИО = ФизическиеЛицаКлиентСервер.ФамилияИнициалы(СтруктураФИО);
|
ФИО = ФизическиеЛицаКлиентСервер.ФамилияИнициалы(СтруктураФИО);
|
||||||
ИначеЕсли ЗначениеЗаполнено(Объект.ФизическоеЛицо) Тогда
|
ИначеЕсли ЗначениеЗаполнено(Объект.ФизическоеЛицо) Тогда
|
||||||
ФИО = Объект.ФизическоеЛицо;
|
ФИО = Объект.ФизическоеЛицо;
|
||||||
Иначе
|
ИначеЕсли ЗначениеЗаполнено(Объект.ИННФЛ) Тогда
|
||||||
ФИО = Объект.ИННФЛ;
|
ФИО = Объект.ИННФЛ;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ФИО) Тогда
|
||||||
Наименование.Добавить(ФИО);
|
Наименование.Добавить(ФИО);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Организация = Неопределено;
|
Организация = Неопределено;
|
||||||
Если ЗначениеЗаполнено(Объект.ИНН) Или ФИО = Объект.ИННФЛ Тогда
|
Если ЗначениеЗаполнено(Объект.ИНН) Или ФИО = Объект.ИННФЛ Тогда
|
||||||
|
|||||||
-1
@@ -171,7 +171,6 @@
|
|||||||
</toolTip>
|
</toolTip>
|
||||||
<minValue xsi:type="core:UndefinedValue"/>
|
<minValue xsi:type="core:UndefinedValue"/>
|
||||||
<maxValue xsi:type="core:UndefinedValue"/>
|
<maxValue xsi:type="core:UndefinedValue"/>
|
||||||
<fillChecking>ShowError</fillChecking>
|
|
||||||
<fillValue xsi:type="core:UndefinedValue"/>
|
<fillValue xsi:type="core:UndefinedValue"/>
|
||||||
<fullTextSearch>Use</fullTextSearch>
|
<fullTextSearch>Use</fullTextSearch>
|
||||||
<dataHistory>Use</dataHistory>
|
<dataHistory>Use</dataHistory>
|
||||||
|
|||||||
@@ -1014,7 +1014,7 @@
|
|||||||
// Параметры:
|
// Параметры:
|
||||||
// ПроизводственныйКалендарь - СправочникСсылка.ПроизводственныеКалендари - текущий элемент справочника.
|
// ПроизводственныйКалендарь - СправочникСсылка.ПроизводственныеКалендари - текущий элемент справочника.
|
||||||
// НомерГода - Число - номер года, за который необходимо записать производственный календарь.
|
// НомерГода - Число - номер года, за который необходимо записать производственный календарь.
|
||||||
// ДанныеПроизводственногоКалендаря - см. Справочник.ПроизводственныеКалендари.ДанныеПроизводственногоКалендаря.
|
// ДанныеПроизводственногоКалендаря - см. Справочники.ПроизводственныеКалендари.ДанныеПроизводственногоКалендаря
|
||||||
//
|
//
|
||||||
Процедура ЗаписатьДанныеПроизводственногоКалендаря(ПроизводственныйКалендарь, НомерГода, ДанныеПроизводственногоКалендаря) Экспорт
|
Процедура ЗаписатьДанныеПроизводственногоКалендаря(ПроизводственныйКалендарь, НомерГода, ДанныеПроизводственногоКалендаря) Экспорт
|
||||||
|
|
||||||
|
|||||||
@@ -54,20 +54,6 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ПриЗаписи(Отказ)
|
|
||||||
|
|
||||||
Если ОбменДанными.Загрузка Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Не ИспользуетсяСОбъектамиАдресации Тогда
|
|
||||||
Набор = РегистрыСведений.ИсполнителиЗадач.СоздатьНаборЗаписей();
|
|
||||||
Набор.Отбор.РольИсполнителя.Установить(Ссылка);
|
|
||||||
Набор.Записать();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|||||||
+8
-8
@@ -68,14 +68,14 @@
|
|||||||
|
|
||||||
Если Элементы.СертификатыФизическоеЛицо.Видимость И ДляПоискаФизическихЛиц.Количество() > 0 Тогда
|
Если Элементы.СертификатыФизическоеЛицо.Видимость И ДляПоискаФизическихЛиц.Количество() > 0 Тогда
|
||||||
|
|
||||||
ФизическиеЛица = ЭлектроннаяПодписьСлужебный.ПолучитьФизическиеЛицаПоПолюСертификатаКомуВыдан(ДляПоискаФизическихЛиц);
|
ФизическиеЛицаПоФИО = ЭлектроннаяПодписьСлужебный.ПолучитьФизическиеЛицаПоПолюСертификатаКомуВыдан(ДляПоискаФизическихЛиц);
|
||||||
Для Каждого ТекущаяСтрока Из Сертификаты Цикл
|
Для Каждого ТекущаяСтрока Из Сертификаты Цикл
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ТекущаяСтрока.ФизическоеЛицо) Тогда
|
Если ЗначениеЗаполнено(ТекущаяСтрока.ФизическоеЛицо) Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
МассивЗначений = ФизическиеЛица.Получить(ТекущаяСтрока.КомуВыдан);
|
МассивЗначений = ФизическиеЛицаПоФИО.Получить(ТекущаяСтрока.КомуВыдан);
|
||||||
Если ТипЗнч(МассивЗначений) = Тип("Массив") И МассивЗначений.Количество() = 1 Тогда
|
Если ТипЗнч(МассивЗначений) = Тип("Массив") И МассивЗначений.Количество() = 1 Тогда
|
||||||
ТекущаяСтрока.ФизическоеЛицо = МассивЗначений[0];
|
ТекущаяСтрока.ФизическоеЛицо = МассивЗначений[0];
|
||||||
ТекущаяСтрока.Обновить = Истина;
|
ТекущаяСтрока.Обновить = Истина;
|
||||||
@@ -299,11 +299,11 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ФизическиеЛица = Результат.ФизическиеЛица.Получить(ТекущиеДанные.КомуВыдан);
|
ФизическиеЛицаДляФИО = Результат.ФизическиеЛица.Получить(ТекущиеДанные.КомуВыдан);
|
||||||
|
|
||||||
СтандартнаяОбработка = Ложь;
|
СтандартнаяОбработка = Ложь;
|
||||||
|
|
||||||
Если ФизическиеЛица = Неопределено Тогда
|
Если ФизическиеЛицаДляФИО = Неопределено Тогда
|
||||||
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", ЭтотОбъект);
|
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", ЭтотОбъект);
|
||||||
ПараметрыФормы = Новый Структура;
|
ПараметрыФормы = Новый Структура;
|
||||||
ПараметрыФормы.Вставить("РежимВыбора", Истина);
|
ПараметрыФормы.Вставить("РежимВыбора", Истина);
|
||||||
@@ -312,9 +312,9 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ФизическиеЛица.Количество() = 1 Тогда
|
Если ФизическиеЛицаДляФИО.Количество() = 1 Тогда
|
||||||
Если ТекущиеДанные.ФизическоеЛицо <> ФизическиеЛица[0] Тогда
|
Если ТекущиеДанные.ФизическоеЛицо <> ФизическиеЛицаДляФИО[0] Тогда
|
||||||
ТекущиеДанные.ФизическоеЛицо = ФизическиеЛица[0];
|
ТекущиеДанные.ФизическоеЛицо = ФизическиеЛицаДляФИО[0];
|
||||||
Иначе
|
Иначе
|
||||||
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", ЭтотОбъект);
|
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", ЭтотОбъект);
|
||||||
ПараметрыФормы = Новый Структура;
|
ПараметрыФормы = Новый Структура;
|
||||||
@@ -330,7 +330,7 @@
|
|||||||
Отбор = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
|
Отбор = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
|
||||||
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
|
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
|
||||||
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
||||||
Отбор.ПравоеЗначение = ФизическиеЛица;
|
Отбор.ПравоеЗначение = ФизическиеЛицаДляФИО;
|
||||||
Отбор.Использование = Истина;
|
Отбор.Использование = Истина;
|
||||||
|
|
||||||
ПараметрыФормы = Новый Структура;
|
ПараметрыФормы = Новый Структура;
|
||||||
|
|||||||
+10
-1
@@ -1046,7 +1046,6 @@
|
|||||||
|
|
||||||
ПараметрыВопроса = СтандартныеПодсистемыКлиент.ПараметрыВопросаПользователю();
|
ПараметрыВопроса = СтандартныеПодсистемыКлиент.ПараметрыВопросаПользователю();
|
||||||
ПараметрыВопроса.Картинка = БиблиотекаКартинок.ДиалогВосклицание;
|
ПараметрыВопроса.Картинка = БиблиотекаКартинок.ДиалогВосклицание;
|
||||||
ПараметрыВопроса.Заголовок = НСтр("ru = 'Подпись будет неверна'");
|
|
||||||
ПараметрыВопроса.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь;
|
ПараметрыВопроса.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь;
|
||||||
|
|
||||||
Кнопки = Новый СписокЗначений;
|
Кнопки = Новый СписокЗначений;
|
||||||
@@ -1054,11 +1053,21 @@
|
|||||||
Кнопки.Добавить("РазрешитьПодписание", НСтр("ru = 'Разрешить подписание'"));
|
Кнопки.Добавить("РазрешитьПодписание", НСтр("ru = 'Разрешить подписание'"));
|
||||||
Кнопки.Добавить("ПоказатьОшибку", НСтр("ru = 'Подробности...'"));
|
Кнопки.Добавить("ПоказатьОшибку", НСтр("ru = 'Подробности...'"));
|
||||||
|
|
||||||
|
Если Результат.ТребуетсяПроверка = Истина Тогда
|
||||||
|
ПараметрыВопроса.Заголовок = НСтр("ru = 'Подпись будет не проверена'");
|
||||||
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = 'Сертификат не прошел проверку. Подпись, установленная таким сертификатом, будет требовать проверки.
|
||||||
|
|
|
||||||
|
|%1'"), ЭлектроннаяПодписьСлужебныйКлиентСервер.ОбщееОписаниеОшибки(
|
||||||
|
Результат.ОписаниеОшибкиНаКлиенте, Результат.ОписаниеОшибкиНаСервере, Неопределено));
|
||||||
|
Иначе
|
||||||
|
ПараметрыВопроса.Заголовок = НСтр("ru = 'Подпись будет неверна'");
|
||||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
НСтр("ru = 'Сертификат не прошел проверку. Подпись, установленная таким сертификатом, будет неверна.
|
НСтр("ru = 'Сертификат не прошел проверку. Подпись, установленная таким сертификатом, будет неверна.
|
||||||
|
|
|
|
||||||
|%1'"), ЭлектроннаяПодписьСлужебныйКлиентСервер.ОбщееОписаниеОшибки(
|
|%1'"), ЭлектроннаяПодписьСлужебныйКлиентСервер.ОбщееОписаниеОшибки(
|
||||||
Результат.ОписаниеОшибкиНаКлиенте, Результат.ОписаниеОшибкиНаСервере, Неопределено));
|
Результат.ОписаниеОшибкиНаКлиенте, Результат.ОписаниеОшибкиНаСервере, Неопределено));
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(Оповещение, ТекстОшибки, Кнопки, ПараметрыВопроса);
|
СтандартныеПодсистемыКлиент.ПоказатьВопросПользователю(Оповещение, ТекстОшибки, Кнопки, ПараметрыВопроса);
|
||||||
Возврат;
|
Возврат;
|
||||||
|
|||||||
@@ -61,7 +61,8 @@
|
|||||||
БыстрыйВыбор = Истина;
|
БыстрыйВыбор = Истина;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ОграничиватьВыборУказаннымиЗначениями И БыстрыйВыбор И Не Параметры.ЗначенияДляВыбораЗаполнены Тогда
|
Если Не ОграничиватьВыборУказаннымиЗначениями И БыстрыйВыбор
|
||||||
|
И (Параметры.ПараметрыВыбора.Количество() > 0 Или Не Параметры.ЗначенияДляВыбораЗаполнены) Тогда
|
||||||
ЗначенияДляВыбора = ОтчетыСервер.ЗначенияДляВыбора(Параметры);
|
ЗначенияДляВыбора = ОтчетыСервер.ЗначенияДляВыбора(Параметры);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -64,10 +64,11 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
Иначе
|
Иначе
|
||||||
КоллекцияПечатныхФорм = Параметры.КоллекцияПечатныхФорм;
|
КоллекцияПечатныхФорм = Параметры.КоллекцияПечатныхФорм;
|
||||||
ИсключитьОфисныеДокументыИзКомплектов(КоллекцияПечатныхФорм);
|
|
||||||
ОбъектыПечати = Параметры.ОбъектыПечати;
|
ОбъектыПечати = Параметры.ОбъектыПечати;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИсключитьОфисныеДокументыИзКомплектов(КоллекцияПечатныхФорм);
|
||||||
|
|
||||||
Если Параметры.Сообщения <> Неопределено Тогда
|
Если Параметры.Сообщения <> Неопределено Тогда
|
||||||
Для Каждого Сообщение Из Параметры.Сообщения Цикл
|
Для Каждого Сообщение Из Параметры.Сообщения Цикл
|
||||||
ОбщегоНазначения.СообщитьПользователю(Сообщение.Текст);
|
ОбщегоНазначения.СообщитьПользователю(Сообщение.Текст);
|
||||||
@@ -671,30 +672,20 @@
|
|||||||
|
|
||||||
&НаСервере
|
&НаСервере
|
||||||
Процедура ИсключитьОфисныеДокументыИзКомплектов(КоллекцияПечатныхФорм)
|
Процедура ИсключитьОфисныеДокументыИзКомплектов(КоллекцияПечатныхФорм)
|
||||||
ЕстьТабличныеДокументы = Ложь;
|
|
||||||
ЕстьОфисныеДокументы = Ложь;
|
ОфисныеДокументы = Новый Массив;
|
||||||
Для Каждого ПечатнаяФорма Из КоллекцияПечатныхФорм Цикл
|
|
||||||
ЕстьТабличныеДокументы = ЕстьТабличныеДокументы Или ПечатнаяФорма.ТабличныйДокумент.ВысотаТаблицы <> 0;
|
Для Счетчик = 1 По КоллекцияПечатныхФорм.Количество() Цикл
|
||||||
ЕстьОфисныеДокументы = ЕстьОфисныеДокументы Или (ПечатнаяФорма.ОфисныеДокументы <> Неопределено
|
Индекс = КоллекцияПечатныхФорм.Количество() - Счетчик;
|
||||||
И ПечатнаяФорма.ОфисныеДокументы.Количество() <> 0);
|
ПечатнаяФорма = КоллекцияПечатныхФорм[Индекс];
|
||||||
Если ЕстьТабличныеДокументы И ЕстьОфисныеДокументы Тогда
|
Если ПечатнаяФорма.ОфисныеДокументы <> Неопределено Тогда
|
||||||
Прервать;
|
ОфисныеДокументы.Добавить(Индекс);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Если ЕстьТабличныеДокументы И ЕстьОфисныеДокументы Тогда
|
Если КоллекцияПечатныхФорм.Количество() > ОфисныеДокументы.Количество() Тогда
|
||||||
Индекс = 0;
|
Для Каждого Индекс Из ОфисныеДокументы Цикл
|
||||||
Пока Истина Цикл
|
|
||||||
Если Индекс > КоллекцияПечатныхФорм.ВГраница() Тогда
|
|
||||||
Прервать;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ПечатнаяФорма = КоллекцияПечатныхФорм[Индекс];
|
|
||||||
Если ПечатнаяФорма.ОфисныеДокументы <> Неопределено И ПечатнаяФорма.ОфисныеДокументы.Количество() <> 0 Тогда
|
|
||||||
КоллекцияПечатныхФорм.Удалить(Индекс);
|
КоллекцияПечатныхФорм.Удалить(Индекс);
|
||||||
Индекс = Индекс - 1;
|
|
||||||
КонецЕсли;
|
|
||||||
Индекс = Индекс + 1;
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -799,7 +799,9 @@
|
|||||||
|
|
||||||
Результат = Истина;
|
Результат = Истина;
|
||||||
|
|
||||||
Если ТипЗнч(ИнфоОПеренаправлении) = Тип("Структура") Тогда
|
Если ТипЗнч(ИнфоОПеренаправлении) = Тип("Структура")
|
||||||
|
И (ТипЗнч(ИнфоОПеренаправлении.Исполнитель) = Тип("СправочникСсылка.Пользователи")
|
||||||
|
Или ТипЗнч(ИнфоОПеренаправлении.Исполнитель) = Тип("СправочникСсылка.ВнешниеПользователи")) Тогда
|
||||||
ОписаниеПользователя = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ИнфоОПеренаправлении.Исполнитель, "Недействителен,ПометкаУдаления");
|
ОписаниеПользователя = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ИнфоОПеренаправлении.Исполнитель, "Недействителен,ПометкаУдаления");
|
||||||
|
|
||||||
Если ОписаниеПользователя.Недействителен
|
Если ОписаниеПользователя.Недействителен
|
||||||
|
|||||||
@@ -3233,6 +3233,31 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ОбработатьОснованияПисьма(СтрокаИдентификаторов)
|
||||||
|
|
||||||
|
СтрокаИдентификаторов = СтрЗаменить(СтрокаИдентификаторов, " ", Символы.ПС);
|
||||||
|
|
||||||
|
СтрокиДоОбработки = СтрРазделить(СтрокаИдентификаторов, Символы.ПС, Ложь);
|
||||||
|
СтрокиПослеОбработки = Новый Массив;
|
||||||
|
|
||||||
|
Для Каждого СтрокаОснований Из СтрокиДоОбработки Цикл
|
||||||
|
|
||||||
|
Если Не СтрНачинаетсяС(СтрокаОснований, "<") Тогда
|
||||||
|
СтрокаОснований = "<" + СтрокаОснований;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если Не СтрЗаканчиваетсяНа(СтрокаОснований, ">") Тогда
|
||||||
|
СтрокаОснований = СтрокаОснований + ">";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтрокиПослеОбработки.Добавить(СтрокаОснований);
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
СтрокаИдентификаторов = СтрСоединить(СтрокиПослеОбработки, " ");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Функция ПараметрыПисьмаДляОтправки(Объект) Экспорт
|
Функция ПараметрыПисьмаДляОтправки(Объект) Экспорт
|
||||||
|
|
||||||
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда
|
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда
|
||||||
@@ -3256,10 +3281,12 @@
|
|||||||
ПараметрыПисьма.Вставить("ТипТекста", Объект.ТипТекста);
|
ПараметрыПисьма.Вставить("ТипТекста", Объект.ТипТекста);
|
||||||
|
|
||||||
Если Не ПустаяСтрока(Объект.ИдентификаторОснования) Тогда
|
Если Не ПустаяСтрока(Объект.ИдентификаторОснования) Тогда
|
||||||
|
ОбработатьОснованияПисьма(Объект.ИдентификаторОснования);
|
||||||
ПараметрыПисьма.Вставить("ИдентификаторОснования", Объект.ИдентификаторОснования);
|
ПараметрыПисьма.Вставить("ИдентификаторОснования", Объект.ИдентификаторОснования);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(Объект.ИдентификаторыОснований) Тогда
|
Если Не ПустаяСтрока(Объект.ИдентификаторыОснований) Тогда
|
||||||
|
ОбработатьОснованияПисьма(Объект.ИдентификаторыОснований);
|
||||||
ПараметрыПисьма.Вставить("ИдентификаторыОснований", Объект.ИдентификаторыОснований);
|
ПараметрыПисьма.Вставить("ИдентификаторыОснований", Объект.ИдентификаторыОснований);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -203,7 +203,7 @@
|
|||||||
// АПК:134-вкл
|
// АПК:134-вкл
|
||||||
// АПК:142-вкл
|
// АПК:142-вкл
|
||||||
|
|
||||||
// Запустить выполнение функции в многопоточном фоновом задании, если это возможно.
|
// Запускает выполнение функции в многопоточном фоновом задании, если это возможно.
|
||||||
// Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
|
// Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
|
||||||
// Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
|
// Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
|
||||||
// Параметры процедуры не должны быть возвращаемыми.
|
// Параметры процедуры не должны быть возвращаемыми.
|
||||||
@@ -242,55 +242,15 @@
|
|||||||
// * КраткоеПредставлениеОшибки - Строка - устарел.
|
// * КраткоеПредставлениеОшибки - Строка - устарел.
|
||||||
// * ПодробноеПредставлениеОшибки - Строка - устарел.
|
// * ПодробноеПредставлениеОшибки - Строка - устарел.
|
||||||
//
|
//
|
||||||
Функция ВыполнитьФункциюВНесколькоПотоков(ИмяФункции, Знач ПараметрыВыполнения, Знач НаборПараметровФункции = Неопределено) Экспорт
|
Функция ВыполнитьФункциюВНесколькоПотоков(ИмяФункции, ПараметрыВыполнения, НаборПараметровФункции = Неопределено) Экспорт
|
||||||
|
|
||||||
ПроверитьВозможностьЗапускаМногопоточнойДлительнойОперации(ПараметрыВыполнения, НаборПараметровФункции);
|
Возврат ВыполнитьМетодВНесколькоПотоков(ИмяФункции, ПараметрыВыполнения, НаборПараметровФункции, Истина);
|
||||||
|
|
||||||
Если ПараметрыВыполнения.ОжидатьЗавершение = ОбщиеПараметрыВыполненияВФоне().ОжидатьЗавершение Тогда
|
|
||||||
ПараметрыВыполнения.ОжидатьЗавершение = 0;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
АдресаРезультатов = Новый Соответствие;
|
|
||||||
|
|
||||||
Если ТипЗнч(НаборПараметровФункции) = Тип("Соответствие") Тогда
|
|
||||||
Для Каждого ПараметрФункции Из НаборПараметровФункции Цикл
|
|
||||||
АдресРезультатаПотока = ПоместитьВоВременноеХранилище(Неопределено, Новый УникальныйИдентификатор);
|
|
||||||
АдресаРезультатов.Вставить(ПараметрФункции.Ключ, АдресРезультатаПотока);
|
|
||||||
КонецЦикла;
|
|
||||||
ПараметрыМетода = НаборПараметровФункции.Количество();
|
|
||||||
Иначе
|
|
||||||
ПараметрыМетода = НаборПараметровФункции; // Структура
|
|
||||||
НаборПараметровФункции = Новый Соответствие;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ИдентификаторПроцесса = Новый УникальныйИдентификатор;
|
|
||||||
ПараметрыМногопоточнойОперации = ПараметрыМногопоточнойОперации(ИдентификаторПроцесса);
|
|
||||||
ПараметрыМногопоточнойОперации.ИмяМетода = ИмяФункции;
|
|
||||||
ПараметрыМногопоточнойОперации.ЭтоФункция = "Функция";
|
|
||||||
ПараметрыМногопоточнойОперации.ПараметрыВыполнения = ПараметрыВыполнения;
|
|
||||||
ПараметрыМногопоточнойОперации.ПараметрыМетода = ПараметрыМетода;
|
|
||||||
|
|
||||||
ПодготовитьМногопоточнуюОперациюКЗапуску(ИмяФункции,
|
|
||||||
АдресаРезультатов, ИдентификаторПроцесса, НаборПараметровФункции);
|
|
||||||
|
|
||||||
РезультатЗапуска = Новый Структура("Статус, ИдентификаторЗадания, АдресРезультата",
|
|
||||||
СтатусДлительнойОперации().Выполняется);
|
|
||||||
ЗапланироватьЗапускПотоковДлительныхОпераций(РезультатЗапуска, ПараметрыМногопоточнойОперации);
|
|
||||||
|
|
||||||
РезультатЗапуска = ВыполнитьФункцию(ПараметрыВыполнения,
|
|
||||||
ИмяМетодаМногопоточногоПроцесса(), ПараметрыМногопоточнойОперации);
|
|
||||||
|
|
||||||
Если РезультатЗапуска.Статус <> СтатусДлительнойОперации().Выполняется Тогда
|
|
||||||
УдалитьДанныеОПотоках(ИдентификаторПроцесса);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Возврат РезультатЗапуска;
|
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Запускает выполнение процедуры в многопоточном фоновом задании, если это возможно.
|
// Запускает выполнение процедуры в многопоточном фоновом задании, если это возможно.
|
||||||
// Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
|
// Вызываемая процедура может быть с произвольным числом параметров, но не более 7.
|
||||||
// Значения передаваемых параметров процедуры, а также возвращаемое значение должны быть сериализуемыми.
|
// Значения передаваемых параметров процедуры должны быть сериализуемыми.
|
||||||
// Параметры процедуры не должны быть возвращаемыми.
|
// Параметры процедуры не должны быть возвращаемыми.
|
||||||
// Многопоточные длительные операции в неразделенном сеансе не поддерживаются.
|
// Многопоточные длительные операции в неразделенном сеансе не поддерживаются.
|
||||||
//
|
//
|
||||||
@@ -301,7 +261,7 @@
|
|||||||
// Параметры:
|
// Параметры:
|
||||||
// ИмяПроцедуры - Строка - имя экспортной процедуры общего модуля, модуля менеджера объекта
|
// ИмяПроцедуры - Строка - имя экспортной процедуры общего модуля, модуля менеджера объекта
|
||||||
// или модуля обработки, которую необходимо выполнить в фоне.
|
// или модуля обработки, которую необходимо выполнить в фоне.
|
||||||
// ПараметрыВыполнения - см. ПараметрыВыполненияПроцедуры
|
// ПараметрыВыполнения - см. ПараметрыВыполненияФункции
|
||||||
// НаборПараметровПроцедуры - Соответствие из КлючИЗначение - произвольный набор параметров вызова процедуры:
|
// НаборПараметровПроцедуры - Соответствие из КлючИЗначение - произвольный набор параметров вызова процедуры:
|
||||||
// * Ключ - Произвольный - ключ набора
|
// * Ключ - Произвольный - ключ набора
|
||||||
// * Значение - Массив - параметры вызова процедуры. Количество параметров может быть от 0 до 7.
|
// * Значение - Массив - параметры вызова процедуры. Количество параметров может быть от 0 до 7.
|
||||||
@@ -325,53 +285,9 @@
|
|||||||
// * КраткоеПредставлениеОшибки - Строка - устарел.
|
// * КраткоеПредставлениеОшибки - Строка - устарел.
|
||||||
// * ПодробноеПредставлениеОшибки - Строка - устарел.
|
// * ПодробноеПредставлениеОшибки - Строка - устарел.
|
||||||
//
|
//
|
||||||
Функция ВыполнитьПроцедуруВНесколькоПотоков(ИмяПроцедуры, Знач ПараметрыВыполнения, Знач НаборПараметровПроцедуры = Неопределено) Экспорт
|
Функция ВыполнитьПроцедуруВНесколькоПотоков(ИмяПроцедуры, ПараметрыВыполнения, НаборПараметровПроцедуры = Неопределено) Экспорт
|
||||||
|
|
||||||
ПроверитьВозможностьЗапускаМногопоточнойДлительнойОперации(ПараметрыВыполнения, НаборПараметровПроцедуры);
|
Возврат ВыполнитьМетодВНесколькоПотоков(ИмяПроцедуры, ПараметрыВыполнения, НаборПараметровПроцедуры, Ложь);
|
||||||
|
|
||||||
НовыеПараметрыВыполнения = ПараметрыВыполненияФункции(Неопределено);
|
|
||||||
ЗаполнитьЗначенияСвойств(НовыеПараметрыВыполнения, ПараметрыВыполнения);
|
|
||||||
ПараметрыВыполнения = НовыеПараметрыВыполнения;
|
|
||||||
|
|
||||||
Если ПараметрыВыполнения.ОжидатьЗавершение = ОбщиеПараметрыВыполненияВФоне().ОжидатьЗавершение Тогда
|
|
||||||
ПараметрыВыполнения.ОжидатьЗавершение = 0;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
АдресаРезультатов = Новый Соответствие;
|
|
||||||
|
|
||||||
Если ТипЗнч(НаборПараметровПроцедуры) = Тип("Соответствие") Тогда
|
|
||||||
Для Каждого ПараметрФункции Из НаборПараметровПроцедуры Цикл
|
|
||||||
АдресРезультатаПотока = ПоместитьВоВременноеХранилище(Неопределено, Новый УникальныйИдентификатор);
|
|
||||||
АдресаРезультатов.Вставить(ПараметрФункции.Ключ, АдресРезультатаПотока);
|
|
||||||
КонецЦикла;
|
|
||||||
ПараметрыМетода = НаборПараметровПроцедуры.Количество();
|
|
||||||
Иначе
|
|
||||||
ПараметрыМетода = НаборПараметровПроцедуры; // Структура
|
|
||||||
НаборПараметровПроцедуры = Новый Соответствие;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ИдентификаторПроцесса = Новый УникальныйИдентификатор;
|
|
||||||
ПараметрыМногопоточнойОперации = ПараметрыМногопоточнойОперации(ИдентификаторПроцесса);
|
|
||||||
ПараметрыМногопоточнойОперации.ИмяМетода = ИмяПроцедуры;
|
|
||||||
ПараметрыМногопоточнойОперации.ЭтоФункция = "Процедура";
|
|
||||||
ПараметрыМногопоточнойОперации.ПараметрыВыполнения = ПараметрыВыполнения;
|
|
||||||
ПараметрыМногопоточнойОперации.ПараметрыМетода = ПараметрыМетода;
|
|
||||||
|
|
||||||
ПодготовитьМногопоточнуюОперациюКЗапуску(ИмяПроцедуры,
|
|
||||||
АдресаРезультатов, ИдентификаторПроцесса, НаборПараметровПроцедуры);
|
|
||||||
|
|
||||||
РезультатЗапуска = Новый Структура("Статус, ИдентификаторЗадания, АдресРезультата",
|
|
||||||
СтатусДлительнойОперации().Выполняется);
|
|
||||||
ЗапланироватьЗапускПотоковДлительныхОпераций(РезультатЗапуска, ПараметрыМногопоточнойОперации);
|
|
||||||
|
|
||||||
РезультатЗапуска = ВыполнитьФункцию(ПараметрыВыполнения,
|
|
||||||
ИмяМетодаМногопоточногоПроцесса(), ПараметрыМногопоточнойОперации);
|
|
||||||
|
|
||||||
Если РезультатЗапуска.Статус <> СтатусДлительнойОперации().Выполняется Тогда
|
|
||||||
УдалитьДанныеОПотоках(ИдентификаторПроцесса);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Возврат РезультатЗапуска;
|
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
@@ -585,6 +501,9 @@
|
|||||||
ПараметрыВыполнения = НовыеПараметрыВыполнения;
|
ПараметрыВыполнения = НовыеПараметрыВыполнения;
|
||||||
|
|
||||||
ПроверитьПараметрыВыполнения(ПараметрыВыполнения);
|
ПроверитьПараметрыВыполнения(ПараметрыВыполнения);
|
||||||
|
Если ПараметрыВыполнения.СвойстваИсполняющегоПотокаМногопоточнойДлительнойОперации = Неопределено Тогда
|
||||||
|
ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, "ДлительныеОперации.ВыполнитьВФоне");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Результат = Новый Структура;
|
Результат = Новый Структура;
|
||||||
Результат.Вставить("Статус", "Выполняется");
|
Результат.Вставить("Статус", "Выполняется");
|
||||||
@@ -862,6 +781,7 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
Если ПараметрыСеанса.ДлительныеОперации.Отмененные.Найти(ИдентификаторЗадания) = Неопределено Тогда
|
Если ПараметрыСеанса.ДлительныеОперации.Отмененные.Найти(ИдентификаторЗадания) = Неопределено Тогда
|
||||||
Свойства = Новый Структура(ПараметрыСеанса.ДлительныеОперации);
|
Свойства = Новый Структура(ПараметрыСеанса.ДлительныеОперации);
|
||||||
@@ -871,11 +791,11 @@
|
|||||||
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
УстановитьПривилегированныйРежим(Ложь);
|
УстановитьПривилегированныйРежим(Ложь);
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Ложь);
|
||||||
|
|
||||||
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
||||||
Если Задание = Неопределено Или Задание.Состояние <> СостояниеФоновогоЗадания.Активно Тогда
|
Если Задание <> Неопределено
|
||||||
Возврат;
|
И Задание.Состояние = СостояниеФоновогоЗадания.Активно Тогда
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Попытка
|
Попытка
|
||||||
Задание.Отменить();
|
Задание.Отменить();
|
||||||
@@ -884,6 +804,19 @@
|
|||||||
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Отмена выполнения фонового задания'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Отмена выполнения фонового задания'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
||||||
УровеньЖурналаРегистрации.Информация, , , ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
|
УровеньЖурналаРегистрации.Информация, , , ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
|
ИдентификаторПроцесса = ПараметрыСеанса.ДлительныеОперации.Запущенные.Получить(ИдентификаторЗадания);
|
||||||
|
Если ИдентификаторПроцесса <> Неопределено Тогда
|
||||||
|
ОтменитьВыполнениеВсехПотоков(ИдентификаторПроцесса);
|
||||||
|
ОперацияВыполнена(ИдентификаторЗадания);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
УстановитьПривилегированныйРежим(Ложь);
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Ложь);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -1154,11 +1087,16 @@
|
|||||||
ПоследнийИдентификатор = ПоследнийИдентификатор(ИдентификаторЗадания);
|
ПоследнийИдентификатор = ПоследнийИдентификатор(ИдентификаторЗадания);
|
||||||
|
|
||||||
Задание = НайтиЗаданиеПоИдентификатору(ПоследнийИдентификатор);
|
Задание = НайтиЗаданиеПоИдентификатору(ПоследнийИдентификатор);
|
||||||
|
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
Если Задание = Неопределено Тогда
|
Если Задание = Неопределено Тогда
|
||||||
РезультатИзОповещения = ПолучитьИзОповещений(Ложь,
|
РезультатИзОповещения = ПолучитьИзОповещений(Ложь,
|
||||||
ИдентификаторЗадания, "ДлительнаяОперацияЗавершена");
|
ИдентификаторЗадания, "ДлительнаяОперацияЗавершена");
|
||||||
Если РезультатИзОповещения <> Неопределено Тогда
|
Если РезультатИзОповещения <> Неопределено Тогда
|
||||||
ЗаполнитьЗначенияСвойств(Результат, РезультатИзОповещения);
|
ЗаполнитьЗначенияСвойств(Результат, РезультатИзОповещения);
|
||||||
|
УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат);
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
Если ВыполненПерезапускУправляющегоПотока(ИдентификаторЗадания, Задание) Тогда
|
Если ВыполненПерезапускУправляющегоПотока(ИдентификаторЗадания, Задание) Тогда
|
||||||
@@ -1173,9 +1111,8 @@
|
|||||||
ИнформацияОбОшибке = ИнформацияОбОшибке();
|
ИнформацияОбОшибке = ИнформацияОбОшибке();
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
УстановитьСвойстваОшибки(Результат, ИнформацияОбОшибке);
|
УстановитьСвойстваОшибки(Результат, ИнформацияОбОшибке);
|
||||||
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Фоновое задание не найдено'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
|
||||||
УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки);
|
|
||||||
Результат.Статус = "Ошибка";
|
Результат.Статус = "Ошибка";
|
||||||
|
УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат);
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -1185,7 +1122,6 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Задание.Состояние = СостояниеФоновогоЗадания.Отменено Тогда
|
Если Задание.Состояние = СостояниеФоновогоЗадания.Отменено Тогда
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
Если ПараметрыСеанса.ДлительныеОперации.Отмененные.Найти(ПоследнийИдентификатор) = Неопределено Тогда
|
Если ПараметрыСеанса.ДлительныеОперации.Отмененные.Найти(ПоследнийИдентификатор) = Неопределено Тогда
|
||||||
Результат.Статус = "Ошибка";
|
Результат.Статус = "Ошибка";
|
||||||
Если Задание.ИнформацияОбОшибке <> Неопределено Тогда
|
Если Задание.ИнформацияОбОшибке <> Неопределено Тогда
|
||||||
@@ -1201,7 +1137,7 @@
|
|||||||
Иначе
|
Иначе
|
||||||
Результат.Статус = "Отменено";
|
Результат.Статус = "Отменено";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
УстановитьПривилегированныйРежим(Ложь);
|
УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат);
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -1212,10 +1148,12 @@
|
|||||||
Если Задание.ИнформацияОбОшибке <> Неопределено Тогда
|
Если Задание.ИнформацияОбОшибке <> Неопределено Тогда
|
||||||
УстановитьСвойстваОшибки(Результат, Задание.ИнформацияОбОшибке);
|
УстановитьСвойстваОшибки(Результат, Задание.ИнформацияОбОшибке);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат);
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Результат.Статус = "Выполнено";
|
Результат.Статус = "Выполнено";
|
||||||
|
УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат);
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
@@ -1308,6 +1246,7 @@
|
|||||||
Если ИмяПараметра = "ДлительныеОперации" Тогда
|
Если ИмяПараметра = "ДлительныеОперации" Тогда
|
||||||
Свойства = Новый Структура;
|
Свойства = Новый Структура;
|
||||||
Свойства.Вставить("Отмененные", Новый ФиксированныйМассив(Новый Массив));
|
Свойства.Вставить("Отмененные", Новый ФиксированныйМассив(Новый Массив));
|
||||||
|
Свойства.Вставить("Запущенные", Новый ФиксированноеСоответствие(Новый Соответствие));
|
||||||
Свойства.Вставить("Перезапущенные", Новый ФиксированноеСоответствие(Новый Соответствие));
|
Свойства.Вставить("Перезапущенные", Новый ФиксированноеСоответствие(Новый Соответствие));
|
||||||
Свойства.Вставить("ИдентификаторОсновногоЗадания");
|
Свойства.Вставить("ИдентификаторОсновногоЗадания");
|
||||||
Свойства.Вставить("ПолученныеОповещения", Новый ФиксированноеСоответствие(Новый Соответствие));
|
Свойства.Вставить("ПолученныеОповещения", Новый ФиксированноеСоответствие(Новый Соответствие));
|
||||||
@@ -1563,7 +1502,7 @@
|
|||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция ЗапуститьФоновоеЗаданиеСКонтекстомКлиента(ИмяПроцедуры,
|
Функция ЗапуститьФоновоеЗаданиеСКонтекстомКлиента(ИмяПроцедуры,
|
||||||
ПараметрыВыполнения, ПараметрыПроцедуры = Неопределено, БезопасныйРежим = Ложь, ОтправлятьОповещения = Ложь) Экспорт
|
ПараметрыВыполнения, ПараметрыПроцедуры = Неопределено, БезопасныйРежим = Ложь, ОтправлятьОповещения = Ложь)
|
||||||
|
|
||||||
КлючФоновогоЗадания = ПараметрыВыполнения.КлючФоновогоЗадания;
|
КлючФоновогоЗадания = ПараметрыВыполнения.КлючФоновогоЗадания;
|
||||||
НаименованиеФоновогоЗадания = ?(ПустаяСтрока(ПараметрыВыполнения.НаименованиеФоновогоЗадания),
|
НаименованиеФоновогоЗадания = ?(ПустаяСтрока(ПараметрыВыполнения.НаименованиеФоновогоЗадания),
|
||||||
@@ -2144,7 +2083,9 @@
|
|||||||
ДополнительныеПараметрыОтправки = СерверныеОповещения.ДополнительныеПараметрыОтправки();
|
ДополнительныеПараметрыОтправки = СерверныеОповещения.ДополнительныеПараметрыОтправки();
|
||||||
ДополнительныеПараметрыОтправки.ИдентификаторГруппы = ИдентификаторОсновногоЗадания;
|
ДополнительныеПараметрыОтправки.ИдентификаторГруппы = ИдентификаторОсновногоЗадания;
|
||||||
ДополнительныеПараметрыОтправки.ВидОповещенияВГруппе = ИдентификаторВидаОповещения(ВидОповещения);
|
ДополнительныеПараметрыОтправки.ВидОповещенияВГруппе = ИдентификаторВидаОповещения(ВидОповещения);
|
||||||
ДополнительныеПараметрыОтправки.ЗаписатьБезусловно = ВидОповещения = "СообщениеПользователю";
|
ДополнительныеПараметрыОтправки.ЗаписатьБезусловно = ВидОповещения = "СообщениеПользователю"
|
||||||
|
Или ВидОповещения = "ДлительнаяОперацияЗавершена"
|
||||||
|
И Не ОбщегоНазначения.ИнформационнаяБазаФайловая();
|
||||||
|
|
||||||
Если ВидОповещения = "Прогресс" Тогда
|
Если ВидОповещения = "Прогресс" Тогда
|
||||||
ДополнительныеПараметрыОтправки.Заменить = Истина;
|
ДополнительныеПараметрыОтправки.Заменить = Истина;
|
||||||
@@ -2385,17 +2326,26 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
#КонецЕсли
|
#КонецЕсли
|
||||||
|
|
||||||
Если ПараметрыВыполнения.СвойстваИсполняющегоПотокаМногопоточнойДлительнойОперации = Неопределено Тогда
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, ИмяФункции)
|
||||||
|
|
||||||
Если ПараметрыВыполнения.АдресРезультата = Неопределено Тогда
|
Если ПараметрыВыполнения.АдресРезультата = Неопределено Тогда
|
||||||
Если Не ЗначениеЗаполнено(ПараметрыВыполнения.ИдентификаторФормы) И ОбщегоНазначения.РежимОтладки() Тогда
|
|
||||||
|
Если ОбщегоНазначения.РежимОтладки()
|
||||||
|
И (Не ЗначениеЗаполнено(ПараметрыВыполнения.ИдентификаторФормы)
|
||||||
|
Или ТипЗнч(ПараметрыВыполнения.ИдентификаторФормы) <> Тип("УникальныйИдентификатор")) Тогда
|
||||||
|
|
||||||
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = 'Не указан ни уникальный идентификатор формы в параметре %1,
|
||||||
|
|ни адрес временного хранилища в параметре %2
|
||||||
|
|функции %3.
|
||||||
|
|Рекомендуется указать идентификатор формы или адрес.
|
||||||
|
|Автоматически сформированный адрес содержит значение только до следующего
|
||||||
|
|серверного вызова, что может приводить к неожиданным ошибкам.'"),
|
||||||
|
"ПараметрыВыполнения.ИдентификаторФормы", "ПараметрыВыполнения.АдресРезультата", ИмяФункции);
|
||||||
Попытка
|
Попытка
|
||||||
ВызватьИсключение(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
|
||||||
"ru = 'Не указан ни уникальный идентификатор формы в параметре %1,
|
|
||||||
|ни адрес временного хранилища в %2 в %3.
|
|
||||||
|Убедиться, что при обработке результата временное хранилище очищается явно методом %4.'"),
|
|
||||||
"ПараметрыВыполнения.ИдентификаторФормы", "ПараметрыВыполнения.АдресРезультата",
|
|
||||||
"ДлительныеОперации.ВыполнитьВФоне", "УдалитьИзВременногоХранилища"),
|
|
||||||
КатегорияОшибки.ОшибкаКонфигурации);
|
|
||||||
Исключение
|
Исключение
|
||||||
// АПК:154-выкл Не ошибка, а предупреждение (рекомендация разработчику).
|
// АПК:154-выкл Не ошибка, а предупреждение (рекомендация разработчику).
|
||||||
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Диагностика'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Диагностика'", ОбщегоНазначения.КодОсновногоЯзыка()),
|
||||||
@@ -2403,14 +2353,15 @@
|
|||||||
// АПК:154-вкл
|
// АПК:154-вкл
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
ПараметрыВыполнения.АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено, ПараметрыВыполнения.ИдентификаторФормы);
|
ПараметрыВыполнения.АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено,
|
||||||
|
ПараметрыВыполнения.ИдентификаторФормы);
|
||||||
|
|
||||||
ИначеЕсли Не ЭтоАдресВременногоХранилища(ПараметрыВыполнения.АдресРезультата) Тогда
|
ИначеЕсли Не ЭтоАдресВременногоХранилища(ПараметрыВыполнения.АдресРезультата) Тогда
|
||||||
ВызватьИсключение(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
"ru = 'Не указан адрес временного хранилища в параметре %1
|
НСтр("ru = 'Указан некорректный адрес временного хранилища в параметре %1
|
||||||
|в %2.'"),
|
|функции %2.'"),
|
||||||
"ПараметрыВыполнения.АдресРезультата", "ДлительныеОперации.ВыполнитьВФоне"),
|
"ПараметрыВыполнения.АдресРезультата", ИмяФункции);
|
||||||
КатегорияОшибки.ОшибкаКонфигурации);
|
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
@@ -2512,9 +2463,10 @@
|
|||||||
АдресаНовыхРезультатов, ИдентификаторПроцесса, НовыеПорции, ПараметрыОперации);
|
АдресаНовыхРезультатов, ИдентификаторПроцесса, НовыеПорции, ПараметрыОперации);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
// @skip-check query-in-loop - Получение актуальных данных о потоках с учетом работы других процессов.
|
// @skip-check query-in-loop - Получение данных о потоках текущего процесса.
|
||||||
Потоки = ПотокиОжидающиеОбработки(ИдентификаторПроцесса);
|
Потоки = ПотокиОжидающиеОбработки(ИдентификаторПроцесса);
|
||||||
Если Потоки.Количество() = 0 Тогда
|
Если Потоки.Количество() = 0 Тогда
|
||||||
|
ОжидатьЗавершениеВсехПотоков(ИдентификаторПроцесса, ПрерватьВыполнениеЕслиОшибка, ЗавершитьДосрочно);
|
||||||
Прервать;
|
Прервать;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -2547,7 +2499,7 @@
|
|||||||
Прервать;
|
Прервать;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
// @skip-check query-in-loop - На каждой итерации необходимо зачитывать актуальные данные из ИБ.
|
// @skip-check query-in-loop - На каждой итерации необходимо получать актуальные данные из ИБ.
|
||||||
ОжидатьЗавершениеВсехПотоков(ИдентификаторПроцесса, ПрерватьВыполнениеЕслиОшибка, ЗавершитьДосрочно);
|
ОжидатьЗавершениеВсехПотоков(ИдентификаторПроцесса, ПрерватьВыполнениеЕслиОшибка, ЗавершитьДосрочно);
|
||||||
|
|
||||||
Если ЗавершитьДосрочно Тогда
|
Если ЗавершитьДосрочно Тогда
|
||||||
@@ -2656,16 +2608,13 @@
|
|||||||
ПараметрыВыполнения = ПодготовитьПараметрыВыполнения(ПараметрыВыполнения, ПараметрыОперации.ЭтоФункция);
|
ПараметрыВыполнения = ПодготовитьПараметрыВыполнения(ПараметрыВыполнения, ПараметрыОперации.ЭтоФункция);
|
||||||
ПараметрыВыполнения.ВнешнийОтчетОбработка = ПараметрыОперации.ПараметрыВыполнения.ВнешнийОтчетОбработка;
|
ПараметрыВыполнения.ВнешнийОтчетОбработка = ПараметрыОперации.ПараметрыВыполнения.ВнешнийОтчетОбработка;
|
||||||
|
|
||||||
РезультатЗапуска = Неопределено;
|
ПотокЗанят = Ложь;
|
||||||
МаксимумПотоков = ДопустимоеКоличествоПотоков();
|
НоваяПопыткаВыполнения = Поток.Статус <> СтатусДлительнойОперации().Создано;
|
||||||
|
|
||||||
|
Если ПараметрыВыполнения.ЗапуститьНеВФоне = Ложь Тогда
|
||||||
Блокировка = Новый БлокировкаДанных;
|
Блокировка = Новый БлокировкаДанных;
|
||||||
Блокировка.Добавить("Константа.КоличествоПотоковДлительныхОпераций");
|
Блокировка.Добавить("Константа.КоличествоПотоковДлительныхОпераций");
|
||||||
УстановитьПолноеИмяПрикладнойПроцедуры(ПараметрыОперации.ИмяМетода);
|
МаксимумПотоков = ДопустимоеКоличествоПотоков();
|
||||||
|
|
||||||
ПотокЗанят = Ложь;
|
|
||||||
|
|
||||||
Если Не ПараметрыВыполнения.ЗапуститьНеВФоне Тогда
|
|
||||||
|
|
||||||
НачатьТранзакцию();
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
@@ -2676,7 +2625,7 @@
|
|||||||
ВременныйРезультатЗапуска = НовыйРезультатВыполненияПотока();
|
ВременныйРезультатЗапуска = НовыйРезультатВыполненияПотока();
|
||||||
ВременныйРезультатЗапуска.ИдентификаторЗадания = ИдентификаторЗаданияПроцесса;
|
ВременныйРезультатЗапуска.ИдентификаторЗадания = ИдентификаторЗаданияПроцесса;
|
||||||
ВременныйРезультатЗапуска.Статус = СтатусДлительнойОперации().Выполняется;
|
ВременныйРезультатЗапуска.Статус = СтатусДлительнойОперации().Выполняется;
|
||||||
ОбновитьСведенияОбПотоке(Поток, ВременныйРезультатЗапуска, Ложь);
|
ОбновитьСведенияОПотоке(Поток, ВременныйРезультатЗапуска);
|
||||||
ПотокЗанят = Истина;
|
ПотокЗанят = Истина;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -2685,65 +2634,57 @@
|
|||||||
ОтменитьТранзакцию();
|
ОтменитьТранзакцию();
|
||||||
ВызватьИсключение;
|
ВызватьИсключение;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ПараметрыВыполнения.ЗапуститьНеВФоне = Ложь И Не ПотокЗанят Тогда
|
||||||
|
Возврат Неопределено;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
УстановитьПолноеИмяПрикладнойПроцедуры(ПараметрыОперации.ИмяМетода);
|
||||||
Попытка
|
Попытка
|
||||||
|
|
||||||
Если ПараметрыВыполнения.ЗапуститьНеВФоне Или ПотокЗанят Тогда
|
|
||||||
РезультатЗапуска = ВыполнитьВФоне(ПараметрыОперации.ИмяМетода, ПараметрыМетода, ПараметрыВыполнения);
|
РезультатЗапуска = ВыполнитьВФоне(ПараметрыОперации.ИмяМетода, ПараметрыМетода, ПараметрыВыполнения);
|
||||||
УстановитьПолноеИмяПрикладнойПроцедуры(ИмяМетодаМногопоточногоПроцесса());
|
|
||||||
ОбновитьСведенияОбПотоке(Поток, РезультатЗапуска);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Исключение
|
Исключение
|
||||||
|
УстановитьПолноеИмяПрикладнойПроцедуры(ИмяМетодаМногопоточногоПроцесса());
|
||||||
Если ПотокЗанят Тогда
|
Если ПотокЗанят Тогда
|
||||||
ПустойРезультатЗапуска = НовыйРезультатВыполненияПотока();
|
ИнформацияОбОшибке = ИнформацияОбОшибке();
|
||||||
ОбновитьСведенияОбПотоке(Поток, ПустойРезультатЗапуска, Ложь);
|
Уточнение = ОбщегоНазначенияКлиентСервер.УточнениеИсключения(ИнформацияОбОшибке,
|
||||||
|
НСтр("ru = 'Не удалось запустить задание обработки порции по причине:'"));
|
||||||
|
Попытка
|
||||||
|
ВызватьИсключение(Уточнение.Текст, Уточнение.Категория,,, ИнформацияОбОшибке);
|
||||||
|
Исключение
|
||||||
|
УточненнаяИнформацияОбОшибке = ИнформацияОбОшибке();
|
||||||
|
КонецПопытки;
|
||||||
|
ОшибочныйРезультатЗапуска = НовыйРезультатВыполненияПотока();
|
||||||
|
ОшибочныйРезультатЗапуска.Статус = СтатусДлительнойОперации().Ошибка;
|
||||||
|
УстановитьСвойстваОшибки(ОшибочныйРезультатЗапуска, УточненнаяИнформацияОбОшибке);
|
||||||
|
ОбновитьСведенияОПотоке(Поток, ОшибочныйРезультатЗапуска);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
ВызватьИсключение;
|
ВызватьИсключение;
|
||||||
|
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
УстановитьПолноеИмяПрикладнойПроцедуры(ИмяМетодаМногопоточногоПроцесса());
|
||||||
|
ОбновитьСведенияОПотоке(Поток, РезультатЗапуска, НоваяПопыткаВыполнения);
|
||||||
|
|
||||||
Возврат РезультатЗапуска;
|
Возврат РезультатЗапуска;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СтатусИзСостояния(Состояние)
|
Процедура ОбновитьСведенияОПотоке(Поток, РезультатЗапуска, НоваяПопытка = Ложь,
|
||||||
|
ПерезапускПроцесса = Ложь, УстановитьЗавершениеАктивного = Ложь)
|
||||||
Если Состояние = СостояниеФоновогоЗадания.Завершено Тогда
|
|
||||||
Возврат СтатусДлительнойОперации().Выполнено;
|
|
||||||
ИначеЕсли Состояние = СостояниеФоновогоЗадания.Отменено Тогда
|
|
||||||
Возврат СтатусДлительнойОперации().Отменено;
|
|
||||||
ИначеЕсли Состояние = СостояниеФоновогоЗадания.Активно Тогда
|
|
||||||
Возврат СтатусДлительнойОперации().Выполняется;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Возврат СтатусДлительнойОперации().Ошибка;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ОбновитьСведенияОбПотоке(Поток, РезультатЗапуска = Неопределено, НоваяПопытка = Истина)
|
|
||||||
|
|
||||||
РезультатЗапускаУказан = РезультатЗапуска <> Неопределено;
|
РезультатЗапускаУказан = РезультатЗапуска <> Неопределено;
|
||||||
|
|
||||||
Если РезультатЗапуска = Неопределено Тогда
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
|
Если Не РезультатЗапускаУказан Тогда
|
||||||
РезультатЗапуска = НовыйРезультатВыполненияПотока();
|
РезультатЗапуска = НовыйРезультатВыполненияПотока();
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Поток.ИдентификаторЗадания) Тогда
|
Если ЗначениеЗаполнено(Поток.ИдентификаторЗадания) Тогда
|
||||||
ПоследнийИдентификатор = ПоследнийИдентификаторЗаданияУправляющегоПотока(Поток);
|
ПоследнийИдентификатор = ПоследнийИдентификаторЗаданияПотока(Поток);
|
||||||
Задание = НайтиЗаданиеПоИдентификатору(ПоследнийИдентификатор);
|
Результат = ЗаданиеВыполнено(ПоследнийИдентификатор, Истина);
|
||||||
|
РезультатЗапуска.Статус = СтатусДлительнойОперации()[Результат.Статус];
|
||||||
Если Задание <> Неопределено Тогда
|
РезультатЗапуска.ИнформацияОбОшибке = Результат.ИнформацияОбОшибке;
|
||||||
РезультатЗапуска.Статус = СтатусИзСостояния(Задание.Состояние);
|
РезультатЗапуска.КраткоеПредставлениеОшибки = Результат.КраткоеПредставлениеОшибки;
|
||||||
|
РезультатЗапуска.ПодробноеПредставлениеОшибки = Результат.ПодробноеПредставлениеОшибки;
|
||||||
Если Задание.ИнформацияОбОшибке <> Неопределено Тогда
|
|
||||||
УстановитьСвойстваОшибки(РезультатЗапуска, Задание.ИнформацияОбОшибке);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
|
||||||
РезультатЗапуска.Статус = СтатусДлительнойОперации().Ошибка;
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
Иначе
|
||||||
РезультатЗапуска.Статус = СтатусДлительнойОперации().Создано;
|
РезультатЗапуска.Статус = СтатусДлительнойОперации().Создано;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -2761,31 +2702,40 @@
|
|||||||
Попытка
|
Попытка
|
||||||
Блокировка.Заблокировать();
|
Блокировка.Заблокировать();
|
||||||
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
|
|
||||||
НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей();
|
НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей();
|
||||||
НаборЗаписей.Отбор.ИдентификаторПроцесса.Установить(ИдентификаторПроцесса);
|
НаборЗаписей.Отбор.ИдентификаторПроцесса.Установить(ИдентификаторПроцесса);
|
||||||
НаборЗаписей.Отбор.ИдентификаторПотока.Установить(ИдентификаторПотока);
|
НаборЗаписей.Отбор.ИдентификаторПотока.Установить(ИдентификаторПотока);
|
||||||
|
|
||||||
НаборЗаписей.Прочитать();
|
НаборЗаписей.Прочитать();
|
||||||
|
СтатусОбновлен = Неопределено;
|
||||||
|
|
||||||
Если НаборЗаписей.Количество() > 0 Тогда
|
Если НаборЗаписей.Количество() > 0 Тогда
|
||||||
Запись = НаборЗаписей.Получить(0);
|
Запись = НаборЗаписей.Получить(0);
|
||||||
|
СтатусОбновлен = Ложь;
|
||||||
|
|
||||||
Если РезультатЗапускаУказан Тогда
|
Если РезультатЗапускаУказан И Не УстановитьЗавершениеАктивного Тогда
|
||||||
|
Если ПерезапускПроцесса Тогда
|
||||||
|
Запись.КлючПотока = Новый ХранилищеЗначения(РезультатЗапуска.ИдентификаторЗадания, Новый СжатиеДанных(9));
|
||||||
|
Иначе
|
||||||
Запись.ИдентификаторЗадания = РезультатЗапуска.ИдентификаторЗадания;
|
Запись.ИдентификаторЗадания = РезультатЗапуска.ИдентификаторЗадания;
|
||||||
Запись.КлючПотока = Поток.КлючПотока;
|
КонецЕсли;
|
||||||
Если НоваяПопытка Тогда
|
Если НоваяПопытка Тогда
|
||||||
Запись.НомерПопытки = Поток.НомерПопытки + 1;
|
Запись.НомерПопытки = Поток.НомерПопытки + 1;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если Не УстановитьЗавершениеАктивного
|
||||||
|
Или Запись.Статус = СтатусДлительнойОперации().Выполняется
|
||||||
|
И ПоследнийИдентификаторЗаданияПотока(Запись) = ПоследнийИдентификаторЗаданияПотока(Поток) Тогда
|
||||||
|
|
||||||
|
СтатусОбновлен = Истина;
|
||||||
Запись.Статус = РезультатЗапуска.Статус;
|
Запись.Статус = РезультатЗапуска.Статус;
|
||||||
Если РезультатЗапуска.Статус = СтатусДлительнойОперации().Ошибка Тогда
|
Если РезультатЗапуска.Статус = СтатусДлительнойОперации().Ошибка Тогда
|
||||||
Запись.ПараметрыМетода = Новый ХранилищеЗначения(РезультатЗапуска.ИнформацияОбОшибке, Новый СжатиеДанных(9));
|
Запись.ПараметрыМетода = Новый ХранилищеЗначения(РезультатЗапуска.ИнформацияОбОшибке, Новый СжатиеДанных(9));
|
||||||
Запись.ПодробноеПредставлениеОшибки = РезультатЗапуска.ПодробноеПредставлениеОшибки;
|
Запись.ПодробноеПредставлениеОшибки = РезультатЗапуска.ПодробноеПредставлениеОшибки;
|
||||||
Запись.КраткоеПредставлениеОшибки = РезультатЗапуска.КраткоеПредставлениеОшибки;
|
Запись.КраткоеПредставлениеОшибки = РезультатЗапуска.КраткоеПредставлениеОшибки;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
ЗаполнитьЗначенияСвойств(Поток, Запись);
|
ЗаполнитьЗначенияСвойств(Поток, Запись);
|
||||||
|
|
||||||
НаборЗаписей.Записать();
|
НаборЗаписей.Записать();
|
||||||
@@ -2797,6 +2747,8 @@
|
|||||||
ВызватьИсключение;
|
ВызватьИсключение;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|
||||||
|
УстановитьЗавершениеАктивного = СтатусОбновлен;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Функция ПервыйИдентификаторЗаданияУправляющегоПотока(ИдентификаторПроцесса)
|
Функция ПервыйИдентификаторЗаданияУправляющегоПотока(ИдентификаторПроцесса)
|
||||||
@@ -2827,7 +2779,7 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция ПоследнийИдентификаторЗаданияУправляющегоПотока(Поток)
|
Функция ПоследнийИдентификаторЗаданияПотока(Поток)
|
||||||
|
|
||||||
ПоследнийИдентификатор = Поток.ИдентификаторЗадания;
|
ПоследнийИдентификатор = Поток.ИдентификаторЗадания;
|
||||||
|
|
||||||
@@ -2947,10 +2899,7 @@
|
|||||||
Прервать;
|
Прервать;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ОжидатьЗавершениеПотока(Потоки[0]) Тогда // Задание выполнено.
|
ОжидатьЗавершениеПотока(Потоки[0]);
|
||||||
ОбновитьСведенияОбПотоке(Потоки[0]);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Возврат ВыполнитьВФоне;
|
Возврат ВыполнитьВФоне;
|
||||||
@@ -3013,29 +2962,23 @@
|
|||||||
// Поток - СтрокаТаблицыЗначений - поток, завершение которого необходимо ожидать.
|
// Поток - СтрокаТаблицыЗначений - поток, завершение которого необходимо ожидать.
|
||||||
// Длительность - Число - максимальная длительность ожидания в секундах.
|
// Длительность - Число - максимальная длительность ожидания в секундах.
|
||||||
//
|
//
|
||||||
// Возвращаемое значение:
|
Процедура ОжидатьЗавершениеПотока(Поток, Длительность = 1)
|
||||||
// Булево - Истина - поток выполнен, Ложь - поток еще выполняется.
|
|
||||||
//
|
|
||||||
Функция ОжидатьЗавершениеПотока(Поток, Длительность = 1)
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Поток.ИдентификаторЗадания) Тогда
|
Если Не ЗначениеЗаполнено(Поток.ИдентификаторЗадания) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(Поток.ИдентификаторЗадания);
|
Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(Поток.ИдентификаторЗадания);
|
||||||
|
|
||||||
Если Задание <> Неопределено Тогда
|
Если Задание <> Неопределено Тогда
|
||||||
Задание = Задание.ОжидатьЗавершенияВыполнения(Длительность);
|
Задание = Задание.ОжидатьЗавершенияВыполнения(Длительность);
|
||||||
ЗаданиеЗавершено = (Задание.Состояние <> СостояниеФоновогоЗадания.Активно);
|
|
||||||
Возврат ЗаданиеЗавершено;
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецПроцедуры
|
||||||
|
|
||||||
Возврат Истина;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ЕстьЗавершенныеПотоки(Потоки, ЗавершитьДосрочноЕслиОшибка, ИдентификаторПроцесса)
|
Функция ЕстьЗавершенныеПотоки(Потоки, ЗавершитьДосрочноЕслиОшибка, ИдентификаторПроцесса)
|
||||||
|
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
ЕстьЗавершенныеПотоки = Ложь;
|
ЕстьЗавершенныеПотоки = Ложь;
|
||||||
Индекс = Потоки.Количество() - 1;
|
Индекс = Потоки.Количество() - 1;
|
||||||
|
|
||||||
@@ -3047,24 +2990,38 @@
|
|||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ПоследнийИдентификатор = ПоследнийИдентификаторЗаданияУправляющегоПотока(Поток);
|
ЭтоПотокТекущегоПроцесса = (Поток.ИдентификаторПроцесса = ИдентификаторПроцесса);
|
||||||
|
|
||||||
|
ПоследнийИдентификатор = ПоследнийИдентификаторЗаданияПотока(Поток);
|
||||||
Результат = ЗаданиеВыполнено(ПоследнийИдентификатор, Истина);
|
Результат = ЗаданиеВыполнено(ПоследнийИдентификатор, Истина);
|
||||||
|
|
||||||
Если Результат.Статус = "Выполняется" Тогда
|
Если Результат.Статус = "Выполняется"
|
||||||
|
Или Результат.Статус = "Ошибка"
|
||||||
|
И Результат.Задание = Неопределено
|
||||||
|
И Не ЭтоПотокТекущегоПроцесса Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ОбновитьСведенияОбПотоке(Поток);
|
СтатусОбновлен = Истина;
|
||||||
ЭтоПотокТекущегоПроцесса = (Поток.ИдентификаторПроцесса = ИдентификаторПроцесса);
|
ОбновитьСведенияОПотоке(Поток, Неопределено,,, СтатусОбновлен);
|
||||||
|
ОбновленныйСтатус = Поток.Статус;
|
||||||
|
|
||||||
|
Если СтатусОбновлен <> Неопределено
|
||||||
|
И ОбновленныйСтатус = СтатусДлительнойОперации().Выполняется Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
Потоки.Удалить(Поток);
|
Потоки.Удалить(Поток);
|
||||||
ЕстьЗавершенныеПотоки = Истина;
|
ЕстьЗавершенныеПотоки = Истина;
|
||||||
|
|
||||||
Если Результат.Статус = "Выполнено" Тогда
|
Если СтатусОбновлен <> Неопределено
|
||||||
|
И ОбновленныйСтатус = СтатусДлительнойОперации().Выполнено Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Результат.Статус = "Ошибка" Тогда
|
Если СтатусОбновлен = Истина
|
||||||
ЗаписатьОшибку(Результат.ТекстОшибки);
|
И ОбновленныйСтатус = СтатусДлительнойОперации().Ошибка Тогда
|
||||||
|
|
||||||
|
ЗаписатьОшибку(Результат.ПодробноеПредставлениеОшибки);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЗавершитьДосрочноЕслиОшибка = Истина
|
Если ЗавершитьДосрочноЕслиОшибка = Истина
|
||||||
@@ -3127,17 +3084,18 @@
|
|||||||
Если УправляющийПоток <> Неопределено
|
Если УправляющийПоток <> Неопределено
|
||||||
И УправляющийПоток.ДатаСоздания + СрокОтмены > ТекущаяДатаСеанса Тогда
|
И УправляющийПоток.ДатаСоздания + СрокОтмены > ТекущаяДатаСеанса Тогда
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(УправляющийПоток.ИдентификаторЗадания)
|
ИдентификаторЗадания = ПоследнийИдентификаторЗаданияПотока(УправляющийПоток);
|
||||||
И УправляющийПоток.ДатаСоздания + СрокУстаревания > ТекущаяДатаСеанса Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
ИдентификаторЗадания = ПоследнийИдентификаторЗаданияУправляющегоПотока(УправляющийПоток);
|
|
||||||
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
||||||
Если Задание <> Неопределено
|
Если Задание = Неопределено
|
||||||
|
И (УправляющийПоток.Статус = СтатусДлительнойОперации().Выполняется
|
||||||
|
Или УправляющийПоток.ДатаСоздания + СрокУстаревания > ТекущаяДатаСеанса
|
||||||
|
Или УправляющийПоток.Статус = СтатусДлительнойОперации().Ошибка
|
||||||
|
И УправляющийПоток.НомерПопытки < КоличествоПопыток())
|
||||||
|
Или Задание <> Неопределено
|
||||||
И ( Задание.Состояние = СостояниеФоновогоЗадания.Активно
|
И ( Задание.Состояние = СостояниеФоновогоЗадания.Активно
|
||||||
|
Или Задание.Конец + СрокУстаревания > ТекущаяДатаСеанса
|
||||||
Или Задание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно
|
Или Задание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно
|
||||||
И УправляющийПоток.НомерПопытки < КоличествоПопыток()
|
И УправляющийПоток.НомерПопытки < КоличествоПопыток()) Тогда
|
||||||
И УправляющийПоток.ДатаСоздания + СрокУстаревания > ТекущаяДатаСеанса) Тогда
|
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -3146,7 +3104,7 @@
|
|||||||
ПотокиПроцесса = ВсеПотоки.Скопировать(Отбор);
|
ПотокиПроцесса = ВсеПотоки.Скопировать(Отбор);
|
||||||
ПотокиПроцесса.Сортировать("ИдентификаторПотока");
|
ПотокиПроцесса.Сортировать("ИдентификаторПотока");
|
||||||
Для Каждого ПотокПроцесса Из ПотокиПроцесса Цикл
|
Для Каждого ПотокПроцесса Из ПотокиПроцесса Цикл
|
||||||
ИдентификаторЗадания = ПоследнийИдентификаторЗаданияУправляющегоПотока(ПотокПроцесса);
|
ИдентификаторЗадания = ПоследнийИдентификаторЗаданияПотока(ПотокПроцесса);
|
||||||
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
Задание = НайтиЗаданиеПоИдентификатору(ИдентификаторЗадания);
|
||||||
Если Задание <> Неопределено
|
Если Задание <> Неопределено
|
||||||
И Задание.Состояние = СостояниеФоновогоЗадания.Активно Тогда
|
И Задание.Состояние = СостояниеФоновогоЗадания.Активно Тогда
|
||||||
@@ -3385,6 +3343,7 @@
|
|||||||
Запись = НаборЗаписей.Добавить();
|
Запись = НаборЗаписей.Добавить();
|
||||||
Запись.ИдентификаторПроцесса = ИдентификаторПроцесса;
|
Запись.ИдентификаторПроцесса = ИдентификаторПроцесса;
|
||||||
Запись.ИдентификаторПотока = ИдентификаторПотока;
|
Запись.ИдентификаторПотока = ИдентификаторПотока;
|
||||||
|
Запись.Статус = СтатусДлительнойОперации().Создано;
|
||||||
Запись.НомерПопытки = 0;
|
Запись.НомерПопытки = 0;
|
||||||
Запись.ДатаСоздания = ТекущаяДатаСеанса;
|
Запись.ДатаСоздания = ТекущаяДатаСеанса;
|
||||||
Запись.ИмяПользователя = ИмяПользователя;
|
Запись.ИмяПользователя = ИмяПользователя;
|
||||||
@@ -3422,22 +3381,91 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ПроверитьВозможностьЗапускаМногопоточнойДлительнойОперации(ПараметрыВыполнения, НаборПараметров)
|
Процедура ПроверитьВозможностьЗапускаМногопоточнойДлительнойОперации(ПараметрыВыполнения, НаборПараметров, ИмяФункции)
|
||||||
|
|
||||||
|
ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяФункции,
|
||||||
|
"ПараметрыВыполнения", ПараметрыВыполнения, Тип("Структура"));
|
||||||
|
|
||||||
Если НаборПараметров <> Неопределено
|
Если НаборПараметров <> Неопределено
|
||||||
И ТипЗнч(НаборПараметров) <> Тип("Соответствие")
|
И ТипЗнч(НаборПараметров) <> Тип("Соответствие")
|
||||||
И ТипЗнч(НаборПараметров) <> Тип("Структура") Тогда
|
И ТипЗнч(НаборПараметров) <> Тип("Структура") Тогда
|
||||||
ВызватьИсключение(НСтр("ru ='Неверный тип набора параметров многопоточной длительной операции.'"),
|
|
||||||
КатегорияОшибки.ОшибкаКонфигурации);
|
ТекстОшибки = НСтр("ru = 'Неверный тип набора параметров многопоточной длительной операции.'");
|
||||||
|
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ОбщегоНазначения.РазделениеВключено() И Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
|
Если ОбщегоНазначения.РазделениеВключено()
|
||||||
ВызватьИсключение(НСтр("ru ='Многопоточные длительные операции в неразделенном сеансе не поддерживаются.'"),
|
И Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
|
||||||
КатегорияОшибки.ОшибкаКонфигурации);
|
|
||||||
|
ТекстОшибки = НСтр("ru = 'Неверный тип набора параметров многопоточной длительной операции.'");
|
||||||
|
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
// См. ВыполнитьФункциюВНесколькоПотоков
|
||||||
|
Функция ВыполнитьМетодВНесколькоПотоков(Знач ИмяМетода, Знач ПараметрыВыполнения, Знач НаборПараметровМетода,
|
||||||
|
Знач ЭтоВыполнениеФункции)
|
||||||
|
|
||||||
|
НовыеПараметрыВыполнения = ПараметрыВыполненияФункции(Неопределено);
|
||||||
|
ЗаполнитьЗначенияСвойств(НовыеПараметрыВыполнения, ПараметрыВыполнения);
|
||||||
|
ПараметрыВыполнения = НовыеПараметрыВыполнения;
|
||||||
|
|
||||||
|
ИмяФункции = ?(ЭтоВыполнениеФункции, "ДлительныеОперации.ВыполнитьФункциюВНесколькоПотоков",
|
||||||
|
"ДлительныеОперации.ВыполнитьПроцедуруВНесколькоПотоков");
|
||||||
|
|
||||||
|
ПроверитьВозможностьЗапускаМногопоточнойДлительнойОперации(ПараметрыВыполнения, НаборПараметровМетода, ИмяФункции);
|
||||||
|
|
||||||
|
ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, ИмяФункции);
|
||||||
|
|
||||||
|
Если ПараметрыВыполнения.ОжидатьЗавершение = ОбщиеПараметрыВыполненияВФоне().ОжидатьЗавершение Тогда
|
||||||
|
ПараметрыВыполнения.ОжидатьЗавершение = 0;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
АдресаРезультатов = Новый Соответствие;
|
||||||
|
|
||||||
|
Если ТипЗнч(НаборПараметровМетода) = Тип("Соответствие") Тогда
|
||||||
|
Для Каждого ПараметрФункции Из НаборПараметровМетода Цикл
|
||||||
|
АдресРезультатаПотока = ПоместитьВоВременноеХранилище(Неопределено, Новый УникальныйИдентификатор);
|
||||||
|
АдресаРезультатов.Вставить(ПараметрФункции.Ключ, АдресРезультатаПотока);
|
||||||
|
КонецЦикла;
|
||||||
|
ПараметрыМетода = НаборПараметровМетода.Количество();
|
||||||
|
Иначе
|
||||||
|
ПараметрыМетода = НаборПараметровМетода; // Структура
|
||||||
|
НаборПараметровМетода = Новый Соответствие;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИдентификаторПроцесса = Новый УникальныйИдентификатор;
|
||||||
|
ПараметрыМногопоточнойОперации = ПараметрыМногопоточнойОперации(ИдентификаторПроцесса);
|
||||||
|
ПараметрыМногопоточнойОперации.ИмяМетода = ИмяМетода;
|
||||||
|
ПараметрыМногопоточнойОперации.ЭтоФункция = ?(ЭтоВыполнениеФункции, "Функция", "Процедура");
|
||||||
|
ПараметрыМногопоточнойОперации.ПараметрыВыполнения = ПараметрыВыполнения;
|
||||||
|
ПараметрыМногопоточнойОперации.ПараметрыМетода = ПараметрыМетода;
|
||||||
|
|
||||||
|
ПодготовитьМногопоточнуюОперациюКЗапуску(ИмяМетода,
|
||||||
|
АдресаРезультатов, ИдентификаторПроцесса, НаборПараметровМетода);
|
||||||
|
|
||||||
|
РезультатЗапуска = Новый Структура("Статус, ИдентификаторЗадания, АдресРезультата",
|
||||||
|
СтатусДлительнойОперации().Выполняется,, ПараметрыВыполнения.АдресРезультата);
|
||||||
|
ЗапланироватьЗапускПотоковДлительныхОпераций(РезультатЗапуска, ПараметрыМногопоточнойОперации);
|
||||||
|
|
||||||
|
РезультатЗапуска = ВыполнитьФункцию(ПараметрыВыполнения,
|
||||||
|
ИмяМетодаМногопоточногоПроцесса(), ПараметрыМногопоточнойОперации);
|
||||||
|
|
||||||
|
Если РезультатЗапуска.Статус <> СтатусДлительнойОперации().Выполняется Тогда
|
||||||
|
УдалитьДанныеОПотоках(ИдентификаторПроцесса);
|
||||||
|
Иначе
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
ЗарегистрироватьИдентификаторУправляющегоПотока(РезультатЗапуска.ИдентификаторЗадания, ИдентификаторПроцесса);
|
||||||
|
УстановитьПривилегированныйРежим(Ложь);
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Ложь);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат РезультатЗапуска;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Возвращаемое значение:
|
// Возвращаемое значение:
|
||||||
// Структура:
|
// Структура:
|
||||||
// * Создано - Строка
|
// * Создано - Строка
|
||||||
@@ -3463,21 +3491,33 @@
|
|||||||
Возврат 3;
|
Возврат 3;
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ЗарегистрироватьИдентификаторУправляющегоПотока(ИдентификаторЗадания, ИдентификаторПроцесса)
|
||||||
|
|
||||||
|
Если ПараметрыСеанса.ДлительныеОперации.Запущенные.Получить(ИдентификаторЗадания) = Неопределено Тогда
|
||||||
|
Свойства = Новый Структура(ПараметрыСеанса.ДлительныеОперации);
|
||||||
|
Запущенные = Новый Соответствие(Свойства.Запущенные);
|
||||||
|
Запущенные.Вставить(ИдентификаторЗадания, ИдентификаторПроцесса);
|
||||||
|
Свойства.Запущенные = Новый ФиксированноеСоответствие(Запущенные);
|
||||||
|
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Функция ВыполненПерезапускУправляющегоПотока(ИдентификаторЗадания, Задание)
|
Функция ВыполненПерезапускУправляющегоПотока(ИдентификаторЗадания, Задание)
|
||||||
|
|
||||||
Если Задание <> Неопределено
|
ИдентификаторПроцесса = ПараметрыСеанса.ДлительныеОперации.Запущенные.Получить(ИдентификаторЗадания);
|
||||||
|
|
||||||
|
Если ИдентификаторПроцесса = Неопределено
|
||||||
|
Или Задание <> Неопределено
|
||||||
И Задание.Состояние <> СостояниеФоновогоЗадания.ЗавершеноАварийно
|
И Задание.Состояние <> СостояниеФоновогоЗадания.ЗавершеноАварийно
|
||||||
Или Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
|
Или Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
|
||||||
Возврат Ложь;
|
Возврат Ложь;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
УстановитьОтключениеБезопасногоРежима(Истина);
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
|
|
||||||
ПустойИдентификатор = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор();
|
ПустойИдентификатор = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор();
|
||||||
|
|
||||||
Запрос = Новый Запрос;
|
Запрос = Новый Запрос;
|
||||||
Запрос.УстановитьПараметр("ИдентификаторЗадания", ИдентификаторЗадания);
|
Запрос.УстановитьПараметр("ИдентификаторПроцесса", ИдентификаторПроцесса);
|
||||||
Запрос.УстановитьПараметр("ИдентификаторПотока", ПустойИдентификатор);
|
Запрос.УстановитьПараметр("ИдентификаторПотока", ПустойИдентификатор);
|
||||||
Запрос.Текст =
|
Запрос.Текст =
|
||||||
"ВЫБРАТЬ
|
"ВЫБРАТЬ
|
||||||
@@ -3490,8 +3530,8 @@
|
|||||||
|ИЗ
|
|ИЗ
|
||||||
| РегистрСведений.ДлительныеОперации КАК ДлительныеОперации
|
| РегистрСведений.ДлительныеОперации КАК ДлительныеОперации
|
||||||
|ГДЕ
|
|ГДЕ
|
||||||
| ДлительныеОперации.ИдентификаторПотока = &ИдентификаторПотока
|
| ДлительныеОперации.ИдентификаторПроцесса = &ИдентификаторПроцесса
|
||||||
| И ДлительныеОперации.ИдентификаторЗадания = &ИдентификаторЗадания";
|
| И ДлительныеОперации.ИдентификаторПотока = &ИдентификаторПотока";
|
||||||
|
|
||||||
РезультатЗапроса = Запрос.Выполнить();
|
РезультатЗапроса = Запрос.Выполнить();
|
||||||
Если РезультатЗапроса.Пустой() Тогда
|
Если РезультатЗапроса.Пустой() Тогда
|
||||||
@@ -3537,9 +3577,7 @@
|
|||||||
Свойства.Перезапущенные = Новый ФиксированноеСоответствие(Перезапущенные);
|
Свойства.Перезапущенные = Новый ФиксированноеСоответствие(Перезапущенные);
|
||||||
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
||||||
|
|
||||||
Поток.КлючПотока = Новый ХранилищеЗначения(РезультатЗапуска.ИдентификаторЗадания, Новый СжатиеДанных(9));
|
ОбновитьСведенияОПотоке(Поток, РезультатЗапуска, Истина, Истина);
|
||||||
РезультатЗапуска.ИдентификаторЗадания = ИдентификаторЗадания;
|
|
||||||
ОбновитьСведенияОбПотоке(Поток, РезультатЗапуска);
|
|
||||||
Исключение
|
Исключение
|
||||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
НСтр("ru = 'При попытке перезапуска фонового задания %1
|
НСтр("ru = 'При попытке перезапуска фонового задания %1
|
||||||
@@ -3557,6 +3595,55 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура УстановитьЗавершениеДляУправляющегоПотока(ИдентификаторЗадания, Результат)
|
||||||
|
|
||||||
|
ИдентификаторПроцесса = ПараметрыСеанса.ДлительныеОперации.Запущенные.Получить(ИдентификаторЗадания);
|
||||||
|
Если ИдентификаторПроцесса = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПустойИдентификатор = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор();
|
||||||
|
|
||||||
|
Запрос = Новый Запрос;
|
||||||
|
Запрос.УстановитьПараметр("ИдентификаторПроцесса", ИдентификаторПроцесса);
|
||||||
|
Запрос.УстановитьПараметр("ИдентификаторПотока", ПустойИдентификатор);
|
||||||
|
Запрос.УстановитьПараметр("Статус", СтатусДлительнойОперации().Выполняется);
|
||||||
|
Запрос.Текст =
|
||||||
|
"ВЫБРАТЬ ПЕРВЫЕ 1
|
||||||
|
| ИСТИНА КАК ЗначениеИстина
|
||||||
|
|ИЗ
|
||||||
|
| РегистрСведений.ДлительныеОперации КАК ДлительныеОперации
|
||||||
|
|ГДЕ
|
||||||
|
| ДлительныеОперации.ИдентификаторПроцесса = &ИдентификаторПроцесса
|
||||||
|
| И ДлительныеОперации.ИдентификаторПотока = &ИдентификаторПотока
|
||||||
|
| И ДлительныеОперации.Статус = &Статус";
|
||||||
|
|
||||||
|
Если Не Запрос.Выполнить().Пустой() Тогда
|
||||||
|
// Установка статуса Выполнено у основного потока.
|
||||||
|
РезультатЗапуска = НовыйРезультатВыполненияПотока();
|
||||||
|
РезультатЗапуска.Статус = СтатусДлительнойОперации()[Результат.Статус];
|
||||||
|
РезультатЗапуска.ИнформацияОбОшибке = Результат.ИнформацияОбОшибке;
|
||||||
|
РезультатЗапуска.КраткоеПредставлениеОшибки = Результат.КраткоеПредставлениеОшибки;
|
||||||
|
РезультатЗапуска.ПодробноеПредставлениеОшибки = Результат.ПодробноеПредставлениеОшибки;
|
||||||
|
ОписаниеОсновногоПотока = Новый Структура;
|
||||||
|
ОписаниеОсновногоПотока.Вставить("ИдентификаторПроцесса", ИдентификаторПроцесса);
|
||||||
|
ОписаниеОсновногоПотока.Вставить("ИдентификаторПотока", ПустойИдентификатор);
|
||||||
|
ОписаниеОсновногоПотока.Вставить("ИдентификаторЗадания", ИдентификаторЗадания);
|
||||||
|
ОписаниеОсновногоПотока.Вставить("КлючПотока",
|
||||||
|
Новый ХранилищеЗначения(ПоследнийИдентификатор(ИдентификаторЗадания)));
|
||||||
|
|
||||||
|
ОбновитьСведенияОПотоке(ОписаниеОсновногоПотока, РезультатЗапуска,,, Истина);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
// Удаление из запущенных.
|
||||||
|
Свойства = Новый Структура(ПараметрыСеанса.ДлительныеОперации);
|
||||||
|
Запущенные = Новый Соответствие(Свойства.Запущенные);
|
||||||
|
Запущенные.Удалить(ИдентификаторЗадания);
|
||||||
|
Свойства.Запущенные = Новый ФиксированноеСоответствие(Запущенные);
|
||||||
|
ПараметрыСеанса.ДлительныеОперации = Новый ФиксированнаяСтруктура(Свойства);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура УдалитьДанныеОПотоках(ИдентификаторПроцесса)
|
Процедура УдалитьДанныеОПотоках(ИдентификаторПроцесса)
|
||||||
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|||||||
@@ -5186,6 +5186,8 @@
|
|||||||
|
|
||||||
Если ЗначениеЗаполнено(СведенияОДоверителе.НаимИП) Тогда
|
Если ЗначениеЗаполнено(СведенияОДоверителе.НаимИП) Тогда
|
||||||
ЗаписьXML.ЗаписатьАтрибут("НаимИП", СведенияОДоверителе.НаимИП);
|
ЗаписьXML.ЗаписатьАтрибут("НаимИП", СведенияОДоверителе.НаимИП);
|
||||||
|
Иначе
|
||||||
|
ЗаписьXML.ЗаписатьАтрибут("НаимИП", ФИОСтрокой(СведенияОДоверителе.СведФЛ.ФИО));
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЗаписьXML.ЗаписатьАтрибут("ИННФЛ", СведенияОДоверителе.ИННФЛ);
|
ЗаписьXML.ЗаписатьАтрибут("ИННФЛ", СведенияОДоверителе.ИННФЛ);
|
||||||
@@ -5263,6 +5265,26 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ФИОСтрокой(ФИО) Экспорт
|
||||||
|
|
||||||
|
Фамилия = ФИО.Фамилия;
|
||||||
|
Имя = ФИО.Имя;
|
||||||
|
Отчество = ФИО.Отчество;
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(Отчество) Тогда
|
||||||
|
ФИОСтрокой = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = '%1 %2 %3'"),
|
||||||
|
Фамилия, Имя, Отчество);
|
||||||
|
Иначе
|
||||||
|
ФИОСтрокой = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = '%1 %2'"),
|
||||||
|
Фамилия, Имя);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат ФИОСтрокой;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
Функция ИспользуетсяРежимТестирования()
|
Функция ИспользуетсяРежимТестирования()
|
||||||
|
|
||||||
Возврат Ложь;
|
Возврат Ложь;
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
МосковскоеВремя = НачалоДня(МестноеВремя(ТекущаяУниверсальнаяДата(), ЧасовойПоясМосквы));
|
МосковскоеВремя = НачалоДня(МестноеВремя(ТекущаяУниверсальнаяДата(), ЧасовойПоясМосквы));
|
||||||
|
|
||||||
Возврат МосковскоеВремя >= Дата(2025, 10, 1);
|
Возврат МосковскоеВремя >= Дата(2025, 11, 1);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
@@ -1861,7 +1861,7 @@
|
|||||||
ИмяФайлаСИзменениями = ПолноеИмяФайлаДанныхОтложенногоОбновления();
|
ИмяФайлаСИзменениями = ПолноеИмяФайлаДанныхОтложенногоОбновления();
|
||||||
|
|
||||||
ФайлДляЗаписиXML = Новый ЗаписьFastInfoset;
|
ФайлДляЗаписиXML = Новый ЗаписьFastInfoset;
|
||||||
ФайлДляЗаписиXML.ОткрытьФайл(ИмяФайлаСИзменениями);
|
ФайлДляЗаписиXML.УстановитьДвоичныеДанные();
|
||||||
ФайлДляЗаписиXML.ЗаписатьОбъявлениеXML();
|
ФайлДляЗаписиXML.ЗаписатьОбъявлениеXML();
|
||||||
ФайлДляЗаписиXML.ЗаписатьНачалоЭлемента("Objects");
|
ФайлДляЗаписиXML.ЗаписатьНачалоЭлемента("Objects");
|
||||||
|
|
||||||
@@ -2135,10 +2135,8 @@
|
|||||||
|
|
||||||
ЗаписьXML = Параметры.ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами;
|
ЗаписьXML = Параметры.ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами;
|
||||||
ЗаписьXML.ЗаписатьКонецЭлемента();
|
ЗаписьXML.ЗаписатьКонецЭлемента();
|
||||||
ЗаписьXML.Закрыть();
|
|
||||||
|
|
||||||
ИмяФайлаСИзменениями = Параметры.ИмяФайлаСИзменениями;
|
ДвоичныеДанныеФайла = ЗаписьXML.Закрыть();
|
||||||
ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ИмяФайлаСИзменениями);
|
|
||||||
|
|
||||||
Возврат Новый ХранилищеЗначения(ДвоичныеДанныеФайла, Новый СжатиеДанных(9));
|
Возврат Новый ХранилищеЗначения(ДвоичныеДанныеФайла, Новый СжатиеДанных(9));
|
||||||
|
|
||||||
|
|||||||
@@ -44,7 +44,7 @@
|
|||||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||||
|
|
||||||
Описание.Имя = "СтандартныеПодсистемы";
|
Описание.Имя = "СтандартныеПодсистемы";
|
||||||
Описание.Версия = "3.1.11.283";
|
Описание.Версия = "3.1.11.299";
|
||||||
Описание.ИдентификаторИнтернетПоддержки = "SSL";
|
Описание.ИдентификаторИнтернетПоддержки = "SSL";
|
||||||
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
||||||
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
|
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
|
||||||
|
|||||||
@@ -943,6 +943,12 @@
|
|||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЗначениеСписка = Форма.Элементы.Найти(ИмяСписка + "Значение");
|
||||||
|
Если Список.Количество() > 0 И ЗначениеСписка <> Неопределено
|
||||||
|
И ЗначениеСписка.ПараметрыВыбора.Количество() > 0 Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Для Каждого Элемент Из ЗначениеОтбора Цикл
|
Для Каждого Элемент Из ЗначениеОтбора Цикл
|
||||||
Если Список.НайтиПоЗначению(Элемент.Значение) = Неопределено Тогда
|
Если Список.НайтиПоЗначению(Элемент.Значение) = Неопределено Тогда
|
||||||
Список.Добавить(Элемент.Значение);
|
Список.Добавить(Элемент.Значение);
|
||||||
|
|||||||
@@ -433,16 +433,12 @@
|
|||||||
|
|
||||||
Если НЕ ИспользуетсяПочтовыйКлиент() И ПолучитьФункциональнуюОпцию("ХранитьИсториюРассылкиОтчетов")
|
Если НЕ ИспользуетсяПочтовыйКлиент() И ПолучитьФункциональнуюОпцию("ХранитьИсториюРассылкиОтчетов")
|
||||||
И ТипЗнч(ПараметрыЖурнала.Данные) = Тип("СправочникСсылка.РассылкиОтчетов") Тогда
|
И ТипЗнч(ПараметрыЖурнала.Данные) = Тип("СправочникСсылка.РассылкиОтчетов") Тогда
|
||||||
ПоляИстории = ПоляИсторииРассылкиОтчетов(ПараметрыЖурнала.Данные, СтрокаПолучатель.Ключ, ПараметрыДоставки.ДатаВыполнения);
|
КлючАдресаДоставки = ?(ПараметрыДоставки.СкрытыеКопии, "СкрытыеКопии", "Кому");
|
||||||
ПоляИстории.УчетнаяЗапись = ПараметрыДоставки.УчетнаяЗапись;
|
АдресаПолучателя = ПараметрыДоставки.ПараметрыПисьма[КлючАдресаДоставки];
|
||||||
ПоляИстории.АдресЭП = СтрокаПолучатель.Значение;
|
Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
ПоляИстории.Комментарий = ТекстСообщения;
|
"%1 %2", ТекстСообщения, РасширенноеПредставлениеОшибки);
|
||||||
ПоляИстории.Выполнена = Ложь;
|
ЗафиксироватьНеудачныйРезультатРассылки(ПараметрыДоставки, ПараметрыЖурнала,
|
||||||
ПоляИстории.СпособПолучения = СпособПолученияРассылки(ПараметрыДоставки, СтрокаПолучатель.Ключ, СтрокаПолучатель.Значение);
|
ПараметрыДоставки.Получатель, АдресаПолучателя, Комментарий);
|
||||||
ПоляИстории.ИдентификаторПисьма = "";
|
|
||||||
ПоляИстории.Период = ТекущаяДатаСеанса();
|
|
||||||
|
|
||||||
РегистрыСведений.ИсторияРассылкиОтчетов.ЗафиксироватьРезультатВыполненияРассылкиПолучателю(ПоляИстории);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|
||||||
@@ -3429,12 +3425,15 @@
|
|||||||
ПоляИстории = ПоляИсторииРассылкиОтчетов(ПараметрыЖурнала.Данные, Получатель, ПараметрыДоставки.ДатаВыполнения);
|
ПоляИстории = ПоляИсторииРассылкиОтчетов(ПараметрыЖурнала.Данные, Получатель, ПараметрыДоставки.ДатаВыполнения);
|
||||||
ПоляИстории.УчетнаяЗапись = ПараметрыДоставки.УчетнаяЗапись;
|
ПоляИстории.УчетнаяЗапись = ПараметрыДоставки.УчетнаяЗапись;
|
||||||
ПоляИстории.АдресЭП = Кому.Адрес;
|
ПоляИстории.АдресЭП = Кому.Адрес;
|
||||||
ПоляИстории.Комментарий = РезультатОтправки.ОписаниеОшибки;
|
|
||||||
ПоляИстории.Выполнена = Ложь;
|
ПоляИстории.Выполнена = Ложь;
|
||||||
ПоляИстории.СпособПолучения = СпособПолученияРассылки(ПараметрыДоставки, Получатель, Кому.Адрес);
|
ПоляИстории.СпособПолучения = СпособПолученияРассылки(ПараметрыДоставки, Получатель, Кому.Адрес);
|
||||||
|
Если ТипЗнч(РезультатОтправки) = Тип("Строка") Тогда
|
||||||
|
ПоляИстории.Комментарий = РезультатОтправки;
|
||||||
|
Иначе
|
||||||
|
ПоляИстории.Комментарий = РезультатОтправки.ОписаниеОшибки;
|
||||||
ПоляИстории.ЭлектронноеПисьмоИсходящее = РезультатОтправки.СсылкаНаПисьмо;
|
ПоляИстории.ЭлектронноеПисьмоИсходящее = РезультатОтправки.СсылкаНаПисьмо;
|
||||||
ПоляИстории.ИдентификаторПисьма = РезультатОтправки.ИдентификаторПисьма;
|
ПоляИстории.ИдентификаторПисьма = РезультатОтправки.ИдентификаторПисьма;
|
||||||
|
КонецЕсли;
|
||||||
РегистрыСведений.ИсторияРассылкиОтчетов.ЗафиксироватьРезультатВыполненияРассылкиПолучателю(ПоляИстории);
|
РегистрыСведений.ИсторияРассылкиОтчетов.ЗафиксироватьРезультатВыполненияРассылкиПолучателю(ПоляИстории);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
@@ -5126,24 +5125,13 @@
|
|||||||
|
|
||||||
Если ПолучитьФункциональнуюОпцию("ХранитьИсториюРассылкиОтчетов") И Не ИспользуетсяПочтовыйКлиент() И ТипЗнч(
|
Если ПолучитьФункциональнуюОпцию("ХранитьИсториюРассылкиОтчетов") И Не ИспользуетсяПочтовыйКлиент() И ТипЗнч(
|
||||||
ПараметрыЖурнала.Данные) = Тип("СправочникСсылка.РассылкиОтчетов") Тогда
|
ПараметрыЖурнала.Данные) = Тип("СправочникСсылка.РассылкиОтчетов") Тогда
|
||||||
|
Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
"%1 %2", ШаблонСообщенияОбОшибке, РасширенноеПредставлениеОшибки);
|
||||||
Для Каждого СтрокаПолучатель Из ПараметрыДоставки.Получатели Цикл
|
Для Каждого СтрокаПолучатель Из ПараметрыДоставки.Получатели Цикл
|
||||||
АдресаПолучателя = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(
|
АдресаПолучателя = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(
|
||||||
СтрокаПолучатель.Значение);
|
СтрокаПолучатель.Значение);
|
||||||
Для Каждого АдресЭП Из АдресаПолучателя Цикл
|
ЗафиксироватьНеудачныйРезультатРассылки(ПараметрыДоставки, ПараметрыЖурнала, СтрокаПолучатель.Ключ,
|
||||||
ПоляИстории = ПоляИсторииРассылкиОтчетов(ПараметрыЖурнала.Данные, СтрокаПолучатель.Ключ,
|
АдресаПолучателя, Комментарий);
|
||||||
ПараметрыДоставки.ДатаВыполнения);
|
|
||||||
ПоляИстории.УчетнаяЗапись = ПараметрыДоставки.УчетнаяЗапись;
|
|
||||||
ПоляИстории.АдресЭП = АдресЭП.Адрес;
|
|
||||||
ПоляИстории.Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
|
||||||
"%1 %2", ШаблонСообщенияОбОшибке, РасширенноеПредставлениеОшибки);
|
|
||||||
ПоляИстории.Выполнена = Ложь;
|
|
||||||
ПоляИстории.СпособПолучения = СпособПолученияРассылки(ПараметрыДоставки, СтрокаПолучатель.Ключ,
|
|
||||||
АдресЭП.Адрес);
|
|
||||||
|
|
||||||
РегистрыСведений.ИсторияРассылкиОтчетов.ЗафиксироватьРезультатВыполненияРассылкиПолучателю(
|
|
||||||
ПоляИстории);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|||||||
@@ -1780,6 +1780,9 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
УстановитьОтключениеБезопасногоРежима(Истина);
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
Если ДоставкаСерверныхОповещенийСОтсрочкойУжеВыполняется(ТекущееФоновоеЗадание)
|
Если ДоставкаСерверныхОповещенийСОтсрочкойУжеВыполняется(ТекущееФоновоеЗадание)
|
||||||
Или Не СерверныеОповещенияСлужебныйПовтИсп.УведомленияКлиентаДоступны()
|
Или Не СерверныеОповещенияСлужебныйПовтИсп.УведомленияКлиентаДоступны()
|
||||||
И Не ТекущийПользовательЗарегистрированВСистемеВзаимодействия() Тогда
|
И Не ТекущийПользовательЗарегистрированВСистемеВзаимодействия() Тогда
|
||||||
|
|||||||
@@ -175,6 +175,7 @@
|
|||||||
|
|
||||||
СостояниеПолучения.ПроверкаРазрешена = Истина;
|
СостояниеПолучения.ПроверкаРазрешена = Истина;
|
||||||
ПодключитьОбработчикПроверкиПолученияСерверныхОповещений();
|
ПодключитьОбработчикПроверкиПолученияСерверныхОповещений();
|
||||||
|
ПодключитьОбработчикНовыхСообщений(СостояниеПолучения());
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -238,12 +239,10 @@
|
|||||||
- ?(Секунда(ТекущаяДатаСеанса) < СостояниеПолучения.ЧислоСекундВыравниванияДатыСчетчиковОжидания, 60, 0);
|
- ?(Секунда(ТекущаяДатаСеанса) < СостояниеПолучения.ЧислоСекундВыравниванияДатыСчетчиковОжидания, 60, 0);
|
||||||
|
|
||||||
Интервал = 60;
|
Интервал = 60;
|
||||||
ОбсужденияАктивны =
|
ОбсужденияАктивны = СостояниеПолучения.УведомленияКлиентаДоступны
|
||||||
СостояниеПолучения.ПериодическаяОтправкаДанныхРазрешена
|
|
||||||
И (СостояниеПолучения.УведомленияКлиентаДоступны
|
|
||||||
Или СостояниеПолучения.СистемаВзаимодействийПодключена
|
Или СостояниеПолучения.СистемаВзаимодействийПодключена
|
||||||
И СостояниеПолучения.ОбработчикНовыхЛичныхСообщенийПодключен
|
И СостояниеПолучения.ОбработчикНовыхЛичныхСообщенийПодключен
|
||||||
И СостояниеПолучения.ДатаПоследнегоПолученияСообщения + 60 > ТекущаяДатаСеанса);
|
И СостояниеПолучения.ДатаПоследнегоПолученияСообщения + 60 > ТекущаяДатаСеанса;
|
||||||
|
|
||||||
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
|
МоментНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
|
||||||
Попытка
|
Попытка
|
||||||
|
|||||||
@@ -17,15 +17,13 @@
|
|||||||
СистемнаяИнформация = Новый СистемнаяИнформация;
|
СистемнаяИнформация = Новый СистемнаяИнформация;
|
||||||
Версия = СистемнаяИнформация.ВерсияПриложения;
|
Версия = СистемнаяИнформация.ВерсияПриложения;
|
||||||
|
|
||||||
Возврат ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Версия, "8.3.26.1498") >= 0
|
Возврат ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Версия, "8.3.27.1606") >= 0;
|
||||||
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Версия, "8.3.27.0") < 0
|
|
||||||
Или ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Версия, "8.3.27.1288") >= 0;
|
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция ТолькоДляТестирования()
|
Функция ТолькоДляТестирования()
|
||||||
|
|
||||||
Возврат Истина;
|
Возврат Ложь;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
@@ -494,8 +494,13 @@
|
|||||||
Если Не ЗначениеЗаполнено(ПараметрыПодписанта.НомерТелефона) Тогда
|
Если Не ЗначениеЗаполнено(ПараметрыПодписанта.НомерТелефона) Тогда
|
||||||
ВызватьИсключение НСтр("ru = 'Не заполнен номер телефона'");
|
ВызватьИсключение НСтр("ru = 'Не заполнен номер телефона'");
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
Если Не ЗначениеЗаполнено(ПараметрыПодписанта.ИННФЛ) Тогда
|
|
||||||
ВызватьИсключение НСтр("ru = 'Не заполнен номер ИНН физического лица'");
|
Если Не ЗначениеЗаполнено(ПараметрыПодписанта.ИННФЛ) И Не ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
|
ВызватьИсключение НСтр("ru = 'Не заполнен ИНН'");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) И Не ЗначениеЗаполнено(ПараметрыПодписанта.ОГРН) Тогда
|
||||||
|
ВызватьИсключение НСтр("ru = 'Не заполнен ОГРН'");
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
НомерТелефона = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.НомерТелефона);
|
НомерТелефона = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.НомерТелефона);
|
||||||
@@ -512,7 +517,11 @@
|
|||||||
ПараметрыПодписанта.ИННФЛ = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.ИННФЛ);
|
ПараметрыПодписанта.ИННФЛ = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.ИННФЛ);
|
||||||
ПараметрыПодписанта.ИНН = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.ИНН);
|
ПараметрыПодписанта.ИНН = СервисМобильнойПодписиКлиентСервер.ТолькоЦифры(ПараметрыПодписанта.ИНН);
|
||||||
|
|
||||||
Если СтрДлина(ПараметрыПодписанта.ИННФЛ) <> 12 Тогда
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
|
ПараметрыПодписанта.ИННФЛ = "";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИННФЛ) И СтрДлина(ПараметрыПодписанта.ИННФЛ) <> 12 Тогда
|
||||||
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
НСтр("ru = 'ИНН физического лица должен быть длиной 12 символов: %1'"), ПараметрыПодписанта.ИННФЛ);
|
НСтр("ru = 'ИНН физического лица должен быть длиной 12 символов: %1'"), ПараметрыПодписанта.ИННФЛ);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -646,12 +655,15 @@
|
|||||||
|
|
||||||
ЗапросHTTP = Новый HTTPЗапрос(РесурсНаСервере, ЗаголовкиHTTP);
|
ЗапросHTTP = Новый HTTPЗапрос(РесурсНаСервере, ЗаголовкиHTTP);
|
||||||
СтруктураЗапроса = Новый Структура;
|
СтруктураЗапроса = Новый Структура;
|
||||||
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
|
||||||
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
СтруктураЗапроса.Вставить("legalEntityInn", ПараметрыПодписанта.ИНН);
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
|
СтруктураЗапроса.Вставить("legalEntity", Новый Структура);
|
||||||
|
СтруктураЗапроса.legalEntity.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
|
СтруктураЗапроса.legalEntity.Вставить("ogrn", ПараметрыПодписанта.ОГРН);
|
||||||
|
Иначе
|
||||||
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
||||||
|
|
||||||
ТелоЗапроса = ОбщегоНазначения.ЗначениеВJSON(СтруктураЗапроса);
|
ТелоЗапроса = ОбщегоНазначения.ЗначениеВJSON(СтруктураЗапроса);
|
||||||
ЗапросHTTP.УстановитьТелоИзСтроки(ТелоЗапроса);
|
ЗапросHTTP.УстановитьТелоИзСтроки(ТелоЗапроса);
|
||||||
@@ -761,17 +773,20 @@
|
|||||||
|
|
||||||
ЗапросHTTP = Новый HTTPЗапрос(РесурсНаСервере, ЗаголовкиHTTP);
|
ЗапросHTTP = Новый HTTPЗапрос(РесурсНаСервере, ЗаголовкиHTTP);
|
||||||
СтруктураЗапроса = Новый Структура;
|
СтруктураЗапроса = Новый Структура;
|
||||||
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
|
СтруктураЗапроса.Вставить("legalEntity", Новый Структура);
|
||||||
|
СтруктураЗапроса.legalEntity.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
|
СтруктураЗапроса.legalEntity.Вставить("ogrn", ПараметрыПодписанта.ОГРН);
|
||||||
|
Иначе
|
||||||
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
||||||
|
КонецЕсли;
|
||||||
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
||||||
|
|
||||||
Генератор = Новый ГенераторСлучайныхЧисел(ТекущаяДатаСеанса() - Дата(1, 1, 1));
|
Генератор = Новый ГенераторСлучайныхЧисел(ТекущаяДатаСеанса() - Дата(1, 1, 1));
|
||||||
Код = Формат(Генератор.СлучайноеЧисло(1000, 9999), "ЧГ=0");
|
Код = Формат(Генератор.СлучайноеЧисло(1000, 9999), "ЧГ=0");
|
||||||
|
|
||||||
СтруктураЗапроса.Вставить("syncCode", Код);
|
СтруктураЗапроса.Вставить("syncCode", Код);
|
||||||
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
|
||||||
СтруктураЗапроса.Вставить("legalEntity", Новый Структура);
|
|
||||||
СтруктураЗапроса.legalEntity.Вставить("inn", ПараметрыПодписанта.ИНН);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ТелоЗапроса = ОбщегоНазначения.ЗначениеВJSON(СтруктураЗапроса);
|
ТелоЗапроса = ОбщегоНазначения.ЗначениеВJSON(СтруктураЗапроса);
|
||||||
ЗапросHTTP.УстановитьТелоИзСтроки(ТелоЗапроса);
|
ЗапросHTTP.УстановитьТелоИзСтроки(ТелоЗапроса);
|
||||||
@@ -895,11 +910,20 @@
|
|||||||
| НЕ ПодписантыСервисаМобильнойПодписи.ПометкаУдаления
|
| НЕ ПодписантыСервисаМобильнойПодписи.ПометкаУдаления
|
||||||
| И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ
|
| И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ
|
||||||
| И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН
|
| И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН
|
||||||
|
| И ПодписантыСервисаМобильнойПодписи.ОГРН = &ОГРН
|
||||||
| И ПодписантыСервисаМобильнойПодписи.НомерТелефона = &НомерТелефона";
|
| И ПодписантыСервисаМобильнойПодписи.НомерТелефона = &НомерТелефона";
|
||||||
|
|
||||||
Запрос.УстановитьПараметр("НомерТелефона", ПараметрыПодписанта.НомерТелефона);
|
Запрос.УстановитьПараметр("НомерТелефона", ПараметрыПодписанта.НомерТелефона);
|
||||||
Запрос.УстановитьПараметр("ИННФЛ", ПараметрыПодписанта.ИННФЛ);
|
|
||||||
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
Запрос.УстановитьПараметр("ИНН", ПараметрыПодписанта.ИНН);
|
Запрос.УстановитьПараметр("ИНН", ПараметрыПодписанта.ИНН);
|
||||||
|
Запрос.УстановитьПараметр("ОГРН", ПараметрыПодписанта.ОГРН);
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ", "");
|
||||||
|
Иначе
|
||||||
|
Запрос.УстановитьПараметр("ИННФЛ", ПараметрыПодписанта.ИННФЛ);
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН", "");
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ОГРН = &ОГРН", "");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
НачатьТранзакцию();
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
@@ -955,11 +979,21 @@
|
|||||||
| НЕ ПодписантыСервисаМобильнойПодписи.ПометкаУдаления
|
| НЕ ПодписантыСервисаМобильнойПодписи.ПометкаУдаления
|
||||||
| И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ
|
| И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ
|
||||||
| И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН
|
| И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН
|
||||||
|
| И ПодписантыСервисаМобильнойПодписи.ОГРН = &ОГРН
|
||||||
| И ПодписантыСервисаМобильнойПодписи.НомерТелефона = &НомерТелефона";
|
| И ПодписантыСервисаМобильнойПодписи.НомерТелефона = &НомерТелефона";
|
||||||
|
|
||||||
Запрос.УстановитьПараметр("НомерТелефона", ПараметрыПодписанта.НомерТелефона);
|
Запрос.УстановитьПараметр("НомерТелефона", ПараметрыПодписанта.НомерТелефона);
|
||||||
Запрос.УстановитьПараметр("ИННФЛ", ПараметрыПодписанта.ИННФЛ);
|
|
||||||
Запрос.УстановитьПараметр("ИНН", ПараметрыПодписанта.ИНН);
|
Запрос.УстановитьПараметр("ИНН", ПараметрыПодписанта.ИНН);
|
||||||
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
|
Запрос.УстановитьПараметр("ИНН", ПараметрыПодписанта.ИНН);
|
||||||
|
Запрос.УстановитьПараметр("ОГРН", ПараметрыПодписанта.ОГРН);
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ИННФЛ = &ИННФЛ", "");
|
||||||
|
Иначе
|
||||||
|
Запрос.УстановитьПараметр("ИННФЛ", ПараметрыПодписанта.ИННФЛ);
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ИНН = &ИНН", "");
|
||||||
|
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ПодписантыСервисаМобильнойПодписи.ОГРН = &ОГРН", "");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
РезультатЗапроса = Запрос.Выполнить();
|
РезультатЗапроса = Запрос.Выполнить();
|
||||||
Если РезультатЗапроса.Пустой() Тогда
|
Если РезультатЗапроса.Пустой() Тогда
|
||||||
Возврат Справочники.ПодписантыСервисаМобильнойПодписи.ПустаяСсылка();
|
Возврат Справочники.ПодписантыСервисаМобильнойПодписи.ПустаяСсылка();
|
||||||
@@ -1114,11 +1148,14 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
СтруктураЗапроса = Новый Структура;
|
СтруктураЗапроса = Новый Структура;
|
||||||
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
|
||||||
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
СтруктураЗапроса.Вставить("phone", ПараметрыПодписанта.НомерТелефона);
|
||||||
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
СтруктураЗапроса.Вставить("legalEntity", Новый Структура);
|
СтруктураЗапроса.Вставить("legalEntity", Новый Структура);
|
||||||
СтруктураЗапроса.legalEntity.Вставить("inn", ПараметрыПодписанта.ИНН);
|
СтруктураЗапроса.legalEntity.Вставить("inn", ПараметрыПодписанта.ИНН);
|
||||||
|
СтруктураЗапроса.legalEntity.Вставить("ogrn", ПараметрыПодписанта.ОГРН);
|
||||||
|
Иначе
|
||||||
|
СтруктураЗапроса.Вставить("inn", ПараметрыПодписанта.ИННФЛ);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
СтруктураЗапроса.Вставить("documents", Новый Массив);
|
СтруктураЗапроса.Вставить("documents", Новый Массив);
|
||||||
Если Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.СМеткойДоверенногоВремениCAdEST Тогда
|
Если Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.СМеткойДоверенногоВремениCAdEST Тогда
|
||||||
@@ -1365,15 +1402,11 @@
|
|||||||
Телефон = Лев(ПараметрыПодписанта.НомерТелефона, 3) + "****" + Прав(ПараметрыПодписанта.НомерТелефона, 4);
|
Телефон = Лев(ПараметрыПодписанта.НомерТелефона, 3) + "****" + Прав(ПараметрыПодписанта.НомерТелефона, 4);
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
Если ЗначениеЗаполнено(ПараметрыПодписанта.ИНН) Тогда
|
||||||
Если ЗначениеЗаполнено(ПараметрыПодписанта.ОГРН) Тогда
|
|
||||||
ДанныеПодписанта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
ДанныеПодписанта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
НСтр("ru='ИНН ЮЛ: %1, ОГРН: %2, ИНН ФЛ: %3, Телефон: +%4'"), ПараметрыПодписанта.ИНН,
|
НСтр("ru='ИНН ЮЛ: %1, ОГРН: %2, Телефон: +%3'"), ПараметрыПодписанта.ИНН,
|
||||||
ПараметрыПодписанта.ОГРН, ПараметрыПодписанта.ИННФЛ, Телефон);
|
ПараметрыПодписанта.ОГРН, Телефон);
|
||||||
Иначе
|
|
||||||
ДанныеПодписанта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
|
||||||
НСтр("ru='ИНН ЮЛ: %1, ИНН ФЛ: %2, Телефон: +%3'"), ПараметрыПодписанта.ИНН,
|
|
||||||
ПараметрыПодписанта.ИННФЛ, Телефон);
|
|
||||||
КонецЕсли;
|
|
||||||
Иначе
|
Иначе
|
||||||
ДанныеПодписанта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
ДанныеПодписанта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
НСтр("ru='ИНН ФЛ: %1, Телефон: +%2'"), ПараметрыПодписанта.ИННФЛ,
|
НСтр("ru='ИНН ФЛ: %1, Телефон: +%2'"), ПараметрыПодписанта.ИННФЛ,
|
||||||
@@ -1381,10 +1414,10 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|
||||||
"ru='Не найден подписант с данными %1. Убедитесь, что у подписанта установлено приложение ""Моя подпись"" от ФНС и выпущен сертификат.
|
"ru='Для подписанта с данными %1 сервис ФНС ответил ""%2"".
|
||||||
|Сообщите подписанту секретный код %2 для подписания согласия на получение документов из ""1С:Мобильная подпись"" в приложении ""Моя подпись"" от ФНС.'"),
|
|Проверьте данные, убедитесь, что у подписанта установлено приложение ""Моя подпись"" от ФНС и выпущен сертификат.
|
||||||
ДанныеПодписанта,
|
|Сообщите подписанту секретный код %3 для подписания согласия на получение документов из ""1С:Мобильная подпись"" в приложении ""Моя подпись"" от ФНС.'"),
|
||||||
СогласиеПодписанта.Код);
|
ДанныеПодписанта, ОшибкаКлиентНеНайден(), СогласиеПодписанта.Код);
|
||||||
|
|
||||||
Результат.Ошибка = ОшибкаМобильногоСервиса(ЗаголовокОшибки, ТекстОшибки, ИдентификаторЗапроса);
|
Результат.Ошибка = ОшибкаМобильногоСервиса(ЗаголовокОшибки, ТекстОшибки, ИдентификаторЗапроса);
|
||||||
|
|
||||||
|
|||||||
@@ -16556,9 +16556,7 @@
|
|||||||
ЗаписатьРезультатОбновленияДоступаСпискаВФоне(Результат, Выборка.Параметры, Контекст);
|
ЗаписатьРезультатОбновленияДоступаСпискаВФоне(Результат, Выборка.Параметры, Контекст);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Если РегистрироватьПоказателиОбновленияДоступа() Тогда
|
|
||||||
ЗарегистрироватьПоказателиОбновленияИсполняющегоПотока(Контекст);
|
ЗарегистрироватьПоказателиОбновленияИсполняющегоПотока(Контекст);
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -16737,12 +16735,11 @@
|
|||||||
// Для процедуры ВыполнитьОбновлениеДоступа.
|
// Для процедуры ВыполнитьОбновлениеДоступа.
|
||||||
Процедура ДобавитьПоказателиОбновленияУправляющегоПотока(Контекст)
|
Процедура ДобавитьПоказателиОбновленияУправляющегоПотока(Контекст)
|
||||||
|
|
||||||
Если Не РегистрироватьПоказателиОбновленияДоступа() Тогда
|
Показатели = Контекст.Показатели;
|
||||||
|
Если Показатели = Неопределено Тогда
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Показатели = Контекст.Показатели;
|
|
||||||
|
|
||||||
Если Контекст.ОбновлениеВЭтомСеансе Тогда
|
Если Контекст.ОбновлениеВЭтомСеансе Тогда
|
||||||
ДобавитьПоказателиВыполненияЗаданий(Показатели);
|
ДобавитьПоказателиВыполненияЗаданий(Показатели);
|
||||||
Иначе
|
Иначе
|
||||||
@@ -16769,7 +16766,8 @@
|
|||||||
// Для процедуры ВыполнитьОбновлениеДоступаСпискаВФоне.
|
// Для процедуры ВыполнитьОбновлениеДоступаСпискаВФоне.
|
||||||
Функция ПоказателиОбновленияИсполняющегоПотока()
|
Функция ПоказателиОбновленияИсполняющегоПотока()
|
||||||
|
|
||||||
Если Не РегистрироватьПоказателиОбновленияДоступа() Тогда
|
Если Не РегистрироватьПоказателиОбновленияДоступа()
|
||||||
|
Или Не ПользователиСлужебный.ВключенаЗаписьИнформацииВЖурнал() Тогда
|
||||||
Возврат Неопределено;
|
Возврат Неопределено;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -16951,6 +16949,10 @@
|
|||||||
Процедура ЗарегистрироватьПоказателиОбновленияОсновногоПотока(Контекст)
|
Процедура ЗарегистрироватьПоказателиОбновленияОсновногоПотока(Контекст)
|
||||||
|
|
||||||
Показатели = Контекст.Показатели;
|
Показатели = Контекст.Показатели;
|
||||||
|
Если Показатели = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
ОписаниеСеанса = Контекст.ОписаниеОсновногоСеанса; // См. ОписаниеОсновногоСеанса
|
ОписаниеСеанса = Контекст.ОписаниеОсновногоСеанса; // См. ОписаниеОсновногоСеанса
|
||||||
|
|
||||||
Если Контекст.ОбновлениеВЭтомСеансе Тогда
|
Если Контекст.ОбновлениеВЭтомСеансе Тогда
|
||||||
@@ -17010,6 +17012,9 @@
|
|||||||
Процедура ЗарегистрироватьПоказателиОбновленияИсполняющегоПотока(Контекст)
|
Процедура ЗарегистрироватьПоказателиОбновленияИсполняющегоПотока(Контекст)
|
||||||
|
|
||||||
Показатели = Контекст.Показатели;
|
Показатели = Контекст.Показатели;
|
||||||
|
Если Показатели = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
ВремяОжиданияНовыхЗаданий = Показатели.ВремяОжиданияНовыхЗаданий / 1000;
|
ВремяОжиданияНовыхЗаданий = Показатели.ВремяОжиданияНовыхЗаданий / 1000;
|
||||||
|
|
||||||
|
|||||||
@@ -286,20 +286,24 @@
|
|||||||
|
|
||||||
Если Письма.Количество() <> 0 Тогда
|
Если Письма.Количество() <> 0 Тогда
|
||||||
|
|
||||||
Для Каждого КлючИЗначение Из Письма Цикл
|
ДанныеПервогоПисьма = СсылкаНаПисьмоПоОтправляемомуПочтовомуСообщению(ДанныеПисем, Письма[0]);
|
||||||
|
|
||||||
|
Если ДанныеПервогоПисьма <> Неопределено Тогда
|
||||||
|
|
||||||
ПараметрыОбработкиОшибки = ПараметрыОбработкиОшибкиОтправки();
|
ПараметрыОбработкиОшибки = ПараметрыОбработкиОшибкиОтправки();
|
||||||
ПараметрыОбработкиОшибки.ПисьмоОбъект = КлючИЗначение.Ключ.ПолучитьОбъект();
|
ПараметрыОбработкиОшибки.ПисьмоОбъект = ДанныеПервогоПисьма.Ключ.ПолучитьОбъект();
|
||||||
ПараметрыОбработкиОшибки.Ссылка = КлючИЗначение.Ключ;
|
ПараметрыОбработкиОшибки.Ссылка = ДанныеПервогоПисьма.Ключ;
|
||||||
ПараметрыОбработкиОшибки.ПредставлениеПисьма = КлючИЗначение.Значение.ПредставлениеПисьма;
|
ПараметрыОбработкиОшибки.ПредставлениеПисьма = ДанныеПервогоПисьма.Значение.ПредставлениеПисьма;
|
||||||
ПараметрыОбработкиОшибки.КоличествоПопыток = КлючИЗначение.Значение.КоличествоПопыток;
|
ПараметрыОбработкиОшибки.КоличествоПопыток = ДанныеПервогоПисьма.Значение.КоличествоПопыток;
|
||||||
ПараметрыОбработкиОшибки.ИнкрементироватьКоличествоПопыток = Истина;
|
ПараметрыОбработкиОшибки.ИнкрементироватьКоличествоПопыток = Истина;
|
||||||
ПараметрыОбработкиОшибки.СообщатьПользователю = Интерактивно;
|
ПараметрыОбработкиОшибки.СообщатьПользователю = Интерактивно;
|
||||||
ПараметрыОбработкиОшибки.ТекстОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
|
ПараметрыОбработкиОшибки.ТекстОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||||
|
|
||||||
РезультатОбработкиОшибки = ОбработатьОшибкуОтправкиПисьма(ПараметрыОбработкиОшибки, Новый Массив);
|
РезультатОбработкиОшибки = ОбработатьОшибкуОтправкиПисьма(ПараметрыОбработкиОшибки, Новый Массив);
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Продолжить;
|
||||||
|
|
||||||
Продолжить;
|
Продолжить;
|
||||||
|
|
||||||
|
|||||||
@@ -673,7 +673,14 @@
|
|||||||
ДополнительныеПараметры.Вставить("ИмяОткрываемогоФайла", ИмяОткрываемогоФайла);
|
ДополнительныеПараметры.Вставить("ИмяОткрываемогоФайла", ИмяОткрываемогоФайла);
|
||||||
ОписаниеОповещения = Новый ОписаниеОповещения("НапечататьИзПриложенияПоИмениФайлаLinux",
|
ОписаниеОповещения = Новый ОписаниеОповещения("НапечататьИзПриложенияПоИмениФайлаLinux",
|
||||||
ЭтотОбъект, ДополнительныеПараметры);
|
ЭтотОбъект, ДополнительныеПараметры);
|
||||||
|
СистемныеСвойства = Новый СистемнаяИнформация();
|
||||||
|
Если СтрНайти(ВРег(СистемныеСвойства.ВерсияОС), "UBUNTU") > 0 Или СтрНайти(ВРег(СистемныеСвойства.ВерсияОС), "ASTRA") > 0 Тогда
|
||||||
ПроверитьПрограммаLinuxУстановлена("Unoconv", ОписаниеОповещения);
|
ПроверитьПрограммаLinuxУстановлена("Unoconv", ОписаниеОповещения);
|
||||||
|
Иначе
|
||||||
|
ОписаниеОповещения = Новый ОписаниеОповещения("НапечататьИзПриложенияПоИмениФайлаLinuxЗапускUnoconv",
|
||||||
|
ЭтотОбъект, ДополнительныеПараметры);
|
||||||
|
ПолучитьПолноеИмяВременногоФайла(ОписаниеОповещения);
|
||||||
|
КонецЕсли;
|
||||||
Иначе
|
Иначе
|
||||||
ПоказатьПредупреждение(, НСтр("ru = 'Печать файлов данного типа возможна только из приложения для Windows или Linux.'"));
|
ПоказатьПредупреждение(, НСтр("ru = 'Печать файлов данного типа возможна только из приложения для Windows или Linux.'"));
|
||||||
Возврат;
|
Возврат;
|
||||||
|
|||||||
@@ -3404,7 +3404,6 @@
|
|||||||
НоваяЗапись.УстановившийПодпись = Пользователи.АвторизованныйПользователь();
|
НоваяЗапись.УстановившийПодпись = Пользователи.АвторизованныйПользователь();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(СвойстваПодписи.Подпись) Тогда
|
|
||||||
ДатаПодписи = Неопределено;
|
ДатаПодписи = Неопределено;
|
||||||
Если ЗначениеЗаполнено(ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(
|
Если ЗначениеЗаполнено(ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(
|
||||||
СвойстваПодписи, "НеподтвержденнаяДатаПодписи", Неопределено)) Тогда
|
СвойстваПодписи, "НеподтвержденнаяДатаПодписи", Неопределено)) Тогда
|
||||||
@@ -3428,10 +3427,6 @@
|
|||||||
|
|
||||||
СообщениеЖурналаРегистрации = ЭлектроннаяПодписьСлужебный.СведенияОПодписиДляЖурналаРегистрации(
|
СообщениеЖурналаРегистрации = ЭлектроннаяПодписьСлужебный.СведенияОПодписиДляЖурналаРегистрации(
|
||||||
НоваяЗапись.ДатаПодписи, СвойстваПодписи);
|
НоваяЗапись.ДатаПодписи, СвойстваПодписи);
|
||||||
Иначе
|
|
||||||
СообщениеЖурналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
|
||||||
НСтр("ru = 'Отправлен на подписание: %1'"), НоваяЗапись.КомуВыданСертификат);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(НоваяЗапись.ИдентификаторПодписи) Тогда
|
Если Не ЗначениеЗаполнено(НоваяЗапись.ИдентификаторПодписи) Тогда
|
||||||
НоваяЗапись.ИдентификаторПодписи = Новый УникальныйИдентификатор;
|
НоваяЗапись.ИдентификаторПодписи = Новый УникальныйИдентификатор;
|
||||||
|
|||||||
@@ -1005,14 +1005,14 @@
|
|||||||
// Возвращает выборку сертификатов физических лиц.
|
// Возвращает выборку сертификатов физических лиц.
|
||||||
//
|
//
|
||||||
// Параметры:
|
// Параметры:
|
||||||
// ФизическиеЛица - Массив из ОпределяемыйТип.ФизическоеЛицо
|
// ФизическиеЛицаДляОтбора - Массив из ОпределяемыйТип.ФизическоеЛицо
|
||||||
//
|
//
|
||||||
// Возвращаемое значение:
|
// Возвращаемое значение:
|
||||||
// ВыборкаИзРезультатаЗапроса:
|
// ВыборкаИзРезультатаЗапроса:
|
||||||
// * Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
|
// * Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
|
||||||
// * ФизическоеЛицо - ОпределяемыйТип.ФизическоеЛицо
|
// * ФизическоеЛицо - ОпределяемыйТип.ФизическоеЛицо
|
||||||
//
|
//
|
||||||
Функция СертификатыФизическихЛиц(ФизическиеЛица) Экспорт
|
Функция СертификатыФизическихЛиц(ФизическиеЛицаДляОтбора) Экспорт
|
||||||
|
|
||||||
Запрос = Новый Запрос;
|
Запрос = Новый Запрос;
|
||||||
Запрос.Текст =
|
Запрос.Текст =
|
||||||
@@ -1026,7 +1026,7 @@
|
|||||||
| И НЕ СертификатыКлючейЭлектроннойПодписиИШифрования.ПометкаУдаления
|
| И НЕ СертификатыКлючейЭлектроннойПодписиИШифрования.ПометкаУдаления
|
||||||
| И СертификатыКлючейЭлектроннойПодписиИШифрования.ДействителенДо > &ТекущаяДатаСеанса";
|
| И СертификатыКлючейЭлектроннойПодписиИШифрования.ДействителенДо > &ТекущаяДатаСеанса";
|
||||||
|
|
||||||
Запрос.УстановитьПараметр("МассивФизическихЛиц", ФизическиеЛица);
|
Запрос.УстановитьПараметр("МассивФизическихЛиц", ФизическиеЛицаДляОтбора);
|
||||||
Запрос.УстановитьПараметр("ТекущаяДатаСеанса", ТекущаяДатаСеанса());
|
Запрос.УстановитьПараметр("ТекущаяДатаСеанса", ТекущаяДатаСеанса());
|
||||||
РезультатЗапроса = Запрос.Выполнить();
|
РезультатЗапроса = Запрос.Выполнить();
|
||||||
|
|
||||||
@@ -6045,13 +6045,13 @@
|
|||||||
Пока ВыборкаНаименование.Следующий() Цикл
|
Пока ВыборкаНаименование.Следующий() Цикл
|
||||||
|
|
||||||
Выборка = ВыборкаНаименование.Выбрать();
|
Выборка = ВыборкаНаименование.Выбрать();
|
||||||
ФизическиеЛица = Новый Массив;
|
ФизическиеЛицаДляНаименования = Новый Массив;
|
||||||
|
|
||||||
Пока Выборка.Следующий() Цикл
|
Пока Выборка.Следующий() Цикл
|
||||||
ФизическиеЛица.Добавить(Выборка.Ссылка);
|
ФизическиеЛицаДляНаименования.Добавить(Выборка.Ссылка);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
ФизическиеЛицаПоФИО.Вставить(ВыборкаНаименование.Наименование, ФизическиеЛица);
|
ФизическиеЛицаПоФИО.Вставить(ВыборкаНаименование.Наименование, ФизическиеЛицаДляНаименования);
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
|
|||||||
@@ -11961,7 +11961,7 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ФизическиеЛица = Результат.ФизическиеЛица.Получить(КомуВыдан);
|
ФизическиеЛицаДляФИО = Результат.ФизическиеЛица.Получить(КомуВыдан);
|
||||||
|
|
||||||
ФизическоеЛицоПустаяСсылка = Новый (ТипЗнч(ФизическоеЛицо));
|
ФизическоеЛицоПустаяСсылка = Новый (ТипЗнч(ФизическоеЛицо));
|
||||||
ЭтоФормаЭлемента = ?(Форма.Элементы.Найти("СертификатФизическоеЛицо") = Неопределено, Истина, Ложь);
|
ЭтоФормаЭлемента = ?(Форма.Элементы.Найти("СертификатФизическоеЛицо") = Неопределено, Истина, Ложь);
|
||||||
@@ -11972,7 +11972,7 @@
|
|||||||
Форма.СертификатФизическоеЛицо = ФизическоеЛицоПустаяСсылка;
|
Форма.СертификатФизическоеЛицо = ФизическоеЛицоПустаяСсылка;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ФизическиеЛица = Неопределено Тогда
|
Если ФизическиеЛицаДляФИО = Неопределено Тогда
|
||||||
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", Форма);
|
ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормыВыбораФизическогоЛица", Форма);
|
||||||
ПараметрыФормы = Новый Структура;
|
ПараметрыФормы = Новый Структура;
|
||||||
ПараметрыФормы.Вставить("РежимВыбора", Истина);
|
ПараметрыФормы.Вставить("РежимВыбора", Истина);
|
||||||
@@ -11981,11 +11981,11 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ФизическиеЛица.Количество() = 1 Тогда
|
Если ФизическиеЛицаДляФИО.Количество() = 1 Тогда
|
||||||
Если ЭтоФормаЭлемента Тогда
|
Если ЭтоФормаЭлемента Тогда
|
||||||
Форма.Объект.ФизическоеЛицо = ФизическиеЛица[0];
|
Форма.Объект.ФизическоеЛицо = ФизическиеЛицаДляФИО[0];
|
||||||
Иначе
|
Иначе
|
||||||
Форма.СертификатФизическоеЛицо = ФизическиеЛица[0];
|
Форма.СертификатФизическоеЛицо = ФизическиеЛицаДляФИО[0];
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -11995,7 +11995,7 @@
|
|||||||
Отбор = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
|
Отбор = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
|
||||||
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
|
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
|
||||||
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
||||||
Отбор.ПравоеЗначение = ФизическиеЛица;
|
Отбор.ПравоеЗначение = ФизическиеЛицаДляФИО;
|
||||||
Отбор.Использование = Истина;
|
Отбор.Использование = Истина;
|
||||||
|
|
||||||
ПараметрыФормы = Новый Структура;
|
ПараметрыФормы = Новый Структура;
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b8ace939-f976-4848-a35d-925ad5523c44">
|
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b3a44f7c-b4fc-40bd-a9ee-8bab22370666">
|
||||||
<name>БиблиотекаСтандартныхПодсистем</name>
|
<name>БиблиотекаСтандартныхПодсистем</name>
|
||||||
<synonym>
|
<synonym>
|
||||||
<key>ru</key>
|
<key>ru</key>
|
||||||
<value>Библиотека стандартных подсистем, редакция 3.1</value>
|
<value>Библиотека стандартных подсистем, редакция 3.1</value>
|
||||||
</synonym>
|
</synonym>
|
||||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="ada824cc-6619-4626-b014-92f1728f0442"/>
|
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="ba481660-139d-477a-8455-9ffae484df41"/>
|
||||||
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="0e56190f-16fa-4913-a22d-9b03b32333e3"/>
|
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="8ed71eb0-6de4-429b-9ff1-85f00e0cbe81"/>
|
||||||
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="41f233e6-33e3-403d-b3bc-7337090614e1"/>
|
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="ad9afbfe-faaa-412d-a626-9c9533e9bd90"/>
|
||||||
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="10eb3597-c937-489d-905a-58448b3ea1be"/>
|
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="259a0334-10f4-486e-b364-585ca11d0f0a"/>
|
||||||
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="d73b7aa5-fa9c-4207-a7ef-2d3849d7baa1"/>
|
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="9bacb48b-bf29-4360-9aeb-9275b424c306"/>
|
||||||
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="66f2e6ca-4218-497c-926d-e53066dcbd94"/>
|
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="5122f5c3-69dd-4dcd-a6ec-31cf0be00b8c"/>
|
||||||
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="3f82e7a4-355a-4238-b5b4-f4e658cd1792"/>
|
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="01e57c0c-625b-4956-bf79-53af08fd1b0e"/>
|
||||||
<defaultRunMode>ManagedApplication</defaultRunMode>
|
<defaultRunMode>ManagedApplication</defaultRunMode>
|
||||||
<usePurposes>PersonalComputer</usePurposes>
|
<usePurposes>PersonalComputer</usePurposes>
|
||||||
<scriptVariant>Russian</scriptVariant>
|
<scriptVariant>Russian</scriptVariant>
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
|
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
|
||||||
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
|
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
|
||||||
<vendor>Фирма "1С"</vendor>
|
<vendor>Фирма "1С"</vendor>
|
||||||
<version>3.1.11.283</version>
|
<version>3.1.11.299</version>
|
||||||
<updateCatalogAddress>https://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
|
<updateCatalogAddress>https://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
|
||||||
<includeHelpInContents>true</includeHelpInContents>
|
<includeHelpInContents>true</includeHelpInContents>
|
||||||
<usedMobileApplicationFunctionalities>
|
<usedMobileApplicationFunctionalities>
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{6,1,1,c996a584-d225-4cea-afd4-48efed400c9a,1,bc9de0c9-f879-4d99-9c15-d4595f345b4e,"3.1.11.283","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7958,1,0,b8ace939-f976-4848-a35d-925ad5523c44,b8ace939-f976-4848-a35d-925ad5523c44,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,fa04bf1e-69c0-4998-a939-039fcaba83c8,fa04bf1e-69c0-4998-a939-039fcaba83c8,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,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,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,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,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,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,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,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,491b9625-62ce-436b-8245-60decacc4552,491b9625-62ce-436b-8245-60decacc4552,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-1ceLine truncated
|
{6,1,1,6ff836db-d8bc-4971-898d-7cab72f6ea3c,1,8cb43da2-8b1d-4c41-a245-d1af87510d62,"3.1.11.299","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7958,1,0,b3a44f7c-b4fc-40bd-a9ee-8bab22370666,b3a44f7c-b4fc-40bd-a9ee-8bab22370666,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,fa04bf1e-69c0-4998-a939-039fcaba83c8,fa04bf1e-69c0-4998-a939-039fcaba83c8,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,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,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,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,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,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,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,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,491b9625-62ce-436b-8245-60decacc4552,491b9625-62ce-436b-8245-60decacc4552,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-1ceLine truncated
|
||||||
+10
@@ -5351,6 +5351,10 @@
|
|||||||
&НаКлиенте
|
&НаКлиенте
|
||||||
Процедура ЗаполнитьПрограмму(Оповещение = Неопределено)
|
Процедура ЗаполнитьПрограмму(Оповещение = Неопределено)
|
||||||
|
|
||||||
|
Если ДанныеЗаявления.СостояниеЗаявления <> ПредопределенноеЗначение("Перечисление.СостоянияЗаявленияНаВыпускСертификата.НеПодготовлено") Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Объект.Программа = Неопределено;
|
Объект.Программа = Неопределено;
|
||||||
ПрограммаИдентификатор = Неопределено;
|
ПрограммаИдентификатор = Неопределено;
|
||||||
|
|
||||||
@@ -5397,6 +5401,12 @@
|
|||||||
Объект.Программа = Контекст.ПерваяДобавленнаяПрограмма;
|
Объект.Программа = Контекст.ПерваяДобавленнаяПрограмма;
|
||||||
Иначе
|
Иначе
|
||||||
ПрограммаИдентификатор = Контекст.ПерваяДобавленнаяПрограмма;
|
ПрограммаИдентификатор = Контекст.ПерваяДобавленнаяПрограмма;
|
||||||
|
|
||||||
|
НайденаСтрока = СписокПрограмм.НайтиСтроки(Новый Структура("Идентификатор", ПрограммаИдентификатор));
|
||||||
|
Если НайденаСтрока.Количество() > 0 Тогда
|
||||||
|
КлючНаТокене = НайденаСтрока[0].ТипПрограммы = 100;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -628,6 +628,36 @@
|
|||||||
ПараметрВебЧата.СписокЗначений.Вставить(ЭлементЛокализации.Значение, ЭлементЛокализации.Представление);
|
ПараметрВебЧата.СписокЗначений.Вставить(ЭлементЛокализации.Значение, ЭлементЛокализации.Представление);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
|
ИначеЕсли ПараметрВебЧата.Имя = "displayUnreadMessagesMark" Тогда
|
||||||
|
|
||||||
|
ПараметрВебЧата.Представление = НСтр("ru = 'Отображать отметку непрочитанных сообщений'");
|
||||||
|
ПараметрВебЧата.Тип = "Булево";
|
||||||
|
ПараметрВебЧата.СтандартноеЗначение = "true";
|
||||||
|
|
||||||
|
ПараметрВебЧата.СписокЗначений = Новый Структура;
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("true", Истина);
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("false", Ложь);
|
||||||
|
|
||||||
|
ИначеЕсли ПараметрВебЧата.Имя = "displayCollapsedState" Тогда
|
||||||
|
|
||||||
|
ПараметрВебЧата.Представление = НСтр("ru = 'Отображать свернутое состояние чата'");
|
||||||
|
ПараметрВебЧата.Тип = "Булево";
|
||||||
|
ПараметрВебЧата.СтандартноеЗначение = "true";
|
||||||
|
|
||||||
|
ПараметрВебЧата.СписокЗначений = Новый Структура;
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("true", Истина);
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("false", Ложь);
|
||||||
|
|
||||||
|
ИначеЕсли ПараметрВебЧата.Имя = "openChatOnNewMessage" Тогда
|
||||||
|
|
||||||
|
ПараметрВебЧата.Представление = НСтр("ru = 'Открывать чат при получении нового сообщения'");
|
||||||
|
ПараметрВебЧата.Тип = "Булево";
|
||||||
|
ПараметрВебЧата.СтандартноеЗначение = "true";
|
||||||
|
|
||||||
|
ПараметрВебЧата.СписокЗначений = Новый Структура;
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("true", Истина);
|
||||||
|
ПараметрВебЧата.СписокЗначений.Вставить("false", Ложь);
|
||||||
|
|
||||||
Иначе
|
Иначе
|
||||||
|
|
||||||
ПараметрВебЧата.Представление = ПараметрВебЧата.Имя;
|
ПараметрВебЧата.Представление = ПараметрВебЧата.Имя;
|
||||||
|
|||||||
@@ -14290,7 +14290,9 @@
|
|||||||
// Модули стандартных подсистем.
|
// Модули стандартных подсистем.
|
||||||
Попытка
|
Попытка
|
||||||
// Вызов ВычислитьВБезопасномРежиме не требуется, т.к. для вычисления передается строковый литерал.
|
// Вызов ВычислитьВБезопасномРежиме не требуется, т.к. для вычисления передается строковый литерал.
|
||||||
|
УстановитьБезопасныйРежим(Истина);
|
||||||
МодульДатыЗапретаИзменения = Вычислить("ДатыЗапретаИзменения");
|
МодульДатыЗапретаИзменения = Вычислить("ДатыЗапретаИзменения");
|
||||||
|
УстановитьБезопасныйРежим(Ложь);
|
||||||
Исключение
|
Исключение
|
||||||
МодульДатыЗапретаИзменения = Неопределено;
|
МодульДатыЗапретаИзменения = Неопределено;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
@@ -14724,7 +14726,9 @@
|
|||||||
Функция ОбщийМодуль(Имя) Экспорт
|
Функция ОбщийМодуль(Имя) Экспорт
|
||||||
|
|
||||||
Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда
|
Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда
|
||||||
|
УстановитьБезопасныйРежим(Истина);
|
||||||
Модуль = Вычислить(Имя);
|
Модуль = Вычислить(Имя);
|
||||||
|
УстановитьБезопасныйРежим(Ложь);
|
||||||
Иначе
|
Иначе
|
||||||
Модуль = Неопределено;
|
Модуль = Неопределено;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|||||||
+5
-4
@@ -59,7 +59,7 @@
|
|||||||
<row><Value>1</Value><Value>Республика</Value><Value>респ.</Value><Value>респ.</Value></row>
|
<row><Value>1</Value><Value>Республика</Value><Value>респ.</Value><Value>респ.</Value></row>
|
||||||
<row><Value>1</Value><Value>Чувашия</Value><Value>Чувашия</Value><Value></Value></row>
|
<row><Value>1</Value><Value>Чувашия</Value><Value>Чувашия</Value><Value></Value></row>
|
||||||
<row><Value>2</Value><Value>Автономный округ</Value><Value>АО</Value><Value>а.окр.</Value></row>
|
<row><Value>2</Value><Value>Автономный округ</Value><Value>АО</Value><Value>а.окр.</Value></row>
|
||||||
<row><Value>2</Value><Value>Внутригородская территория</Value><Value>вн.тер. г.</Value><Value></Value></row>
|
<row><Value>2</Value><Value>внутригородская территория (внутригородское муниципальное образование) города федерального значения</Value><Value>вн.тер. г.</Value><Value></Value></row>
|
||||||
<row><Value>2</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
<row><Value>2</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
||||||
<row><Value>2</Value><Value>Городской округ</Value><Value>г.о.</Value><Value>г.о.</Value></row>
|
<row><Value>2</Value><Value>Городской округ</Value><Value>г.о.</Value><Value>г.о.</Value></row>
|
||||||
<row><Value>2</Value><Value>Муниципальный округ</Value><Value>м.о.</Value><Value>м.о.</Value></row>
|
<row><Value>2</Value><Value>Муниципальный округ</Value><Value>м.о.</Value><Value>м.о.</Value></row>
|
||||||
@@ -74,8 +74,8 @@
|
|||||||
<row><Value>2</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
<row><Value>2</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
||||||
<row><Value>3</Value><Value>Городской округ</Value><Value>г.о.</Value><Value>г.о.</Value></row>
|
<row><Value>3</Value><Value>Городской округ</Value><Value>г.о.</Value><Value>г.о.</Value></row>
|
||||||
<row><Value>3</Value><Value>Муниципальный район</Value><Value>м.р-н</Value><Value>м.р-н</Value></row>
|
<row><Value>3</Value><Value>Муниципальный район</Value><Value>м.р-н</Value><Value>м.р-н</Value></row>
|
||||||
<row><Value>3</Value><Value>Внутригородская территория</Value><Value>вн.тер.</Value><Value>вн.тер.</Value></row>
|
<row><Value>3</Value><Value>внутригородская территория</Value><Value>вн.тер.</Value><Value>вн.тер.</Value></row>
|
||||||
<row><Value>3</Value><Value>Внутригородская территория</Value><Value>вн.тер.г.</Value><Value>вн.тер.г.</Value></row>
|
<row><Value>3</Value><Value>внутригородская территория (внутригородское муниципальное образование) города федерального значения</Value><Value>вн.тер.г.</Value><Value>вн.тер.г.</Value></row>
|
||||||
<row><Value>3</Value><Value>Муниципальный округ</Value><Value>м.о.</Value><Value>м.о.</Value></row>
|
<row><Value>3</Value><Value>Муниципальный округ</Value><Value>м.о.</Value><Value>м.о.</Value></row>
|
||||||
<row><Value>3</Value><Value>Федеральная территория</Value><Value>ф.т.</Value><Value>ф.т.</Value></row>
|
<row><Value>3</Value><Value>Федеральная территория</Value><Value>ф.т.</Value><Value>ф.т.</Value></row>
|
||||||
<row><Value>5</Value><Value>Волость</Value><Value>волость</Value><Value></Value></row>
|
<row><Value>5</Value><Value>Волость</Value><Value>волость</Value><Value></Value></row>
|
||||||
@@ -96,13 +96,14 @@
|
|||||||
<row><Value>5</Value><Value>Рабочий поселок</Value><Value>рп</Value><Value>рп.</Value></row>
|
<row><Value>5</Value><Value>Рабочий поселок</Value><Value>рп</Value><Value>рп.</Value></row>
|
||||||
<row><Value>5</Value><Value>Территория</Value><Value>тер</Value><Value>тер.</Value></row>
|
<row><Value>5</Value><Value>Территория</Value><Value>тер</Value><Value>тер.</Value></row>
|
||||||
<row><Value>4</Value><Value>Сельское поселение</Value><Value>с.п.</Value><Value>с.п.</Value></row>
|
<row><Value>4</Value><Value>Сельское поселение</Value><Value>с.п.</Value><Value>с.п.</Value></row>
|
||||||
<row><Value>4</Value><Value>Внутригородской район</Value><Value>вн.р-н</Value><Value>вн.р-н</Value></row>
|
<row><Value>4</Value><Value>внутригородской район</Value><Value>вн.р-н</Value><Value>вн.р-н</Value></row>
|
||||||
<row><Value>4</Value><Value>Городское поселение</Value><Value>г.п.</Value><Value>г.п.</Value></row>
|
<row><Value>4</Value><Value>Городское поселение</Value><Value>г.п.</Value><Value>г.п.</Value></row>
|
||||||
<row><Value>4</Value><Value>Городское поселение</Value><Value>г. п.</Value><Value>г.п.</Value></row>
|
<row><Value>4</Value><Value>Городское поселение</Value><Value>г. п.</Value><Value>г.п.</Value></row>
|
||||||
<row><Value>4</Value><Value>Межселенная территория</Value><Value>меж.тер.</Value><Value>меж.тер.</Value></row>
|
<row><Value>4</Value><Value>Межселенная территория</Value><Value>меж.тер.</Value><Value>меж.тер.</Value></row>
|
||||||
<row><Value>6</Value><Value>Волость</Value><Value>волость</Value><Value></Value></row>
|
<row><Value>6</Value><Value>Волость</Value><Value>волость</Value><Value></Value></row>
|
||||||
<row><Value>6</Value><Value>Выселки(ок)</Value><Value>высел</Value><Value></Value></row>
|
<row><Value>6</Value><Value>Выселки(ок)</Value><Value>высел</Value><Value></Value></row>
|
||||||
<row><Value>6</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
<row><Value>6</Value><Value>Город</Value><Value>г</Value><Value>г.</Value></row>
|
||||||
|
<row><Value>6</Value><Value>Город</Value><Value>г.</Value><Value>г.</Value></row>
|
||||||
<row><Value>6</Value><Value>Городок</Value><Value>г-к</Value><Value>г-к</Value></row>
|
<row><Value>6</Value><Value>Городок</Value><Value>г-к</Value><Value>г-к</Value></row>
|
||||||
<row><Value>6</Value><Value>Городской поселок</Value><Value>гп</Value><Value>гп.</Value></row>
|
<row><Value>6</Value><Value>Городской поселок</Value><Value>гп</Value><Value>гп.</Value></row>
|
||||||
<row><Value>6</Value><Value>Дачный поселок</Value><Value>дп</Value><Value>дп.</Value></row>
|
<row><Value>6</Value><Value>Дачный поселок</Value><Value>дп</Value><Value>дп.</Value></row>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
||||||
|
|
||||||
#Область СлужебныйПрограммныйИнтерфейс
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
// Возвращает данные кэша версий из ресурса типа ХранилищеЗначения регистра КэшПрограммныхИнтерфейсов.
|
// Возвращает данные кэша версий из ресурса типа ХранилищеЗначения регистра КэшПрограммныхИнтерфейсов.
|
||||||
//
|
//
|
||||||
@@ -20,150 +20,82 @@
|
|||||||
// данных в кэше перед возвратом значения, в случае обнаружения факта их устаревания.
|
// данных в кэше перед возвратом значения, в случае обнаружения факта их устаревания.
|
||||||
// Истина - всегда использовать данные из кэша, если они там есть. Ложь - ожидать
|
// Истина - всегда использовать данные из кэша, если они там есть. Ложь - ожидать
|
||||||
// обновления данных кэша, в случае обнаружения факта устаревания данных.
|
// обновления данных кэша, в случае обнаружения факта устаревания данных.
|
||||||
|
// ЭтоЗащищенноеСоединениеПоУмолчанию - Булево, Неопределено
|
||||||
//
|
//
|
||||||
// Возвращаемое значение:
|
// Возвращаемое значение:
|
||||||
// ФиксированныйМассив, ДвоичныеДанные
|
// ФиксированныйМассив, ДвоичныеДанные
|
||||||
//
|
//
|
||||||
Функция ДанныеКэшаВерсий(Знач Идентификатор, Знач ТипДанных, Знач ПараметрыПолучения, Знач ИспользоватьУстаревшиеДанные = Истина) Экспорт
|
Функция ДанныеКэшаВерсий(Знач Идентификатор, Знач ТипДанных, Знач ПараметрыПолучения,
|
||||||
|
Знач ИспользоватьУстаревшиеДанные = Истина, Знач ЭтоЗащищенноеСоединениеПоУмолчанию = Неопределено) Экспорт
|
||||||
|
|
||||||
Запрос = Новый Запрос;
|
Выборка = ТекущиеДанныеКэшаВерсий(Идентификатор, ТипДанных);
|
||||||
Запрос.Текст =
|
|
||||||
"ВЫБРАТЬ
|
|
||||||
| ТаблицаКэша.ДатаОбновления КАК ДатаОбновления,
|
|
||||||
| ТаблицаКэша.Данные КАК Данные,
|
|
||||||
| ТаблицаКэша.ТипДанных КАК ТипДанных
|
|
||||||
|ИЗ
|
|
||||||
| РегистрСведений.КэшПрограммныхИнтерфейсов КАК ТаблицаКэша
|
|
||||||
|ГДЕ
|
|
||||||
| ТаблицаКэша.Идентификатор = &Идентификатор
|
|
||||||
| И ТаблицаКэша.ТипДанных = &ТипДанных";
|
|
||||||
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
|
|
||||||
Запрос.УстановитьПараметр("ТипДанных", ТипДанных);
|
|
||||||
|
|
||||||
НачатьТранзакцию();
|
|
||||||
Попытка
|
|
||||||
// Не устанавливаем управляемую блокировку, чтобы другие сеансы могли изменять значение пока эта транзакция активна.
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
Результат = Запрос.Выполнить();
|
|
||||||
УстановитьПривилегированныйРежим(Ложь);
|
|
||||||
ЗафиксироватьТранзакцию();
|
|
||||||
Исключение
|
|
||||||
ОтменитьТранзакцию();
|
|
||||||
ВызватьИсключение;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
ТребуетсяВыполнитьОбновление = Ложь;
|
ТребуетсяВыполнитьОбновление = Ложь;
|
||||||
ТребуетсяПеречитатьДанные = Ложь;
|
ТребуютсяОбновленныеДанные = Ложь;
|
||||||
|
|
||||||
Если Результат.Пустой() Тогда
|
|
||||||
|
|
||||||
|
Если Выборка = Неопределено Тогда
|
||||||
ТребуетсяВыполнитьОбновление = Истина;
|
ТребуетсяВыполнитьОбновление = Истина;
|
||||||
ТребуетсяПеречитатьДанные = Истина;
|
ТребуютсяОбновленныеДанные = Истина;
|
||||||
|
|
||||||
Иначе
|
ИначеЕсли Не КэшПрограммногоИнтерфейсаАктуален(Выборка.ДатаОбновления) Тогда
|
||||||
|
|
||||||
Выборка = Результат.Выбрать();
|
|
||||||
Выборка.Следующий();
|
|
||||||
Если Не КэшПрограммногоИнтерфейсаАктуален(Выборка.ДатаОбновления) Тогда
|
|
||||||
ТребуетсяВыполнитьОбновление = Истина;
|
ТребуетсяВыполнитьОбновление = Истина;
|
||||||
ТребуетсяПеречитатьДанные = НЕ ИспользоватьУстаревшиеДанные;
|
ТребуютсяОбновленныеДанные = Не ИспользоватьУстаревшиеДанные;
|
||||||
КонецЕсли;
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ТребуетсяВыполнитьОбновление Тогда
|
Если Не ТребуетсяВыполнитьОбновление Тогда
|
||||||
|
Возврат Выборка.Данные.Получить();
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
ОбновлениеВТекущемСеансе = ТребуетсяПеречитатьДанные
|
ОбновлениеВТекущемСеансе = ТребуютсяОбновленныеДанные
|
||||||
Или ОбщегоНазначения.ИнформационнаяБазаФайловая()
|
Или ОбщегоНазначения.ИнформационнаяБазаФайловая()
|
||||||
Или МонопольныйРежим()
|
Или МонопольныйРежим()
|
||||||
Или ОбщегоНазначения.РежимОтладки()
|
Или ОбщегоНазначения.РежимОтладки()
|
||||||
Или ТекущийРежимЗапуска() = Неопределено;
|
Или ТекущийРежимЗапуска() = Неопределено
|
||||||
|
Или ЭтоЗащищенноеСоединениеПоУмолчанию = Ложь;
|
||||||
|
|
||||||
|
ПараметрыОбновления = Новый Структура;
|
||||||
|
ПараметрыОбновления.Вставить("Идентификатор", Идентификатор);
|
||||||
|
ПараметрыОбновления.Вставить("ТипДанных", ТипДанных);
|
||||||
|
ПараметрыОбновления.Вставить("ПараметрыПолучения", ПараметрыПолучения);
|
||||||
|
|
||||||
Если ОбновлениеВТекущемСеансе Тогда
|
Если ОбновлениеВТекущемСеансе Тогда
|
||||||
ОбновитьДанныеКэшаВерсий(Идентификатор, ТипДанных, ПараметрыПолучения);
|
ОбновитьДанныеКэшаВерсий(ПараметрыОбновления, Выборка);
|
||||||
ТребуетсяПеречитатьДанные = Истина;
|
|
||||||
Иначе
|
Иначе
|
||||||
ИмяМетодаЗадания = "РегистрыСведений.КэшПрограммныхИнтерфейсов.ОбновитьДанныеКэшаВерсий";
|
Если ПараметрыПолучения.Количество() > 4 И ПараметрыПолучения[4] <> Неопределено Тогда
|
||||||
НаименованиеЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Обновление кэша версий. Идентификатор записи %1. Тип данных %2.'"),
|
ПараметрыОбновления.ПараметрыПолучения = Новый Массив(Новый ФиксированныйМассив(ПараметрыПолучения));
|
||||||
Идентификатор,
|
ПараметрыОбновления.ПараметрыПолучения[4] = Null;
|
||||||
ТипДанных);
|
КонецЕсли;
|
||||||
ПараметрыЗадания = Новый Массив;
|
ИмяПроцедуры = "РегистрыСведений.КэшПрограммныхИнтерфейсов.ОбновитьДанныеКэшаВерсий";
|
||||||
ПараметрыЗадания.Добавить(Идентификатор);
|
НаименованиеЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
ПараметрыЗадания.Добавить(ТипДанных);
|
НСтр("ru = 'Обновление кэша версий. Идентификатор записи %1. Тип данных %2.'"),
|
||||||
ПараметрыЗадания.Добавить(ПараметрыПолучения);
|
Идентификатор, ТипДанных);
|
||||||
|
|
||||||
ОтборЗаданий = Новый Структура;
|
ОтборЗаданий = Новый Структура;
|
||||||
ОтборЗаданий.Вставить("ИмяМетода", ИмяМетодаЗадания);
|
ОтборЗаданий.Вставить("ИмяМетода", ИмяПроцедуры);
|
||||||
ОтборЗаданий.Вставить("Наименование", НаименованиеЗадания);
|
ОтборЗаданий.Вставить("Наименование", НаименованиеЗадания);
|
||||||
ОтборЗаданий.Вставить("Состояние", СостояниеФоновогоЗадания.Активно);
|
ОтборЗаданий.Вставить("Состояние", СостояниеФоновогоЗадания.Активно);
|
||||||
|
|
||||||
Задания = ФоновыеЗадания.ПолучитьФоновыеЗадания(ОтборЗаданий);
|
Если ФоновыеЗадания.ПолучитьФоновыеЗадания(ОтборЗаданий).Количество() = 0 Тогда
|
||||||
Если Задания.Количество() = 0 Тогда
|
ПараметрыОперации = ДлительныеОперации.ПараметрыВыполненияВФоне(Неопределено);
|
||||||
// Запустим новое.
|
ПараметрыОперации.НаименованиеФоновогоЗадания = НаименованиеЗадания;
|
||||||
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Неопределено);
|
ПараметрыОперации.ЗапуститьВФоне = Истина;
|
||||||
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
|
ПараметрыОперации.ОжидатьЗавершение = 0;
|
||||||
БезопасныйРежим = БезопасныйРежим();
|
|
||||||
УстановитьОтключениеБезопасногоРежима(Истина);
|
ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыОбновления, ПараметрыОперации);
|
||||||
ДлительныеОперации.ЗапуститьФоновоеЗаданиеСКонтекстомКлиента(ИмяМетодаЗадания,
|
|
||||||
ПараметрыВыполнения, ПараметрыЗадания, БезопасныйРежим);
|
|
||||||
УстановитьОтключениеБезопасногоРежима(Ложь);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ТребуетсяПеречитатьДанные Тогда
|
|
||||||
|
|
||||||
НачатьТранзакцию();
|
|
||||||
Попытка
|
|
||||||
// Не устанавливаем управляемую блокировку, чтобы другие сеансы могли изменять значение пока эта транзакция активна.
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
Результат = Запрос.Выполнить();
|
|
||||||
УстановитьПривилегированныйРежим(Ложь);
|
|
||||||
ЗафиксироватьТранзакцию();
|
|
||||||
Исключение
|
|
||||||
ОтменитьТранзакцию();
|
|
||||||
ВызватьИсключение;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
Если Результат.Пустой() Тогда
|
|
||||||
ШаблонСообщения = НСтр("ru = 'Ошибка при обновлении кэша версий. Данные не получены.
|
|
||||||
|Идентификатор записи: %1
|
|
||||||
|Тип данных: %2'");
|
|
||||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, Идентификатор, ТипДанных);
|
|
||||||
|
|
||||||
ВызватьИсключение(ТекстСообщения);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Выборка = Результат.Выбрать();
|
|
||||||
Выборка.Следующий();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Возврат Выборка.Данные.Получить();
|
Возврат Выборка.Данные.Получить();
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Обновляет данные в кэше версий.
|
// Для функции ДанныеКэшаВерсий и процедуры ОбновитьДанныеКэшаВерсий.
|
||||||
//
|
Функция ТекущиеДанныеКэшаВерсий(Идентификатор, ТипДанных)
|
||||||
// Параметры:
|
|
||||||
// Идентификатор - Строка - идентификатор записи кэша.
|
|
||||||
// ТипДанных - ПеречислениеСсылка.ТипыДанныхКэшаПрограммныхИнтерфейсов - тип обновляемых данных.
|
|
||||||
// ПараметрыПолучения - Массив - дополнительные параметры получения данных в кэш.
|
|
||||||
//
|
|
||||||
Процедура ОбновитьДанныеКэшаВерсий(Знач Идентификатор, Знач ТипДанных, Знач ПараметрыПолучения) Экспорт
|
|
||||||
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
|
||||||
|
|
||||||
СтруктураКлюча = Новый Структура("Идентификатор, ТипДанных", Идентификатор, ТипДанных);
|
|
||||||
Ключ = СоздатьКлючЗаписи(СтруктураКлюча);
|
|
||||||
|
|
||||||
Попытка
|
|
||||||
ЗаблокироватьДанныеДляРедактирования(Ключ);
|
|
||||||
Исключение
|
|
||||||
// Данные уже обновляются из другого сеанса.
|
|
||||||
Возврат;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
Запрос = Новый Запрос;
|
Запрос = Новый Запрос;
|
||||||
|
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
|
||||||
|
Запрос.УстановитьПараметр("ТипДанных", ТипДанных);
|
||||||
|
|
||||||
Запрос.Текст =
|
Запрос.Текст =
|
||||||
"ВЫБРАТЬ
|
"ВЫБРАТЬ
|
||||||
| ТаблицаКэша.ДатаОбновления КАК ДатаОбновления,
|
| ТаблицаКэша.ДатаОбновления КАК ДатаОбновления,
|
||||||
@@ -174,67 +106,85 @@
|
|||||||
|ГДЕ
|
|ГДЕ
|
||||||
| ТаблицаКэша.Идентификатор = &Идентификатор
|
| ТаблицаКэша.Идентификатор = &Идентификатор
|
||||||
| И ТаблицаКэша.ТипДанных = &ТипДанных";
|
| И ТаблицаКэша.ТипДанных = &ТипДанных";
|
||||||
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
|
|
||||||
Запрос.УстановитьПараметр("ТипДанных", ТипДанных);
|
|
||||||
|
|
||||||
НачатьТранзакцию();
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
Выборка = Запрос.Выполнить().Выбрать();
|
||||||
|
УстановитьПривилегированныйРежим(Ложь);
|
||||||
|
|
||||||
Попытка
|
Если Выборка.Следующий() Тогда
|
||||||
|
Возврат Выборка;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат Неопределено;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
// Обновляет данные в кэше версий.
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ПараметрыОбновления - Структура:
|
||||||
|
// * Идентификатор - Строка - идентификатор записи кэша.
|
||||||
|
// * ТипДанных - ПеречислениеСсылка.ТипыДанныхКэшаПрограммныхИнтерфейсов - тип обновляемых данных.
|
||||||
|
// * ПараметрыПолучения - Массив - дополнительные параметры получения данных в кэш.
|
||||||
|
// АдресХранилища - Строка - не используется
|
||||||
|
// - Неопределено, ВыборкаИзРезультатаЗапроса - возвращаемое значение.
|
||||||
|
//
|
||||||
|
Процедура ОбновитьДанныеКэшаВерсий(ПараметрыОбновления, АдресХранилища) Экспорт
|
||||||
|
|
||||||
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
|
Идентификатор = ПараметрыОбновления.Идентификатор;
|
||||||
|
ТипДанных = ПараметрыОбновления.ТипДанных;
|
||||||
|
ПараметрыПолучения = ПараметрыОбновления.ПараметрыПолучения;
|
||||||
|
|
||||||
|
Если ПараметрыПолучения.Количество() > 4 И ПараметрыПолучения[4] = Null Тогда
|
||||||
|
ПараметрыПолучения[4] = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ТипЗнч(АдресХранилища) = Тип("Строка") Тогда
|
||||||
|
Выборка = ТекущиеДанныеКэшаВерсий(Идентификатор, ТипДанных);
|
||||||
|
Если Выборка <> Неопределено
|
||||||
|
И КэшПрограммногоИнтерфейсаАктуален(Выборка.ДатаОбновления) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
НаборЗаписей = СоздатьНаборЗаписей();
|
||||||
|
НаборЗаписей.Отбор.Идентификатор.Установить(Идентификатор);
|
||||||
|
НаборЗаписей.Отбор.ТипДанных.Установить(ТипДанных);
|
||||||
|
|
||||||
|
НоваяЗапись = НаборЗаписей.Добавить();
|
||||||
|
НоваяЗапись.Идентификатор = Идентификатор;
|
||||||
|
НоваяЗапись.ТипДанных = ТипДанных;
|
||||||
|
НоваяЗапись.ДатаОбновления = ТекущаяУниверсальнаяДата();
|
||||||
|
|
||||||
|
НаборЗаписей.ДополнительныеСвойства.Вставить("ПараметрыПолучения", ПараметрыПолучения);
|
||||||
|
НаборЗаписей.ПодготовитьДанныеДляЗаписи(НоваяЗапись.Данные);
|
||||||
|
|
||||||
Блокировка = Новый БлокировкаДанных;
|
Блокировка = Новый БлокировкаДанных;
|
||||||
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.КэшПрограммныхИнтерфейсов");
|
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.КэшПрограммныхИнтерфейсов");
|
||||||
ЭлементБлокировки.УстановитьЗначение("Идентификатор", Идентификатор);
|
ЭлементБлокировки.УстановитьЗначение("Идентификатор", Идентификатор);
|
||||||
ЭлементБлокировки.УстановитьЗначение("ТипДанных", ТипДанных);
|
ЭлементБлокировки.УстановитьЗначение("ТипДанных", ТипДанных);
|
||||||
|
|
||||||
|
НачатьТранзакцию();
|
||||||
|
Попытка
|
||||||
Блокировка.Заблокировать();
|
Блокировка.Заблокировать();
|
||||||
|
|
||||||
Результат = Запрос.Выполнить();
|
Выборка = ТекущиеДанныеКэшаВерсий(Идентификатор, ТипДанных);
|
||||||
|
|
||||||
|
Если Выборка = Неопределено
|
||||||
|
Или Не КэшПрограммногоИнтерфейсаАктуален(Выборка.ДатаОбновления) Тогда
|
||||||
|
|
||||||
|
НаборЗаписей.Записать();
|
||||||
|
Если ТипЗнч(АдресХранилища) <> Тип("Строка") Тогда
|
||||||
|
АдресХранилища = НоваяЗапись;
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
// Не удерживаем транзакцию для того, чтобы другие сеансы могли выполнять чтение данных.
|
|
||||||
ЗафиксироватьТранзакцию();
|
ЗафиксироватьТранзакцию();
|
||||||
|
|
||||||
Исключение
|
Исключение
|
||||||
|
|
||||||
ОтменитьТранзакцию();
|
ОтменитьТранзакцию();
|
||||||
РазблокироватьДанныеДляРедактирования(Ключ);
|
|
||||||
ВызватьИсключение;
|
ВызватьИсключение;
|
||||||
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
Попытка
|
|
||||||
|
|
||||||
// Убедимся, что данные требуют обновления.
|
|
||||||
Если Не Результат.Пустой() Тогда
|
|
||||||
|
|
||||||
Выборка = Результат.Выбрать();
|
|
||||||
Выборка.Следующий();
|
|
||||||
Если КэшПрограммногоИнтерфейсаАктуален(Выборка.ДатаОбновления) Тогда
|
|
||||||
РазблокироватьДанныеДляРедактирования(Ключ);
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Набор = СоздатьНаборЗаписей();
|
|
||||||
Набор.Отбор.Идентификатор.Установить(Идентификатор);
|
|
||||||
Набор.Отбор.ТипДанных.Установить(ТипДанных);
|
|
||||||
|
|
||||||
Запись = Набор.Добавить();
|
|
||||||
Запись.Идентификатор = Идентификатор;
|
|
||||||
Запись.ТипДанных = ТипДанных;
|
|
||||||
Запись.ДатаОбновления = ТекущаяУниверсальнаяДата();
|
|
||||||
|
|
||||||
Набор.ДополнительныеСвойства.Вставить("ПараметрыПолучения", ПараметрыПолучения);
|
|
||||||
Набор.ПодготовитьДанныеДляЗаписи();
|
|
||||||
|
|
||||||
Набор.Записать();
|
|
||||||
|
|
||||||
РазблокироватьДанныеДляРедактирования(Ключ);
|
|
||||||
|
|
||||||
Исключение
|
|
||||||
|
|
||||||
РазблокироватьДанныеДляРедактирования(Ключ);
|
|
||||||
ВызватьИсключение;
|
|
||||||
|
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
@@ -288,12 +238,14 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЗащищенноеСоединение = Параметры.ЗащищенноеСоединение;
|
ЗащищенноеСоединение = Параметры.ЗащищенноеСоединение;
|
||||||
|
ЭтоЗащищенноеСоединениеПоУмолчанию = Ложь;
|
||||||
Если (Протокол = "https" Или Протокол = "ftps") И ЗащищенноеСоединение = Неопределено Тогда
|
Если (Протокол = "https" Или Протокол = "ftps") И ЗащищенноеСоединение = Неопределено Тогда
|
||||||
ЗащищенноеСоединение = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
|
ЗащищенноеСоединение = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
|
||||||
|
ЭтоЗащищенноеСоединениеПоУмолчанию = Истина;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
WSОпределения = WSОпределения(Параметры.АдресWSDL, Параметры.ИмяПользователя, Параметры.Пароль,,
|
WSОпределения = WSОпределения(Параметры.АдресWSDL, Параметры.ИмяПользователя, Параметры.Пароль,,
|
||||||
ЗащищенноеСоединение);
|
ЗащищенноеСоединение, ЭтоЗащищенноеСоединениеПоУмолчанию);
|
||||||
|
|
||||||
ИмяТочкиПодключения = Параметры.ИмяТочкиПодключения;
|
ИмяТочкиПодключения = Параметры.ИмяТочкиПодключения;
|
||||||
Если ПустаяСтрока(ИмяТочкиПодключения) Тогда
|
Если ПустаяСтрока(ИмяТочкиПодключения) Тогда
|
||||||
@@ -323,10 +275,6 @@
|
|||||||
Возврат Прокси;
|
Возврат Прокси;
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
|
||||||
|
|
||||||
Функция КэшПрограммногоИнтерфейсаАктуален(ДатаОбновления)
|
Функция КэшПрограммногоИнтерфейсаАктуален(ДатаОбновления)
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ДатаОбновления) Тогда
|
Если ЗначениеЗаполнено(ДатаОбновления) Тогда
|
||||||
@@ -337,7 +285,8 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция WSОпределения(Знач АдресWSDL, Знач ИмяПользователя, Знач Пароль, Знач Таймаут = 10, Знач ЗащищенноеСоединение = Неопределено)
|
Функция WSОпределения(Знач АдресWSDL, Знач ИмяПользователя, Знач Пароль, Знач Таймаут = 10,
|
||||||
|
Знач ЗащищенноеСоединение = Неопределено, ЭтоЗащищенноеСоединениеПоУмолчанию = Ложь)
|
||||||
|
|
||||||
Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолучениеФайловИзИнтернета") Тогда
|
Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолучениеФайловИзИнтернета") Тогда
|
||||||
Попытка
|
Попытка
|
||||||
@@ -380,7 +329,8 @@
|
|||||||
АдресWSDL,
|
АдресWSDL,
|
||||||
Перечисления.ТипыДанныхКэшаПрограммныхИнтерфейсов.ОписаниеWebСервиса,
|
Перечисления.ТипыДанныхКэшаПрограммныхИнтерфейсов.ОписаниеWebСервиса,
|
||||||
ПараметрыПолучения,
|
ПараметрыПолучения,
|
||||||
Ложь); // ДвоичныеДанные
|
Ложь,
|
||||||
|
ЭтоЗащищенноеСоединениеПоУмолчанию); // ДвоичныеДанные
|
||||||
|
|
||||||
ИмяФайлаWSDL = ПолучитьИмяВременногоФайла("wsdl");
|
ИмяФайлаWSDL = ПолучитьИмяВременногоФайла("wsdl");
|
||||||
ДанныеWSDL.Записать(ИмяФайлаWSDL);
|
ДанныеWSDL.Записать(ИмяФайлаWSDL);
|
||||||
|
|||||||
@@ -72,7 +72,7 @@
|
|||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
Процедура ПодготовитьДанныеДляЗаписи() Экспорт
|
Процедура ПодготовитьДанныеДляЗаписи(ХранилищеДанных) Экспорт
|
||||||
|
|
||||||
ПараметрыПолучения = Неопределено;
|
ПараметрыПолучения = Неопределено;
|
||||||
Если Не ДополнительныеСвойства.Свойство("ПараметрыПолучения", ПараметрыПолучения) Тогда
|
Если Не ДополнительныеСвойства.Свойство("ПараметрыПолучения", ПараметрыПолучения) Тогда
|
||||||
@@ -84,8 +84,8 @@
|
|||||||
Для Каждого Строка Из ДанныеДляЗаписи Цикл
|
Для Каждого Строка Из ДанныеДляЗаписи Цикл
|
||||||
|
|
||||||
Данные = РегистрыСведений.КэшПрограммныхИнтерфейсов.ПодготовитьДанныеКэшаВерсий(Строка.ТипДанных, ПараметрыПолучения);
|
Данные = РегистрыСведений.КэшПрограммныхИнтерфейсов.ПодготовитьДанныеКэшаВерсий(Строка.ТипДанных, ПараметрыПолучения);
|
||||||
Строка.Данные = Новый ХранилищеЗначения(Данные, Новый СжатиеДанных(9));
|
ХранилищеДанных = Новый ХранилищеЗначения(Данные, Новый СжатиеДанных(9));
|
||||||
|
Строка.Данные = ХранилищеДанных;
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
ПодготовленыДанные = Истина;
|
ПодготовленыДанные = Истина;
|
||||||
|
|||||||
@@ -13,22 +13,18 @@
|
|||||||
Функция ЕстьРассчитанныеСрокиХранения() Экспорт
|
Функция ЕстьРассчитанныеСрокиХранения() Экспорт
|
||||||
|
|
||||||
Запрос = Новый Запрос;
|
Запрос = Новый Запрос;
|
||||||
|
Запрос.УстановитьПараметр("СрокХраненияНеРассчитан", Дата(3999, 12, 31));
|
||||||
Запрос.Текст =
|
Запрос.Текст =
|
||||||
"ВЫБРАТЬ ПЕРВЫЕ 1 РАЗРЕШЕННЫЕ
|
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
|
||||||
| СрокиХраненияПерсональныхДанных.СрокХранения КАК СрокХранения
|
| СрокиХраненияПерсональныхДанных.СрокХранения КАК СрокХранения
|
||||||
|ИЗ
|
|ИЗ
|
||||||
| РегистрСведений.СрокиХраненияПерсональныхДанных КАК СрокиХраненияПерсональныхДанных";
|
| РегистрСведений.СрокиХраненияПерсональныхДанных КАК СрокиХраненияПерсональныхДанных
|
||||||
|
|ГДЕ
|
||||||
|
| СрокиХраненияПерсональныхДанных.СрокХранения <> &СрокХраненияНеРассчитан";
|
||||||
|
|
||||||
РезультатЗапроса = Запрос.Выполнить();
|
РезультатЗапроса = Запрос.Выполнить();
|
||||||
|
|
||||||
Если РезультатЗапроса.Пустой() Тогда
|
Возврат Не РезультатЗапроса.Пустой();
|
||||||
Возврат Ложь;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Выборка = РезультатЗапроса.Выбрать();
|
|
||||||
Выборка.Следующий();
|
|
||||||
|
|
||||||
Возврат Выборка.СрокХранения <> Дата(3999, 12, 31);
|
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
@@ -4045,6 +4045,93 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>Catalog.КлассификаторБанков</name>
|
<name>Catalog.КлассификаторБанков</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -4265,93 +4352,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>DataProcessor.НастройкиЦентраМониторинга.Command.НастройкаОтправкиОтчетовОбОшибках</name>
|
<name>DataProcessor.НастройкиЦентраМониторинга.Command.НастройкаОтправкиОтчетовОбОшибках</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -2201,6 +2201,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>Catalog.КлассификаторБанков</name>
|
<name>Catalog.КлассификаторБанков</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -2317,33 +2344,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>CommonForm.ПоддерживаемыеКлиентскиеПриложения</name>
|
<name>CommonForm.ПоддерживаемыеКлиентскиеПриложения</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -1715,6 +1715,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>Catalog.КлассификаторБанков</name>
|
<name>Catalog.КлассификаторБанков</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -1831,33 +1858,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>SessionParameter.ИнтерактивнаяПроверкаЗаполненияСвойств</name>
|
<name>SessionParameter.ИнтерактивнаяПроверкаЗаполненияСвойств</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -210,6 +210,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>InformationRegister.ЗемельныеУчастки</name>
|
<name>InformationRegister.ЗемельныеУчастки</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -256,33 +283,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>InformationRegister.АдресныеОбъекты</name>
|
<name>InformationRegister.АдресныеОбъекты</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -21,6 +21,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>Catalog.КлассификаторБанков</name>
|
<name>Catalog.КлассификаторБанков</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -60,31 +87,4 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
</Rights>
|
||||||
@@ -135,29 +135,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>InformationRegister.НастройкиВариантовОтчетов</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>
|
|
||||||
<right>
|
|
||||||
<name>TotalsControl</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -185,6 +162,29 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>InformationRegister.НастройкиВариантовОтчетов</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>
|
||||||
|
<right>
|
||||||
|
<name>TotalsControl</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>Catalog.ВариантыОтчетов.Command.РазместитьВРазделах</name>
|
<name>Catalog.ВариантыОтчетов.Command.РазместитьВРазделах</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -1048,6 +1048,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</name>
|
<name>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -1128,33 +1155,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>DocumentJournal.Взаимодействия.Command.ЗапланироватьВстречуПоКонтакту</name>
|
<name>DocumentJournal.Взаимодействия.Command.ЗапланироватьВстречуПоКонтакту</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -87,13 +87,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -121,6 +114,13 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>CommonCommand.РедактируемыеФайлы</name>
|
<name>CommonCommand.РедактируемыеФайлы</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -87,13 +87,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -121,6 +114,13 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>CommonCommand.ПрисоединенныеФайлы</name>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>CommonCommand.РедактируемыеФайлы</name>
|
<name>CommonCommand.РедактируемыеФайлы</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -146,13 +146,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>CommonCommand.КартаМаршрутаБизнесПроцесса</name>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -180,6 +173,13 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>CommonCommand.КартаМаршрутаБизнесПроцесса</name>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>Task.ЗадачаИсполнителя.Command.МоиЗадачи</name>
|
<name>Task.ЗадачаИсполнителя.Command.МоиЗадачи</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -5686,6 +5686,45 @@
|
|||||||
<value>false</value>
|
<value>false</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
|
<right>
|
||||||
|
<name>Administration</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>UpdateDataBaseConfiguration</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>ThickClient</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>ExternalConnection</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>Automation</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>TechnicalSpecialistMode</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>ConfigurationExtensionsAdministration</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>InteractiveOpenExtDataProcessors</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>InteractiveOpenExtReports</name>
|
||||||
|
<value>false</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>Catalog.КлассификаторБанков</name>
|
<name>Catalog.КлассификаторБанков</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -5945,45 +5984,6 @@
|
|||||||
<value>false</value>
|
<value>false</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
|
||||||
<right>
|
|
||||||
<name>Administration</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>UpdateDataBaseConfiguration</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>ThickClient</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>ExternalConnection</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>Automation</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>TechnicalSpecialistMode</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>ConfigurationExtensionsAdministration</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>InteractiveOpenExtDataProcessors</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>InteractiveOpenExtReports</name>
|
|
||||||
<value>false</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>DataProcessor.НастройкиЦентраМониторинга.Command.НастройкаОтправкиОтчетовОбОшибках</name>
|
<name>DataProcessor.НастройкиЦентраМониторинга.Command.НастройкаОтправкиОтчетовОбОшибках</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -2987,6 +2987,33 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</name>
|
<name>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -3064,33 +3091,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</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>
|
<object>
|
||||||
<name>InformationRegister.СертификатыШифрования</name>
|
<name>InformationRegister.СертификатыШифрования</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -58,17 +58,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>InformationRegister.НастройкиВариантовОтчетов</name>
|
|
||||||
<right>
|
|
||||||
<name>Read</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -96,4 +85,15 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>InformationRegister.НастройкиВариантовОтчетов</name>
|
||||||
|
<right>
|
||||||
|
<name>Read</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
</Rights>
|
</Rights>
|
||||||
@@ -134,12 +134,14 @@
|
|||||||
&НаСервере
|
&НаСервере
|
||||||
Процедура УстановитьСостояниеЭлементовИТипыОбъектовАдресации()
|
Процедура УстановитьСостояниеЭлементовИТипыОбъектовАдресации()
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(Исполнитель) Тогда
|
||||||
ОписаниеПользователя = ПользователиСлужебный.ОписаниеПользователя(Исполнитель);
|
ОписаниеПользователя = ПользователиСлужебный.ОписаниеПользователя(Исполнитель);
|
||||||
Если ОписаниеПользователя.Недействителен Или ОписаниеПользователя.ПометкаУдаления Тогда
|
Если ОписаниеПользователя.Недействителен Или ОписаниеПользователя.ПометкаУдаления Тогда
|
||||||
ОбщегоНазначения.СообщитьПользователю(НСтр("ru = 'Исполнителем задачи выбран недействительный пользователь.'"),,,
|
ОбщегоНазначения.СообщитьПользователю(НСтр("ru = 'Исполнителем задачи выбран недействительный пользователь.'"),,,
|
||||||
"Исполнитель");
|
"Исполнитель");
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
УстановитьТипыОбъектовАдресации();
|
УстановитьТипыОбъектовАдресации();
|
||||||
УстановитьСостояниеЭлементов();
|
УстановитьСостояниеЭлементов();
|
||||||
|
|||||||
Reference in new issue
Block a user