3_1_6_180

This commit is contained in:
Компания 1С committed 2022-04-04 17:00:00 +03:00
1 parent 9623494cce
commit 5b5aa608ea
299 files changed
+5229 -3948

No files matched your search

@@ -1960,7 +1960,7 @@
ИНАЧЕ ВЫРАЗИТЬ(ВариантыОтчетовПереопределяемый.Описание КАК СТРОКА(1000)) ИНАЧЕ ВЫРАЗИТЬ(ВариантыОтчетовПереопределяемый.Описание КАК СТРОКА(1000))
КОНЕЦ КАК Описание, КОНЕЦ КАК Описание,
&ИмяОтчета КАК ИмяОтчета, &ИмяОтчета КАК ИмяОтчета,
СведенияОРасширениях.ПолноеИмяОбъекта КАК ПолноеИмяОтчета, СведенияОРасширенияхПереопределяемый.ПолноеИмяОбъекта КАК ПолноеИмяОтчета,
ВЫБОР ВЫБОР
КОГДА ВариантыОтчетовПереопределяемый.ПометкаУдаления = ИСТИНА КОГДА ВариантыОтчетовПереопределяемый.ПометкаУдаления = ИСТИНА
ТОГДА 4 ТОГДА 4
@@ -1974,9 +1974,9 @@
ПО ВариантыОтчетовПереопределяемый.ПредопределенныйВариант = ВариантыКонфигурацииПереопределяемый.Ссылка ПО ВариантыОтчетовПереопределяемый.ПредопределенныйВариант = ВариантыКонфигурацииПереопределяемый.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ВариантыРасширенийПереопределяемый ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ВариантыРасширенийПереопределяемый
ПО ВариантыОтчетовПереопределяемый.ПредопределенныйВариант = ВариантыРасширенийПереопределяемый.Ссылка ПО ВариантыОтчетовПереопределяемый.ПредопределенныйВариант = ВариантыРасширенийПереопределяемый.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК СведенияОРасширениях ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК СведенияОРасширенияхПереопределяемый
ПО СведенияОРасширениях.ВерсияРасширений = &ВерсияРасширений ПО СведенияОРасширенияхПереопределяемый.ВерсияРасширений = &ВерсияРасширений
И СведенияОРасширениях.Идентификатор = ВариантыОтчетовПереопределяемый.Отчет И СведенияОРасширенияхПереопределяемый.Идентификатор = ВариантыОтчетовПереопределяемый.Отчет
ГДЕ ГДЕ
ВариантыОтчетовПереопределяемый.Отчет В (&ДоступныеОтчеты) ВариантыОтчетовПереопределяемый.Отчет В (&ДоступныеОтчеты)
И ВЫБОР И ВЫБОР
@@ -106,7 +106,7 @@
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
Если ПараметрыОткрытия.ТипОтчета = "Дополнительный" Тогда // Для платформы. Если ПараметрыОткрытия.ТипОтчета = "Дополнительный" Тогда // Для платформы.
ВыбраннаяФорма = "Справочник.ВариантыОтчетов.Форма.ФормаЭлемента"; ВыбраннаяФорма = "Справочник.ВариантыОтчетов.ФормаОбъекта";
Параметры.Вставить("ПараметрыОткрытияФормыОтчета", ПараметрыОткрытия); Параметры.Вставить("ПараметрыОткрытияФормыОтчета", ПараметрыОткрытия);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1146,7 +1146,7 @@
ВерсииФайловПереопределяемый.Комментарий КАК Комментарий, ВерсииФайловПереопределяемый.Комментарий КАК Комментарий,
ВерсииФайловПереопределяемый.Автор КАК Автор, ВерсииФайловПереопределяемый.Автор КАК Автор,
ВерсииФайловПереопределяемый.ДатаСоздания КАК ДатаСоздания, ВерсииФайловПереопределяемый.ДатаСоздания КАК ДатаСоздания,
ВерсииФайловПереопределяемый.ПолноеНаименование КАК ПолноеНаименование, ВерсииФайловПереопределяемый.Наименование КАК ПолноеНаименование,
ВерсииФайловПереопределяемый.РодительскаяВерсия КАК РодительскаяВерсия, ВерсииФайловПереопределяемый.РодительскаяВерсия КАК РодительскаяВерсия,
ВЫБОР ВЫБОР
КОГДА ВерсииФайловПереопределяемый.ПометкаУдаления КОГДА ВерсииФайловПереопределяемый.ПометкаУдаления
@@ -299,7 +299,7 @@
| ВерсииФайлов.Комментарий КАК Комментарий, | ВерсииФайлов.Комментарий КАК Комментарий,
| ВерсииФайлов.Автор КАК Автор, | ВерсииФайлов.Автор КАК Автор,
| ВерсииФайлов.ДатаСоздания КАК ДатаСоздания, | ВерсииФайлов.ДатаСоздания КАК ДатаСоздания,
| ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование, | ВерсииФайлов.Наименование КАК ПолноеНаименование,
| ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия, | ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия,
| ВЫБОР | ВЫБОР
| КОГДА ВерсииФайлов.ПометкаУдаления | КОГДА ВерсииФайлов.ПометкаУдаления
@@ -287,7 +287,7 @@
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<dataPath xsi:type="form:DataPath"> <dataPath xsi:type="form:DataPath">
<segments>Список.ПолноеНаименование</segments> <segments>Список.Description</segments>
</dataPath> </dataPath>
<extendedTooltip> <extendedTooltip>
<name>СписокПолноеНаименованиеРасширеннаяПодсказка</name> <name>СписокПолноеНаименованиеРасширеннаяПодсказка</name>
@@ -969,7 +969,7 @@
ВерсииФайлов.Комментарий, ВерсииФайлов.Комментарий,
ВерсииФайлов.Автор, ВерсииФайлов.Автор,
ВерсииФайлов.ДатаСоздания, ВерсииФайлов.ДатаСоздания,
ВерсииФайлов.ПолноеНаименование, ВерсииФайлов.Наименование,
ВерсииФайлов.ИндексКартинки, ВерсииФайлов.ИндексКартинки,
ВерсииФайлов.ПометкаУдаления, ВерсииФайлов.ПометкаУдаления,
ВерсииФайлов.Расширение, ВерсииФайлов.Расширение,
@@ -31,10 +31,6 @@
СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен; СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен;
КонецЕсли; КонецЕсли;
Если ТипЗнч(Владелец) = Тип("СправочникСсылка.Файлы") Тогда
Наименование = СокрЛП(ПолноеНаименование);
КонецЕсли;
Если Владелец.ТекущаяВерсия = Ссылка Тогда Если Владелец.ТекущаяВерсия = Ссылка Тогда
Если ПометкаУдаления = Истина И Владелец.ПометкаУдаления <> Истина Тогда Если ПометкаУдаления = Истина И Владелец.ПометкаУдаления <> Истина Тогда
ВызватьИсключение НСтр("ru = 'Активную версию нельзя удалить.'"); ВызватьИсключение НСтр("ru = 'Активную версию нельзя удалить.'");
@@ -230,25 +230,6 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="f8ab477c-8e78-48c0-9f99-27748b109706">
<name>УдалитьЗашифрован</name>
<synonym>
<key>ru</key>
<value>(не используется) Зашифрована</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Признак того, что версия файла зашифрована</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="24cff6c8-6c20-4383-b97c-6afa52738960"> <attributes uuid="24cff6c8-6c20-4383-b97c-6afa52738960">
<name>ИндексКартинки</name> <name>ИндексКартинки</name>
<synonym> <synonym>
@@ -315,50 +296,6 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="2d51aae9-650d-4719-a94d-2609b69a2d36">
<name>УдалитьПодписанЭП</name>
<synonym>
<key>ru</key>
<value>(не используется) Подписана электронно</value>
</synonym>
<type>
<types>Boolean</types>
</type>
<toolTip>
<key>ru</key>
<value>Признак того, что версия файла подписана электронно</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="6025f5b5-6dc7-46b8-96e6-02823c5b4de7">
<name>ПолноеНаименование</name>
<synonym>
<key>ru</key>
<value>Полное наименование</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>256</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Имя версии файла (без расширения) длиной до 256 символов</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue">
<value> </value>
</fillValue>
<indexing>Index</indexing>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="5d9d88ea-b2e4-425c-bb4d-a005e867d56c"> <attributes uuid="5d9d88ea-b2e4-425c-bb4d-a005e867d56c">
<name>ПутьКФайлу</name> <name>ПутьКФайлу</name>
<synonym> <synonym>
@@ -369,7 +369,7 @@
<titleLocation>Right</titleLocation> <titleLocation>Right</titleLocation>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории необходимо в контекстном меню элемента контактной информации выбрать пункт «История изменений».</value> <value>Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории выберите в контекстном меню пункт &quot;История изменений&quot;.</value>
</toolTip> </toolTip>
<toolTipRepresentation>Button</toolTipRepresentation> <toolTipRepresentation>Button</toolTipRepresentation>
<handlers> <handlers>
@@ -238,7 +238,7 @@
КонецПроцедуры КонецПроцедуры
// Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлемента // Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлементов
// //
// Параметры: // Параметры:
// Объект - СправочникОбъект.ВидыКонтактнойИнформации - заполняемый объект. // Объект - СправочникОбъект.ВидыКонтактнойИнформации - заполняемый объект.
@@ -22,7 +22,7 @@
ПараметрыФормы.Вставить("Отображение", "Список"); ПараметрыФормы.Вставить("Отображение", "Список");
ПараметрыФормы.Вставить("ПроверкаДополнительныхОтчетовИОбработок", Истина); ПараметрыФормы.Вставить("ПроверкаДополнительныхОтчетовИОбработок", Истина);
ОткрытьФорму("Справочник.ДополнительныеОтчетыИОбработки.Форма.ФормаСписка", ПараметрыФормы); ОткрытьФорму("Справочник.ДополнительныеОтчетыИОбработки.ФормаСписка", ПараметрыФормы);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@@ -107,7 +107,7 @@
ВозможнаяПричина = НСтр("ru = 'График не был заполнен на очередной календарный год'"); ВозможнаяПричина = НСтр("ru = 'График не был заполнен на очередной календарный год'");
Иначе Иначе
Если Выборка.ДатаОкончания < ДатаНеобходимойЗаполненности Тогда Если Выборка.ДатаОкончания < ДатаНеобходимойЗаполненности Тогда
ВозможнаяПричина = НСтр("ru = 'Период заполнения графика ограничен (см. поле «Дата окончания»)'") ВозможнаяПричина = НСтр("ru = 'Период заполнения графика ограничен (см. поле ""Дата окончания"").'")
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -269,7 +269,7 @@
</title> </title>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Если дата «по» не заполнена, график будет заполняться <value>Если дата &quot;по&quot; не заполнена, график будет заполняться
по указанному шаблону до конца года производственного календаря</value> по указанному шаблону до конца года производственного календаря</value>
</toolTip> </toolTip>
<toolTipRepresentation>ShowBottom</toolTipRepresentation> <toolTipRepresentation>ShowBottom</toolTipRepresentation>
@@ -726,7 +726,7 @@
КонецЕсли; КонецЕсли;
// Переносим результат в исходное соответствие заполнения, // Переносим результат в исходное соответствие заполнения,
// чтобы не «затереть» даты, не входящие в интервал заполнения. // чтобы не затереть даты, не входящие в интервал заполнения.
ДниГрафикаСоответствие = Новый Соответствие(ДниГрафика); ДниГрафикаСоответствие = Новый Соответствие(ДниГрафика);
ДатаДня = Объект.ДатаНачала; ДатаДня = Объект.ДатаНачала;
ДатаОкончания = Объект.ДатаОкончания; ДатаОкончания = Объект.ДатаОкончания;
@@ -912,7 +912,7 @@
ДоступноЗаполнениеПоШаблону = Ложь; ДоступноЗаполнениеПоШаблону = Ложь;
Если Форма.РучноеРедактирование Тогда Если Форма.РучноеРедактирование Тогда
ИнформационныйТекст = НСтр("ru = 'График работы на текущий год изменен вручную. ИнформационныйТекст = НСтр("ru = 'График работы на текущий год изменен вручную.
|Нажмите «Заполнить по шаблону» чтобы вернуться к автоматическому заполнению.'"); |Нажмите ""Заполнить по шаблону"", чтобы вернуться к автоматическому заполнению.'");
ИнформационнаяКартинка = БиблиотекаКартинок.Предупреждение; ИнформационнаяКартинка = БиблиотекаКартинок.Предупреждение;
ДоступноЗаполнениеПоШаблону = Истина; ДоступноЗаполнениеПоШаблону = Истина;
Иначе Иначе
@@ -923,7 +923,7 @@
КонецЕсли; КонецЕсли;
Иначе Иначе
ИнформационныйТекст = НСтр("ru = 'Отображаемый результат не соответствует настройке шаблона. ИнформационныйТекст = НСтр("ru = 'Отображаемый результат не соответствует настройке шаблона.
|Нажмите «Заполнить по шаблону», чтобы увидеть как выглядит график работы с учетом изменений шаблона.'"); |Нажмите ""Заполнить по шаблону"", чтобы увидеть как выглядит график работы с учетом изменений шаблона.'");
ИнформационнаяКартинка = БиблиотекаКартинок.Предупреждение; ИнформационнаяКартинка = БиблиотекаКартинок.Предупреждение;
ДоступноЗаполнениеПоШаблону = Истина; ДоступноЗаполнениеПоШаблону = Истина;
КонецЕсли; КонецЕсли;
@@ -214,7 +214,7 @@
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Значение доступа, группа значений доступа, ключ доступа, идентификатор списка или значение для условия, которое извлекается через поле доступа (непосредственно или как группа значения доступа или через «точку» или через соединение)</value> <value>Значение доступа, группа значений доступа, ключ доступа, идентификатор списка или значение для условия, которое извлекается через поле доступа (непосредственно или как группа значения доступа или через &quot;точку&quot; или через соединение)</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -324,7 +324,7 @@
ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоНаборыДополнительныхСведений); ПараметрыФормы.Вставить("ЭтоДополнительноеСведение", ЭтоНаборыДополнительныхСведений);
ПараметрыФормы.Вставить("ТекущийНаборСвойств", ТекущийНабор); ПараметрыФормы.Вставить("ТекущийНаборСвойств", ТекущийНабор);
ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Форма.ФормаЭлемента", ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.ФормаОбъекта",
ПараметрыФормы, Элементы.Свойства); ПараметрыФормы, Элементы.Свойства);
КонецПроцедуры КонецПроцедуры
@@ -317,7 +317,7 @@
КонецПроцедуры КонецПроцедуры
// Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлемента // Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлементов
// //
// Параметры: // Параметры:
// Объект - СправочникОбъект.ВидыКонтактнойИнформации - заполняемый объект. // Объект - СправочникОбъект.ВидыКонтактнойИнформации - заполняемый объект.
@@ -399,7 +399,9 @@
// Только для внутреннего использования. // Только для внутреннего использования.
// //
// Параметры: // Параметры:
// НаборыСвойств - Соответствие // НаборыСвойств - Соответствие из КлючЗначение:
// * Ключ - Строка, СправочникСсылка.НаборыДополнительныхРеквизитовИСведений
// * Значение - см. НовыеСвойстваНабора
// Набор - СтрокаДереваЗначений: // Набор - СтрокаДереваЗначений:
// * Имя - Строка // * Имя - Строка
// * ЭтоГруппа - Булево // * ЭтоГруппа - Булево
@@ -420,13 +422,10 @@
// //
Функция СвойстваНабора(НаборыСвойств, Набор, Родитель = Неопределено, Наименования = Неопределено) Экспорт Функция СвойстваНабора(НаборыСвойств, Набор, Родитель = Неопределено, Наименования = Неопределено) Экспорт
ЗаголовокОшибки = ЗаголовокОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Ошибка в процедуре %1 НСтр("ru = 'Ошибка в процедуре %1 общего модуля %2.'"),
|общего модуля %2.'") "ПриСозданииПредопределенныхНаборовСвойств", "УправлениеСвойствамиПереопределяемый")
+ Символы.ПС + Символы.ПС + Символы.ПС;
+ Символы.ПС;
ЗаголовокОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ЗаголовокОшибки, "ПриСозданииПредопределенныхНаборовСвойств", "УправлениеСвойствамиПереопределяемый");
Если Не ЗначениеЗаполнено(Набор.Имя) Тогда Если Не ЗначениеЗаполнено(Набор.Имя) Тогда
ВызватьИсключение ЗаголовокОшибки + НСтр("ru = 'Имя набора свойств не заполнено.'"); ВызватьИсключение ЗаголовокОшибки + НСтр("ru = 'Имя набора свойств не заполнено.'");
@@ -451,7 +450,7 @@
КонецЕсли; КонецЕсли;
Если НаборыСвойств.Получить(НаборСсылка) <> Неопределено Тогда Если НаборыСвойств.Получить(НаборСсылка) <> Неопределено Тогда
СвойстваНабора = НаборыСвойств.Получить(НаборСсылка); СвойстваНабора = НаборыСвойств.Получить(НаборСсылка); // см. НовыеСвойстваНабора
ВызватьИсключение ЗаголовокОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение ЗаголовокОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Идентификатор ""%1"" набора свойств НСтр("ru = 'Идентификатор ""%1"" набора свойств
|""%2"" уже используется для набора ""%3"".'"), |""%2"" уже используется для набора ""%3"".'"),
@@ -11,7 +11,13 @@
#Область ОбработчикиСобытий #Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ) Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Наименование = ВладелецДанных + " / " + ИмяИнтернетСервиса; Наименование = ВладелецДанных + " / " + ИмяИнтернетСервиса;
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@@ -97,6 +97,10 @@
<createOnInput>Use</createOnInput> <createOnInput>Use</createOnInput>
<dataLockControlMode>Managed</dataLockControlMode> <dataLockControlMode>Managed</dataLockControlMode>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<objectPresentation>
<key>ru</key>
<value>Настройки авторизации Интернет-сервиса</value>
</objectPresentation>
<levelCount>2</levelCount> <levelCount>2</levelCount>
<foldersOnTop>true</foldersOnTop> <foldersOnTop>true</foldersOnTop>
<descriptionLength>50</descriptionLength> <descriptionLength>50</descriptionLength>
@@ -12,17 +12,12 @@
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ПараметрыФормы = Новый Структура; ПараметрыФормы = Новый Структура;
Если ТипЗнч(ПараметрыВыполненияКоманды.Источник) = Тип("ФормаКлиентскогоПриложения") Тогда Если ТипЗнч(ПараметрыВыполненияКоманды.Источник) = Тип("ФормаКлиентскогоПриложения") Тогда
Если ПараметрыВыполненияКоманды.Источник.ИмяФормы = Если ПараметрыВыполненияКоманды.Источник.ИмяФормы =
"Справочник.Пользователи.Форма.ФормаСписка" Тогда "Справочник.Пользователи.Форма.ФормаСписка" Тогда
ПараметрыФормы.Вставить("Отбор", "Пользователи"); ПараметрыФормы.Вставить("Отбор", "Пользователи");
ИначеЕсли ПараметрыВыполненияКоманды.Источник.ИмяФормы = ИначеЕсли ПараметрыВыполненияКоманды.Источник.ИмяФормы =
"Справочник.ВнешниеПользователи.Форма.ФормаСписка" Тогда "Справочник.ВнешниеПользователи.Форма.ФормаСписка" Тогда
ПараметрыФормы.Вставить("Отбор", "ВнешниеПользователи"); ПараметрыФормы.Вставить("Отбор", "ВнешниеПользователи");
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -9,7 +9,7 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// ИСПОЛЬЗОВАНИЕ ФОРМЫ // // ИСПОЛЬЗОВАНИЕ ФОРМЫ //
// //
// Описание параметров формы см. ПользователиПереопределяемый.ПриОпределенииФормыПодбораПользователей // Описание параметров формы см. ПользователиПереопределяемый.ПриОпределенииФормыВыбораПользователей
// //
#Область ОписаниеПеременных #Область ОписаниеПеременных
@@ -47,7 +47,7 @@
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда
Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Производственный календарь «%1» на %2 год'"), НСтр("ru = 'Производственный календарь ""%1"" на %2 год'"),
ПараметрыПечати.ПроизводственныйКалендарь, ПараметрыПечати.ПроизводственныйКалендарь,
Формат(ПараметрыПечати.НомерГода, "ЧГ=;")); Формат(ПараметрыПечати.НомерГода, "ЧГ=;"));
МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью");
@@ -764,7 +764,7 @@
Блокировка.Заблокировать(); Блокировка.Заблокировать();
РезультатЗапроса = Запрос.Выполнить(); РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда Если РезультатЗапроса.Пустой() Тогда
ОтменитьТранзакцию(); ЗафиксироватьТранзакцию();
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Выборка = РезультатЗапроса.Выбрать(); Выборка = РезультатЗапроса.Выбрать();
@@ -62,7 +62,7 @@
Выборка.Следующий(); Выборка.Следующий();
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Календарь уже является базовым для календаря «%1» и не может зависеть от другого.'"), НСтр("ru = 'Календарь уже является базовым для календаря ""%1"" и не может зависеть от другого.'"),
Выборка.Ссылка); Выборка.Ссылка);
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, Выборка.Ссылка, , "Объект.БазовыйКалендарь", Отказ); ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, Выборка.Ссылка, , "Объект.БазовыйКалендарь", Отказ);
@@ -375,7 +375,7 @@
Дело.Важное = Истина; Дело.Важное = Истина;
Дело.Представление = НСтр("ru = 'Профили групп доступа'"); Дело.Представление = НСтр("ru = 'Профили групп доступа'");
Дело.Количество = КоличествоНесовместимыхПрофилейГруппДоступа; Дело.Количество = КоличествоНесовместимыхПрофилейГруппДоступа;
Дело.Форма = "Справочник.ПрофилиГруппДоступа.Форма.ФормаСписка"; Дело.Форма = "Справочник.ПрофилиГруппДоступа.ФормаСписка";
Дело.ПараметрыФормы= Новый Структура("ПрофилиСРолямиПомеченнымиНаУдаление", Истина); Дело.ПараметрыФормы= Новый Структура("ПрофилиСРолямиПомеченнымиНаУдаление", Истина);
Дело.Владелец = ИдентификаторПрофиля; Дело.Владелец = ИдентификаторПрофиля;
@@ -2349,11 +2349,6 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Клиент, Сервер // Клиент, Сервер
&НаКлиентеНаСервереБезКонтекста
Процедура ПереключитьСтраницу(Элементы, ИмяНабораСтраниц, СуффиксТекущейСтраницы)
Элементы[ИмяНабораСтраниц].ТекущаяСтраница = Элементы[ИмяНабораСтраниц + СуффиксТекущейСтраницы];
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста &НаКлиентеНаСервереБезКонтекста
Функция ПарольСкрыт() Функция ПарольСкрыт()
Возврат "********"; Возврат "********";
@@ -2431,7 +2426,8 @@
// Видимость & Доступность // Видимость & Доступность
Элементы.Родитель.Доступность = Не Объект.Личная; Элементы.Родитель.Доступность = Не Объект.Личная;
ПереключитьСтраницу(Элементы, "ВидыРассылки", ?(Объект.Личная, "Личная", "ДляПолучателей")); Элементы.ВидыРассылки.ТекущаяСтраница = ?(Объект.Личная, Элементы.ВидыРассылкиЛичная,
Элементы.ВидыРассылкиДляПолучателей);
Элементы.ДругиеСпособыДоставки.Видимость = РассылкаОбщая; Элементы.ДругиеСпособыДоставки.Видимость = РассылкаОбщая;
Элементы.ИспользоватьЭлектроннуюПочту.Видимость = РассылкаОбщая; Элементы.ИспользоватьЭлектроннуюПочту.Видимость = РассылкаОбщая;
@@ -2532,8 +2528,11 @@
Элементы.СтраницаДоставка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Доставка (%1)'"), СпособыДоставки); Элементы.СтраницаДоставка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Доставка (%1)'"), СпособыДоставки);
КонецЕсли; КонецЕсли;
Если Изменения = "" Или Изменения = "ПисьмоВФорматеHTML" Тогда Если ПустаяСтрока(Изменения) Или СтрСравнить(Изменения, "ПисьмоВФорматеHTML") = 0 Тогда
ПереключитьСтраницу(Элементы, "СтраницыТекстПисьма", ?(Объект.ПисьмоВФорматеHTML, "HTML", "ОбычныйТекст"));
Элементы.СтраницыТекстПисьма.ТекущаяСтраница = ?(Объект.ПисьмоВФорматеHTML,
Элементы.СтраницыТекстПисьмаHTML, Элементы.СтраницыТекстПисьмаОбычныйТекст);
КонецЕсли; КонецЕсли;
Если Изменения = "" Или Изменения = "Архивировать" Тогда Если Изменения = "" Или Изменения = "Архивировать" Тогда
@@ -2924,15 +2923,10 @@
&НаСервере &НаСервере
Процедура ЗаполнитьРасписаниеПоВарианту(Вариант, ОбновитьВидимость = Ложь) Процедура ЗаполнитьРасписаниеПоВарианту(Вариант, ОбновитьВидимость = Ложь)
// Список вариантов - см. РассылкаОтчетовКлиентСервер.СписокВариантовЗаполненияРасписаний().
Расписание = Новый РасписаниеРегламентногоЗадания; Расписание = Новый РасписаниеРегламентногоЗадания;
Расписание.ВремяНачала = '00010101073000'; // в 7:30 утра
// в 7:30 утра Расписание.ПериодПовтораДней = 1; // каждый день
Расписание.ВремяНачала = '00010101073000';
// каждый день
Расписание.ПериодПовтораДней = 1;
// по дням недели // по дням недели
ДеньНеделиМин = 1; ДеньНеделиМин = 1;
@@ -192,7 +192,7 @@
КонецПроцедуры КонецПроцедуры
// Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлемента // Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлементов
// //
// Параметры: // Параметры:
// Объект - СправочникОбъект.РолиИсполнителей - заполняемый объект. // Объект - СправочникОбъект.РолиИсполнителей - заполняемый объект.
@@ -70,8 +70,10 @@
&НаКлиенте &НаКлиенте
Процедура Перевыпустить(Команда) Процедура Перевыпустить(Команда)
ПараметрыФормы = Новый Структура("СертификатОснование", Сертификат); ПараметрыСоздания = Новый Структура;
ОткрытьФорму("Обработка.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Форма.Форма", ПараметрыФормы); ПараметрыСоздания.Вставить("СоздатьЗаявление", Истина);
ПараметрыСоздания.Вставить("СертификатОснование", Сертификат);
ЭлектроннаяПодписьСлужебныйКлиент.ДобавитьСертификат(ПараметрыСоздания);
КонецПроцедуры КонецПроцедуры
@@ -83,7 +85,7 @@
Процедура ОткрытьСертификатПослеВыбораИзСписка(Результат, ДополнительныеПараметры) Экспорт Процедура ОткрытьСертификатПослеВыбораИзСписка(Результат, ДополнительныеПараметры) Экспорт
Если Результат <> Неопределено Тогда Если Результат <> Неопределено Тогда
ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.Форма.ФормаЭлемента", ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.ФормаОбъекта",
Новый Структура("Ключ", Результат.Значение)); Новый Структура("Ключ", Результат.Значение));
КонецЕсли; КонецЕсли;
@@ -520,7 +520,9 @@
Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных,
Новый Структура("УчетнаяЗапись, ДанныеПодтверждения", ЭтотОбъект.НастройкиПользователя, ЭтотОбъект.ДанныеПодтверждения)); Новый Структура("УчетнаяЗапись, ДанныеПодтверждения",
ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьДанныеОблачнойПодписи(ЭтотОбъект, "НастройкиПользователя"),
ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьДанныеОблачнойПодписи(ЭтотОбъект, "ДанныеПодтверждения")));
Иначе Иначе
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных,
Новый Структура("УчетнаяЗапись, ДанныеПодтверждения")); Новый Структура("УчетнаяЗапись, ДанныеПодтверждения"));
@@ -1327,8 +1327,10 @@
ИначеЕсли Результат.Выполнено И Результат.Результат Тогда ИначеЕсли Результат.Выполнено И Результат.Результат Тогда
ОписаниеОшибки = ""; ОписаниеОшибки = "";
Иначе Иначе
ОписаниеОшибки = Результат.СтатусОшибки.ИсходныйТекст; ОписаниеОшибки = ЭлектроннаяПодписьСлужебныйКлиент.ТекстОшибкиОблачнаяПодпись("ПроверкаСертификата",
Результат, Истина);
КонецЕсли; КонецЕсли;
УстановитьЭлемент(ЭтотОбъект, "ДанныеСертификата", Истина, ОписаниеОшибки, Истина, ОбъединятьРезультаты); УстановитьЭлемент(ЭтотОбъект, "ДанныеСертификата", Истина, ОписаниеОшибки, Истина, ОбъединятьРезультаты);
Если Контекст.ПроверкаВСервисеВместоПроверкиНаСервере Тогда Если Контекст.ПроверкаВСервисеВместоПроверкиНаСервере Тогда
@@ -1453,7 +1455,8 @@
ОписаниеОшибки = НСтр("ru = 'Форма проверки закрыта.'"); ОписаниеОшибки = НСтр("ru = 'Форма проверки закрыта.'");
ИначеЕсли РезультатВызова <> Неопределено Тогда ИначеЕсли РезультатВызова <> Неопределено Тогда
Если Не РезультатВызова.Выполнено Тогда Если Не РезультатВызова.Выполнено Тогда
ОписаниеОшибки = РезультатВызова.СтатусОшибки.ИсходныйТекст; ОписаниеОшибки = ЭлектроннаяПодписьСлужебныйКлиент.ТекстОшибкиОблачнаяПодпись(
"ПроверкаПодписи", РезультатВызова, Истина);
Иначе Иначе
ОписаниеОшибки = ""; ОписаниеОшибки = "";
КонецЕсли; КонецЕсли;
@@ -1913,15 +1916,19 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
Иначе Иначе
ГруппаОшибка = Форма.Элементы[НачалоЭлемента + ?(НаСервере, "ОшибкаСервер", "ОшибкаКлиент")];
ЭлементРешение = Форма.Элементы[НачалоЭлемента ЭлементРешение = Форма.Элементы[НачалоЭлемента
+ ?(НаСервере, "РешениеСерверНадпись", "РешениеКлиентНадпись")]; + ?(НаСервере, "РешениеСерверНадпись", "РешениеКлиентНадпись")];
ЗначениеПроверки = ?(ОписаниеОшибки = Неопределено, Неопределено, Истина); ЗначениеПроверки = ?(ОписаниеОшибки = Неопределено, Неопределено, Истина);
Если (ОбъединятьРезультаты = "ОбъединятьПоИ" Если (ОбъединятьРезультаты = "ОбъединятьПоИ"
Или ОбъединятьРезультаты = "ОбъединятьПоИли") Тогда Или ОбъединятьРезультаты = "ОбъединятьПоИли") Тогда
Если ЗначениеПроверки = Неопределено Если ЗначениеПроверки = Неопределено
И ЗначениеПроверкиВторогоКонтекста = Неопределено Тогда И ЗначениеПроверкиВторогоКонтекста = Неопределено Тогда
ГруппаОшибка.Видимость = Ложь;
ЭлементРешение.Видимость = Ложь; ЭлементРешение.Видимость = Ложь;
ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаНеВыполнялась; ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаНеВыполнялась;
ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка не выполнялась.'"); ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка не выполнялась.'");
@@ -1940,6 +1947,7 @@
ИначеЕсли ЗначениеПроверки <> Неопределено ИначеЕсли ЗначениеПроверки <> Неопределено
И ЗначениеПроверкиВторогоКонтекста = Неопределено Тогда И ЗначениеПроверкиВторогоКонтекста = Неопределено Тогда
ГруппаОшибка.Видимость = Ложь;
ЭлементРешение.Видимость = Ложь; ЭлементРешение.Видимость = Ложь;
ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаУспех; ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаУспех;
ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка выполнена успешно.'"); ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка выполнена успешно.'");
@@ -1952,6 +1960,7 @@
ЗначениеПроверки Или ЗначениеПроверкиВторогоКонтекста); ЗначениеПроверки Или ЗначениеПроверкиВторогоКонтекста);
Если РезультатПроверки Тогда Если РезультатПроверки Тогда
ГруппаОшибка.Видимость = Ложь;
ЭлементРешение.Видимость = Ложь; ЭлементРешение.Видимость = Ложь;
ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаУспех; ЭлементКартинка.Картинка = БиблиотекаКартинок.ПроверкаСертификатаУспех;
ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка выполнена успешно.'"); ЭлементКартинка.Подсказка = НСтр("ru = 'Проверка выполнена успешно.'");
@@ -1972,6 +1981,7 @@
Или Не ПроверкиВторогоКонтекста.Свойство(НачалоЭлемента + "Ошибка") Или Не ПроверкиВторогоКонтекста.Свойство(НачалоЭлемента + "Ошибка")
Или ПустаяСтрока(ПроверкиВторогоКонтекста[НачалоЭлемента + "Ошибка"]) Тогда Или ПустаяСтрока(ПроверкиВторогоКонтекста[НачалоЭлемента + "Ошибка"]) Тогда
ГруппаОшибка.Видимость = Ложь;
ЭлементРешение.Видимость = Ложь; ЭлементРешение.Видимость = Ложь;
ЭлементНадпись.Гиперссылка = Ложь; ЭлементНадпись.Гиперссылка = Ложь;
ЭлементНадпись.Заголовок = ЗаголовокЭлемента( ЭлементНадпись.Заголовок = ЗаголовокЭлемента(
@@ -535,7 +535,9 @@
Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных,
Новый Структура("УчетнаяЗапись, ДанныеПодтверждения", ЭтотОбъект.НастройкиПользователя, ЭтотОбъект.ДанныеПодтверждения)); Новый Структура("УчетнаяЗапись, ДанныеПодтверждения",
ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьДанныеОблачнойПодписи(ЭтотОбъект, "НастройкиПользователя"),
ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьДанныеОблачнойПодписи(ЭтотОбъект, "ДанныеПодтверждения")));
Иначе Иначе
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных,
Новый Структура("УчетнаяЗапись, ДанныеПодтверждения")); Новый Структура("УчетнаяЗапись, ДанныеПодтверждения"));
@@ -519,7 +519,7 @@
Процедура ОткрытьСертификатПослеВыбораИзСписка(Результат, ДополнительныеПараметры) Экспорт Процедура ОткрытьСертификатПослеВыбораИзСписка(Результат, ДополнительныеПараметры) Экспорт
Если Результат <> Неопределено Тогда Если Результат <> Неопределено Тогда
ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.Форма.ФормаЭлемента", ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.ФормаОбъекта",
Новый Структура("Ключ", Результат.Значение)); Новый Структура("Ключ", Результат.Значение));
КонецЕсли; КонецЕсли;
@@ -878,7 +878,8 @@
Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда Если ЭлектроннаяПодписьСлужебныйКлиент.ЭтоОперацияОблачнойПодписи(ЭтотОбъект) Тогда
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных,
Новый Структура("УчетнаяЗапись", ЭтотОбъект.НастройкиПользователя)); Новый Структура("УчетнаяЗапись",
ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьДанныеОблачнойПодписи(ЭтотОбъект, "НастройкиПользователя")));
Иначе Иначе
ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, Новый Структура("УчетнаяЗапись")); ЭлектроннаяПодписьСлужебныйКлиент.УстановитьСвойстваОблачнойПодписи(ОписаниеДанных, Новый Структура("УчетнаяЗапись"));
КонецЕсли; КонецЕсли;
@@ -113,9 +113,14 @@
Если ЭлектроннаяПодпись.ОбщиеНастройки().ЗаявлениеНаВыпускСертификатаДоступно Тогда Если ЭлектроннаяПодпись.ОбщиеНастройки().ЗаявлениеНаВыпускСертификатаДоступно Тогда
МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата = ОбщегоНазначения.ОбщийМодуль(
"Обработки.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеЗаявления", Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеЗаявления",
"СертификатыКлючейЭлектроннойПодписиИШифрования.УдалитьСостояниеЗаявления <> &ПустаяСсылка"); "СертификатыКлючейЭлектроннойПодписиИШифрования.УдалитьСостояниеЗаявления <> &ПустаяСсылка");
Запрос.УстановитьПараметр("ПустаяСсылка", Перечисления.СостоянияЗаявленияНаВыпускСертификата.ПустаяСсылка()); Запрос.УстановитьПараметр("ПустаяСсылка",
МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.СостоянияЗаявленияПустаяСсылка());
Иначе Иначе
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИЛИ &УсловиеЗаявления", ""); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИЛИ &УсловиеЗаявления", "");
КонецЕсли; КонецЕсли;
@@ -3739,7 +3739,7 @@ vasyapupkin@example.com завершена.</value>
</edit> </edit>
</attributes> </attributes>
<attributes> <attributes>
<name>НастройкиАвторизации</name> <name>НастройкиАвторизацииНаПочтовомСервере</name>
<id>55</id> <id>55</id>
<valueType/> <valueType/>
<view> <view>
@@ -70,7 +70,9 @@
СпособАутентификации = "OAuth"; СпособАутентификации = "OAuth";
Элементы.Пароль.Доступность = Ложь; Элементы.Пароль.Доступность = Ложь;
Если ТолькоАвторизация Тогда Если ТолькоАвторизация Тогда
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере(); НастройкиАвторизацииНаПочтовомСервере = НастройкиАвторизацииНаПочтовомСервере();
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если ЗначениеЗаполнено(НастройкиАвторизации) И ЗначениеЗаполнено(НастройкиАвторизации.ИдентификаторПриложения) Тогда Если ЗначениеЗаполнено(НастройкиАвторизации) И ЗначениеЗаполнено(НастройкиАвторизации.ИдентификаторПриложения) Тогда
ИдентификаторПриложения = НастройкиАвторизации.ИдентификаторПриложения; ИдентификаторПриложения = НастройкиАвторизации.ИдентификаторПриложения;
АдресПеренаправления = НастройкиАвторизации.АдресПеренаправления; АдресПеренаправления = НастройкиАвторизации.АдресПеренаправления;
@@ -83,6 +85,7 @@
Если ЭтоВебКлиент() Тогда Если ЭтоВебКлиент() Тогда
Элементы.ВариантыАвторизации.ТекущаяСтраница = Элементы.БраузерОперационнойСистемы; Элементы.ВариантыАвторизации.ТекущаяСтраница = Элементы.БраузерОперационнойСистемы;
ТекущийЭлемент = Элементы.ВебСтраница;
Иначе Иначе
Элементы.ВариантыАвторизации.ТекущаяСтраница = Элементы.ВстроенныйБраузер; Элементы.ВариантыАвторизации.ТекущаяСтраница = Элементы.ВстроенныйБраузер;
КонецЕсли; КонецЕсли;
@@ -297,6 +300,7 @@
&НаКлиенте &НаКлиенте
Процедура ПерейтиНаСледующуюСтраницу(Команда = Неопределено) Процедура ПерейтиНаСледующуюСтраницу(Команда = Неопределено)
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Отказ = Ложь; Отказ = Ложь;
ТекущаяСтраница = Элементы.Страницы.ТекущаяСтраница; ТекущаяСтраница = Элементы.Страницы.ТекущаяСтраница;
@@ -310,7 +314,9 @@
Если Не Отказ И СпособАутентификации = "OAuth" Тогда Если Не Отказ И СпособАутентификации = "OAuth" Тогда
ПроверкаЗавершиласьСОшибками = Ложь; ПроверкаЗавершиласьСОшибками = Ложь;
СледующаяСтраница = Элементы.НастройкиАвторизацииПриложения; СледующаяСтраница = Элементы.НастройкиАвторизацииПриложения;
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере();
НастройкиАвторизацииНаПочтовомСервере = НастройкиАвторизацииНаПочтовомСервере();
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если ЗначениеЗаполнено(НастройкиАвторизации) Тогда Если ЗначениеЗаполнено(НастройкиАвторизации) Тогда
Если ЗначениеЗаполнено(НастройкиАвторизации.АдресАвторизации) Тогда Если ЗначениеЗаполнено(НастройкиАвторизации.АдресАвторизации) Тогда
@@ -432,6 +438,8 @@
&НаКлиенте &НаКлиенте
Процедура УстановитьТекстыПоясненийПоРегистрацииПриложения() Процедура УстановитьТекстыПоясненийПоРегистрацииПриложения()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если Не ЗначениеЗаполнено(НастройкиАвторизации) Тогда Если Не ЗначениеЗаполнено(НастройкиАвторизации) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -633,6 +641,11 @@
|%1 успешно завершена.'"), АдресЭлектроннойПочты); |%1 успешно завершена.'"), АдресЭлектроннойПочты);
КонецЕсли; КонецЕсли;
Если ТекущаяСтраница = Элементы.Авторизация
И Элементы.ВариантыАвторизации.ТекущаяСтраница = Элементы.ВстроенныйБраузер Тогда
Активизировать();
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
@@ -743,6 +756,8 @@
&НаСервере &НаСервере
Процедура СоздатьУчетнуюЗапись() Процедура СоздатьУчетнуюЗапись()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
СистемнаяУчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.СистемнаяУчетнаяЗаписьЭлектроннойПочты; СистемнаяУчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.СистемнаяУчетнаяЗаписьЭлектроннойПочты;
НастроитьСистемнуюУчетнуюЗапись = КонтекстныйРежим И ВидУчетнойЗаписи = "Общая" НастроитьСистемнуюУчетнуюЗапись = КонтекстныйРежим И ВидУчетнойЗаписи = "Общая"
И Не РаботаСПочтовымиСообщениями.УчетнаяЗаписьНастроена(СистемнаяУчетнаяЗапись) И Не РаботаСПочтовымиСообщениями.УчетнаяЗаписьНастроена(СистемнаяУчетнаяЗапись)
@@ -820,6 +835,7 @@
&НаСервере &НаСервере
Процедура ЗаписатьНастройкиАвторизации() Процедура ЗаписатьНастройкиАвторизации()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
НастройкиАвторизации.ПарольПриложения = ПарольПриложения; НастройкиАвторизации.ПарольПриложения = ПарольПриложения;
НастройкиАвторизации.ИдентификаторПриложения = ИдентификаторПриложения; НастройкиАвторизации.ИдентификаторПриложения = ИдентификаторПриложения;
НастройкиАвторизации.АдресПеренаправления = АдресПеренаправления; НастройкиАвторизации.АдресПеренаправления = АдресПеренаправления;
@@ -968,7 +984,7 @@
КонецЕсли; КонецЕсли;
Если ЭтоВебКлиент() Тогда Если ЭтоВебКлиент() Тогда
ПерейтиПоНавигационнойСсылке(АдресПерехода); ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(АдресПерехода);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -988,6 +1004,7 @@
&НаКлиенте &НаКлиенте
Процедура АвторизоватьсяНаПочтовомСервере() Процедура АвторизоватьсяНаПочтовомСервере()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
СтрокаЗапросаАвторизации = СтрокаЗапросаАвторизации(); СтрокаЗапросаАвторизации = СтрокаЗапросаАвторизации();
Если ЭтоВебКлиент() Тогда Если ЭтоВебКлиент() Тогда
@@ -1019,6 +1036,7 @@
&НаСервере &НаСервере
Функция СтрокаЗапросаАвторизации() Функция СтрокаЗапросаАвторизации()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(НастройкиАвторизации.АдресАвторизации); СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(НастройкиАвторизации.АдресАвторизации);
АдресСервера = СтруктураURI.Хост; АдресСервера = СтруктураURI.Хост;
АдресРесурса = "/" + СтруктураURI.ПутьНаСервере; АдресРесурса = "/" + СтруктураURI.ПутьНаСервере;
@@ -1043,6 +1061,8 @@
&НаСервере &НаСервере
Функция ПараметрыЗапросаАвторизации() Функция ПараметрыЗапросаАвторизации()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
ПараметрыЗапроса = Новый Структура; ПараметрыЗапроса = Новый Структура;
ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения); ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения);
ПараметрыЗапроса.Вставить("response_type", "code"); ПараметрыЗапроса.Вставить("response_type", "code");
@@ -1087,6 +1107,7 @@
Процедура ВебСтраницаДокументСформирован(Элемент) Процедура ВебСтраницаДокументСформирован(Элемент)
#Если Не ВебКлиент Тогда #Если Не ВебКлиент Тогда
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если СтрНачинаетсяС(НРег(Элемент.Документ.URL), НРег(АдресПеренаправления)) Тогда Если СтрНачинаетсяС(НРег(Элемент.Документ.URL), НРег(АдресПеренаправления)) Тогда
ПриПолученииОтветаПочтовогоСервера(Элемент.Документ.URL, НастройкиАвторизации.АдресПолученияКлюча); ПриПолученииОтветаПочтовогоСервера(Элемент.Документ.URL, НастройкиАвторизации.АдресПолученияКлюча);
ПерейтиНаСледующуюСтраницу(); ПерейтиНаСледующуюСтраницу();
@@ -1136,6 +1157,8 @@
ПараметрыЗапроса = Новый Структура; ПараметрыЗапроса = Новый Структура;
ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения); ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения);
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если ЗначениеЗаполнено(НастройкиАвторизации["ЗапрашиваемыеРазрешения"]) Тогда Если ЗначениеЗаполнено(НастройкиАвторизации["ЗапрашиваемыеРазрешения"]) Тогда
ПараметрыЗапроса.Вставить("scope", НастройкиАвторизации["ЗапрашиваемыеРазрешения"]); ПараметрыЗапроса.Вставить("scope", НастройкиАвторизации["ЗапрашиваемыеРазрешения"]);
КонецЕсли; КонецЕсли;
@@ -1287,6 +1310,8 @@
ПараметрыЗапроса = Новый Структура; ПараметрыЗапроса = Новый Структура;
ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения); ПараметрыЗапроса.Вставить("client_id", ИдентификаторПриложения);
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если ЗначениеЗаполнено(НастройкиАвторизации["ЗапрашиваемыеРазрешения"]) Тогда Если ЗначениеЗаполнено(НастройкиАвторизации["ЗапрашиваемыеРазрешения"]) Тогда
ПараметрыЗапроса.Вставить("scope", НастройкиАвторизации["ЗапрашиваемыеРазрешения"]); ПараметрыЗапроса.Вставить("scope", НастройкиАвторизации["ЗапрашиваемыеРазрешения"]);
КонецЕсли; КонецЕсли;
@@ -1367,6 +1392,8 @@
&НаСервере &НаСервере
Функция ПолучитьКлючДоступаУстройства() Функция ПолучитьКлючДоступаУстройства()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(НастройкиАвторизации.АдресПолученияКлюча); СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(НастройкиАвторизации.АдресПолученияКлюча);
АдресСервера = СтруктураURI.Хост; АдресСервера = СтруктураURI.Хост;
АдресРесурса = "/" + СтруктураURI.ПутьНаСервере; АдресРесурса = "/" + СтруктураURI.ПутьНаСервере;
@@ -1460,8 +1487,10 @@
&НаКлиенте &НаКлиенте
Функция ДоступнаАвторизацияПоКоду() Функция ДоступнаАвторизацияПоКоду()
Возврат ЗначениеЗаполнено(НастройкиАвторизации) И НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
(ЗначениеЗаполнено(НастройкиАвторизации.АдресРегистрацииУстройства)
Возврат ЗначениеЗаполнено(НастройкиАвторизации)
И (ЗначениеЗаполнено(НастройкиАвторизации.АдресРегистрацииУстройства)
Или ЗначениеЗаполнено(НастройкиАвторизации.АдресПеренаправленияВебКлиент)); Или ЗначениеЗаполнено(НастройкиАвторизации.АдресПеренаправленияВебКлиент));
КонецФункции КонецФункции
@@ -1469,6 +1498,8 @@
&НаКлиенте &НаКлиенте
Процедура НастроитьЭлементыТекущейСтраницыПриОткрытии() Процедура НастроитьЭлементыТекущейСтраницыПриОткрытии()
НастройкиАвторизации = НастройкиАвторизацииНаПочтовомСервере; // см. НастройкиАвторизацииНаПочтовомСервере
Если ТолькоАвторизация Тогда Если ТолькоАвторизация Тогда
Если Не ЗначениеЗаполнено(НастройкиАвторизации) Тогда Если Не ЗначениеЗаполнено(НастройкиАвторизации) Тогда
Закрыть(НСтр("ru = 'Не найдены настройки авторизации для указанного адреса электронной почты. Закрыть(НСтр("ru = 'Не найдены настройки авторизации для указанного адреса электронной почты.
@@ -743,7 +743,7 @@
</userVisible> </userVisible>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Атата</value> <value>Выбор способа аутентификации</value>
</title> </title>
<extendedTooltip> <extendedTooltip>
<name>ВыборСпособаАутентификацииРасширеннаяПодсказка</name> <name>ВыборСпособаАутентификацииРасширеннаяПодсказка</name>
@@ -997,7 +997,7 @@
// outlook.com // outlook.com
Если ИмяСервераВУчетнойЗаписи = "outlook.com" Тогда Если ИмяСервераВУчетнойЗаписи = "outlook.com" Тогда
ВариантНастройки = Результат.Добавить(); ВариантНастройки = Результат.Добавить();
ВариантНастройки.СерверВходящейПочты = "imap-mail.outlook.com"; ВариантНастройки.СерверВходящейПочты = "outlook.office365.com";
ВариантНастройки.ПортСервераВходящейПочты = 993; ВариантНастройки.ПортСервераВходящейПочты = 993;
ВариантНастройки.ИспользоватьЗащищенноеСоединениеДляВходящейПочты = Истина; ВариантНастройки.ИспользоватьЗащищенноеСоединениеДляВходящейПочты = Истина;
Возврат Результат; Возврат Результат;
@@ -1615,6 +1615,32 @@
<contextMenu> <contextMenu>
<name>СписокКонтекстноеМеню</name> <name>СписокКонтекстноеМеню</name>
<id>4</id> <id>4</id>
<items xsi:type="form:Button">
<name>СписокКонтекстноеМенюСравнить</name>
<id>446</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>СписокКонтекстноеМенюСравнитьРасширеннаяПодсказка</name>
<id>447</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Command.Сравнить</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
</items>
<items xsi:type="form:Button"> <items xsi:type="form:Button">
<name>СписокКонтекстноеМенюСоздать</name> <name>СписокКонтекстноеМенюСоздать</name>
<id>96</id> <id>96</id>
@@ -576,7 +576,7 @@
Отказ = Истина; Отказ = Истина;
ПараметрыОткрытияФормы = Новый Структура("Ключ, ПараметрыОтправки", Элемент.ТекущаяСтрока, ПараметрыОтправки); ПараметрыОткрытияФормы = Новый Структура("Ключ, ПараметрыОтправки", Элемент.ТекущаяСтрока, ПараметрыОтправки);
ОткрытьФорму("Справочник.Файлы.Форма.ФормаЭлемента", ПараметрыОткрытияФормы); ОткрытьФорму("Справочник.Файлы.ФормаОбъекта", ПараметрыОткрытияФормы);
КонецПроцедуры КонецПроцедуры
@@ -1301,7 +1301,7 @@
ТекущиеДанные = Элементы.Список.ТекущиеДанные; ТекущиеДанные = Элементы.Список.ТекущиеДанные;
Если ТекущиеДанные <> Неопределено Если ТекущиеДанные <> Неопределено
И ТипЗнч(Элементы.Список.ТекущаяСтрока) <> Тип("СтрокаГруппировкиДинамическогоСписка") Тогда И ТипЗнч(Элементы.Список.ТекущаяСтрока) <> Тип("СтрокаГруппировкиДинамическогоСписка") Тогда
УстановитьДоступностьКоманд(ТекущиеДанные); УстановитьДоступностьКоманд(ТекущиеДанные, Элементы.Список.ВыделенныеСтроки.Количество() > 1);
Иначе Иначе
СделатьКомандыНедоступными(); СделатьКомандыНедоступными();
КонецЕсли; КонецЕсли;
@@ -1368,10 +1368,12 @@
Элементы.ФормаУдалить.Доступность = Ложь; Элементы.ФормаУдалить.Доступность = Ложь;
Элементы.СписокКонтекстноеМенюУдалить.Доступность = Ложь; Элементы.СписокКонтекстноеМенюУдалить.Доступность = Ложь;
Элементы.СписокКонтекстноеМенюСравнить.Видимость = Ложь;
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура УстановитьДоступностьКоманд(ДанныеКоманд) Процедура УстановитьДоступностьКоманд(Знач ДанныеКоманд, Знач ВыделеноНесколькоСтрок)
Служебный = ДанныеКоманд.Служебный; Служебный = ДанныеКоманд.Служебный;
Зашифрован = ДанныеКоманд.Зашифрован; Зашифрован = ДанныеКоманд.Зашифрован;
@@ -1447,6 +1449,8 @@
И Не ЗначениеЗаполнено(Редактирует) И Не ЗначениеЗаполнено(Редактирует)
И Не ФайлыРедактируютсяВОблачномСервисе; И Не ФайлыРедактируютсяВОблачномСервисе;
Элементы.СписокКонтекстноеМенюСравнить.Видимость = ВыделеноНесколькоСтрок;
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@@ -4828,7 +4828,6 @@
<name>ПродлитьДействиеПодписей</name> <name>ПродлитьДействиеПодписей</name>
</handler> </handler>
</action> </action>
<modifiesStoredData>true</modifiesStoredData>
<currentRowUse>Auto</currentRowUse> <currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse> <selectedRowsUse>Auto</selectedRowsUse>
</formCommands> </formCommands>
@@ -361,31 +361,6 @@
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory> <dataHistory>Use</dataHistory>
</attributes> </attributes>
<attributes uuid="0526492c-be48-4c84-8d68-19fa1c7e9d6e">
<name>УдалитьПолноеНаименование</name>
<synonym>
<key>ru</key>
<value>(не используется) Полное наименование</value>
</synonym>
<type>
<types>String</types>
<stringQualifiers>
<length>256</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>Имя файла (без расширения) длиной до 256 символов</value>
</toolTip>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue">
<value> </value>
</fillValue>
<fullTextSearch>Use</fullTextSearch>
<use>ForFolderAndItem</use>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="54ecaf7b-9bc5-483c-96e1-270bcd323590"> <attributes uuid="54ecaf7b-9bc5-483c-96e1-270bcd323590">
<name>Редактирует</name> <name>Редактирует</name>
<synonym> <synonym>
@@ -473,8 +473,7 @@
ПараметрыОтбора = Новый Структура; ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Владелец", ЭтотОбъект[Элемент.СвязьПоТипу.ПутьКДанным]); ПараметрыОтбора.Вставить("Владелец", ЭтотОбъект[Элемент.СвязьПоТипу.ПутьКДанным]);
ПараметрыОтбора.Вставить("ПометкаУдаления", Ложь); ПараметрыОтбора.Вставить("ПометкаУдаления", Ложь);
ОткрытьФорму("Справочник.ВариантыОтветовАнкет.ФормаВыбора", Новый Структура("Отбор",ПараметрыОтбора),Элемент);
ОткрытьФорму("Справочник.ВариантыОтветовАнкет.Форма.ФормаВыбора",Новый Структура("Отбор",ПараметрыОтбора),Элемент);
КонецЕсли; КонецЕсли;
@@ -20,7 +20,7 @@
Отказ = Истина; Отказ = Истина;
НовыйЭлементСсылка = ВыполнитьКопированиеЭлемента(ТекущиеДанные.Ссылка); НовыйЭлементСсылка = ВыполнитьКопированиеЭлемента(ТекущиеДанные.Ссылка);
Если НовыйЭлементСсылка <> Неопределено Тогда Если НовыйЭлементСсылка <> Неопределено Тогда
ОткрытьФорму("Справочник.ШаблоныАнкет.Форма.ФормаЭлемента",Новый Структура("Ключ",НовыйЭлементСсылка)); ОткрытьФорму("Справочник.ШаблоныАнкет.ФормаОбъекта", Новый Структура("Ключ", НовыйЭлементСсылка));
Элементы.Список.Обновить(); Элементы.Список.Обновить();
КонецЕсли; КонецЕсли;
@@ -158,6 +158,7 @@
</dataPath> </dataPath>
<defaultItem>true</defaultItem> <defaultItem>true</defaultItem>
<titleLocation>None</titleLocation> <titleLocation>None</titleLocation>
<excludedCommands>Copy</excludedCommands>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Наименование</name> <name>Наименование</name>
<id>16</id> <id>16</id>
@@ -275,6 +276,10 @@
<id>5</id> <id>5</id>
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
</autoCommandBar> </autoCommandBar>
<handlers>
<event>BeforeAddRow</event>
<name>СписокПередНачаломДобавления</name>
</handlers>
<handlers> <handlers>
<event>OnActivateRow</event> <event>OnActivateRow</event>
<name>СписокПриАктивизацииСтроки</name> <name>СписокПриАктивизацииСтроки</name>
@@ -70,6 +70,14 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, ЭтоГруппа, Параметр)
Отказ = Истина;
ДобавитьЯзык();
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
@@ -77,8 +85,7 @@
&НаКлиенте &НаКлиенте
Процедура Создать(Команда) Процедура Создать(Команда)
ОписаниеОповещения = Новый ОписаниеОповещения("ПриВыбореЯзыка", ЭтотОбъект); ДобавитьЯзык();
ОткрытьФорму("Справочник.ЯзыкиПечатныхФорм.Форма.ПодборЯзыкаИзСпискаДоступных", , ЭтотОбъект, , , , ОписаниеОповещения);
КонецПроцедуры КонецПроцедуры
@@ -169,4 +176,12 @@
КонецФункции КонецФункции
&НаКлиенте
Процедура ДобавитьЯзык()
ОписаниеОповещения = Новый ОписаниеОповещения("ПриВыбореЯзыка", ЭтотОбъект);
ОткрытьФорму("Справочник.ЯзыкиПечатныхФорм.Форма.ПодборЯзыкаИзСпискаДоступных", , ЭтотОбъект, , , , ОписаниеОповещения);
КонецПроцедуры
#КонецОбласти #КонецОбласти
@@ -76,6 +76,7 @@
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>InputField</type> <type>InputField</type>
<readOnly>true</readOnly>
<warningOnEditRepresentation>Show</warningOnEditRepresentation> <warningOnEditRepresentation>Show</warningOnEditRepresentation>
<warningOnEdit> <warningOnEdit>
<key>ru</key> <key>ru</key>
@@ -92,6 +92,7 @@
<value>Код локализации</value> <value>Код локализации</value>
</synonym> </synonym>
<fillValue xsi:type="core:UndefinedValue"/> <fillValue xsi:type="core:UndefinedValue"/>
<fillChecking>ShowError</fillChecking>
<fullTextSearch>Use</fullTextSearch> <fullTextSearch>Use</fullTextSearch>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -403,7 +403,7 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ОткрытьФорму("Справочник.ВариантыОтветовАнкет.Форма.ФормаЭлемента",СтруктураПараметров,Элемент); ОткрытьФорму("Справочник.ВариантыОтветовАнкет.ФормаОбъекта", СтруктураПараметров,Элемент);
КонецПроцедуры КонецПроцедуры
@@ -4125,8 +4125,8 @@
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Требуется для программного обращения к дополнительным реквизитам или сведениям. <value>Требуется для программного обращения к дополнительным реквизитам или сведениям.
Имя должно состоять из одного слова, начинаться с буквы и не содержать специальных символов, кроме «_». Имя должно состоять из одного слова, начинаться с буквы и не содержать специальных символов, кроме &quot;_&quot;.
Если не указано - заполняется автоматически при записи.</value> Если не указано, то заполняется автоматически при записи.</value>
</toolTip> </toolTip>
<toolTipRepresentation>Button</toolTipRepresentation> <toolTipRepresentation>Button</toolTipRepresentation>
<extendedTooltip> <extendedTooltip>
@@ -2643,7 +2643,7 @@
Или ИмяНачинаетсяСЦифры(Имя) Или ИмяНачинаетсяСЦифры(Имя)
Или СтрРазделить(НовоеИмя, " ", Истина).Количество() > 1 Тогда Или СтрРазделить(НовоеИмя, " ", Истина).Количество() > 1 Тогда
ТекстВопроса = НСтр("ru = 'Имя (группа Для разработчиков) должно состоять из одного слова, начинаться с буквы и не содержать специальных символов, кроме «_».'"); ТекстВопроса = НСтр("ru = 'Имя (группа Для разработчиков) должно состоять из одного слова, начинаться с буквы и не содержать специальных символов, кроме ""_"".'");
Возврат ТекстВопроса; Возврат ТекстВопроса;
КонецЕсли; КонецЕсли;
@@ -126,7 +126,7 @@
КонецПроцедуры КонецПроцедуры
// Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлемента // Смотри также ОбновлениеИнформационнойБазыПереопределяемый.ПриНастройкеНачальногоЗаполненияЭлементов
// //
// Параметры: // Параметры:
// Объект - заполняемый объект. // Объект - заполняемый объект.
@@ -18,7 +18,7 @@
ПараметрыФормы.РежимАнкетирования = ПредопределенноеЗначение("Перечисление.РежимыАнкетирования.Интервью"); ПараметрыФормы.РежимАнкетирования = ПредопределенноеЗначение("Перечисление.РежимыАнкетирования.Интервью");
ОткрытьФорму( ОткрытьФорму(
"Обработка.ДоступныеАнкеты.Форма.Форма", "Обработка.ДоступныеАнкеты.Форма",
ПараметрыФормы, ПараметрыФормы,
ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Источник,
ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Уникальность,
@@ -130,9 +130,7 @@
КонецЦикла; КонецЦикла;
КонецЕсли; ИначеЕсли МультиязычныеСтрокиВРеквизитах
Если МультиязычныеСтрокиВРеквизитах
И (ИспользуетсяПервыйДополнительныйЯзык И (ИспользуетсяПервыйДополнительныйЯзык
ИЛИ ИспользуетсяВторойДополнительныйЯзык) Тогда ИЛИ ИспользуетсяВторойДополнительныйЯзык) Тогда
@@ -278,12 +278,58 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Контекст.Вставить("МенеджерКриптографии", МенеджерКриптографии);
Если ЭлектроннаяПодписьКлиент.ОбщиеНастройки().ДоступнаУсовершенствованнаяПодпись Тогда
МенеджерКриптографии.НачатьПолучениеКонтейнераПодписейКриптографии(Новый ОписаниеОповещения(
"ВыбратьФайлПослеПолученияКонтейнераПодписи", ЭтотОбъект, Контекст,
"ВыбратьФайлПослеОшибкиПолученияКонтейнераПодписи", ЭтотОбъект), Контекст.ДанныеПодписи);
Возврат;
КонецЕсли;
Контекст.Вставить("ПараметрыПодписи", Неопределено);
МенеджерКриптографии.НачатьПолучениеСертификатовИзПодписи(Новый ОписаниеОповещения( МенеджерКриптографии.НачатьПолучениеСертификатовИзПодписи(Новый ОписаниеОповещения(
"ВыбратьФайлПослеПолученияСертификатовИзПодписи", ЭтотОбъект, Контекст, "ВыбратьФайлПослеПолученияСертификатовИзПодписи", ЭтотОбъект, Контекст,
"ВыбратьФайлПослеОшибкиПолученияСертификатовИзПодписи", ЭтотОбъект), Контекст.ДанныеПодписи); "ВыбратьФайлПослеОшибкиПолученияСертификатовИзПодписи", ЭтотОбъект), Контекст.ДанныеПодписи);
КонецПроцедуры КонецПроцедуры
// Продолжение процедуры ВыбратьФайл.
&НаКлиенте
Процедура ВыбратьФайлПослеОшибкиПолученияКонтейнераПодписи(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
СтандартнаяОбработка = Ложь;
ОшибкаНаКлиенте = Новый Структура("ОписаниеОшибки", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'При получении контейнера подписи из файла подписи произошла ошибка:
|%1'"),
КраткоеПредставлениеОшибки(ИнформацияОбОшибке)));
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ПоказатьИнструкцию", Истина);
ДополнительныеПараметры.Вставить("Подпись", Контекст.ДанныеПодписи);
ПоказатьОшибку(ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере, ДополнительныеПараметры);
КонецПроцедуры
// Продолжение процедуры ВыбратьФайл.
&НаКлиенте
Процедура ВыбратьФайлПослеПолученияКонтейнераПодписи(КонтейнерПодписи, Контекст) Экспорт
ДатаСеанса = ОбщегоНазначенияКлиент.ДатаСеанса();
ДобавкаВремени = ДатаСеанса - ОбщегоНазначенияКлиент.ДатаУниверсальная();
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(
КонтейнерПодписи, ДобавкаВремени, ДатаСеанса);
Контекст.Вставить("ПараметрыПодписи", ПараметрыПодписи);
Контекст.МенеджерКриптографии.НачатьПолучениеСертификатовИзПодписи(Новый ОписаниеОповещения(
"ВыбратьФайлПослеПолученияСертификатовИзПодписи", ЭтотОбъект, Контекст,
"ВыбратьФайлПослеОшибкиПолученияСертификатовИзПодписи", ЭтотОбъект), Контекст.ДанныеПодписи);
КонецПроцедуры
// Продолжение процедуры ВыбратьФайл. // Продолжение процедуры ВыбратьФайл.
&НаКлиенте &НаКлиенте
Процедура ВыбратьФайлПослеОшибкиПолученияСертификатовИзПодписи(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт Процедура ВыбратьФайлПослеОшибкиПолученияСертификатовИзПодписи(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
@@ -331,7 +377,7 @@
СвойстваСертификата.Вставить("ДвоичныеДанные", ДанныеСертификата); СвойстваСертификата.Вставить("ДвоичныеДанные", ДанныеСертификата);
СвойстваПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваПодписи(Контекст.ДанныеПодписи, СвойстваПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваПодписи(Контекст.ДанныеПодписи,
СвойстваСертификата, "", ПользователиКлиент.АвторизованныйПользователь(), Контекст.ИмяФайла); СвойстваСертификата, "", ПользователиКлиент.АвторизованныйПользователь(), Контекст.ИмяФайла, Контекст.ПараметрыПодписи);
ДобавитьСтроку(ЭтотОбъект, Контекст.ДобавитьНовуюСтроку, СвойстваПодписи, ДобавитьСтроку(ЭтотОбъект, Контекст.ДобавитьНовуюСтроку, СвойстваПодписи,
Контекст.ИмяФайла, Контекст.АдресСвойствПодписи); Контекст.ИмяФайла, Контекст.АдресСвойствПодписи);
@@ -437,11 +483,18 @@
Возврат Ложь; Возврат Ложь;
КонецЕсли; КонецЕсли;
ПараметрыПодписи = Неопределено;
Если ЭлектроннаяПодпись.ОбщиеНастройки().ДоступнаУсовершенствованнаяПодпись Тогда
КонтейнерПодписи = МенеджерКриптографии.ПолучитьКонтейнерПодписейКриптографии(ДанныеПодписи);
ПараметрыПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.ПараметрыПодписиКриптографии(КонтейнерПодписи,
ЭлектроннаяПодписьСлужебный.ДобавкаВремени(), ТекущаяДатаСеанса());
КонецЕсли;
СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(Сертификаты[0]); СвойстваСертификата = ЭлектроннаяПодпись.СвойстваСертификата(Сертификаты[0]);
СвойстваСертификата.Вставить("ДвоичныеДанные", Сертификаты[0].Выгрузить()); СвойстваСертификата.Вставить("ДвоичныеДанные", Сертификаты[0].Выгрузить());
СвойстваПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваПодписи(ДанныеПодписи, СвойстваПодписи = ЭлектроннаяПодписьСлужебныйКлиентСервер.СвойстваПодписи(ДанныеПодписи,
СвойстваСертификата, "", Пользователи.АвторизованныйПользователь(), ИмяФайла); СвойстваСертификата, "", Пользователи.АвторизованныйПользователь(), ИмяФайла, ПараметрыПодписи);
ДобавитьСтроку(ЭтотОбъект, ДобавитьНовуюСтроку, СвойстваПодписи, ИмяФайла, АдресСвойствПодписи); ДобавитьСтроку(ЭтотОбъект, ДобавитьНовуюСтроку, СвойстваПодписи, ИмяФайла, АдресСвойствПодписи);
@@ -3,7 +3,7 @@
<name>НастройкаДоступаКСервисуMorpher</name> <name>НастройкаДоступаКСервисуMorpher</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Настройка доступа к сервису «Морфер»</value> <value>Настройка доступа к сервису Морфер</value>
</synonym> </synonym>
<help> <help>
<pages> <pages>
@@ -3604,6 +3604,22 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>СостоянияЗаявленияНеВРаботе</name>
<id>22</id>
<valueType>
<types>ValueList</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
<extInfo xsi:type="form:ValueListExtInfo">
<itemValueType/>
</extInfo>
</attributes>
<formCommands> <formCommands>
<name>Обновить</name> <name>Обновить</name>
<title> <title>
@@ -85,6 +85,7 @@
МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.ДополнитьЗапросСостояниемВСпискеСертификатов(ТекстЗапроса); МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.ДополнитьЗапросСостояниемВСпискеСертификатов(ТекстЗапроса);
МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.ДобавитьЛегенду(ЭтотОбъект, Элементы.ГруппаЛегенда); МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.ДобавитьЛегенду(ЭтотОбъект, Элементы.ГруппаЛегенда);
Элементы.СертификатыПоказать.СписокВыбора.Добавить("МоиЗаявленияВРаботе", НСтр("ru = 'Мои заявления в работе'")); Элементы.СертификатыПоказать.СписокВыбора.Добавить("МоиЗаявленияВРаботе", НСтр("ru = 'Мои заявления в работе'"));
СостоянияЗаявленияНеВРаботе = МодульЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.СостоянияЗаявленияНеВРаботе();
Если Не ПравоДоступа("Добавление", Метаданные.Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования) Тогда Если Не ПравоДоступа("Добавление", Метаданные.Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования) Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
@@ -115,7 +116,7 @@
СертификатыВЛичномХранилище = Новый СписокЗначений; СертификатыВЛичномХранилище = Новый СписокЗначений;
УстановитьПараметрыВСпискеСертификатовНаСервере(); УстановитьПараметрыВСпискеСертификатовНаСервере();
СертификатыОбновитьОтбор(ЭтотОбъект); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе);
Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда
// Состав и настройки предусмотренных программ нельзя изменять. // Состав и настройки предусмотренных программ нельзя изменять.
@@ -162,7 +163,7 @@
ОпределитьУстановленныеПрограммы(); ОпределитьУстановленныеПрограммы();
Если ЗначениеЗаполнено(Параметры.СертификатыПоказать) Тогда Если ЗначениеЗаполнено(Параметры.СертификатыПоказать) Тогда
СертификатыПоказать = Параметры.СертификатыПоказать; СертификатыПоказать = Параметры.СертификатыПоказать;
СертификатыОбновитьОтбор(ЭтотОбъект); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -225,28 +226,28 @@
&НаКлиенте &НаКлиенте
Процедура СертификатыПоказатьПриИзменении(Элемент) Процедура СертификатыПоказатьПриИзменении(Элемент)
СертификатыОбновитьОтбор(ЭтотОбъект, ПользователиКлиент.ТекущийПользователь()); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе, ПользователиКлиент.ТекущийПользователь());
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура СертификатыПоказатьЗаявленияПриИзменении(Элемент) Процедура СертификатыПоказатьЗаявленияПриИзменении(Элемент)
СертификатыОбновитьОтбор(ЭтотОбъект); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура СертификатыТолькоДействующиеПриИзменении(Элемент) Процедура СертификатыТолькоДействующиеПриИзменении(Элемент)
СертификатыОбновитьОтбор(ЭтотОбъект); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура ПользовательОтборПриИзменении(Элемент) Процедура ПользовательОтборПриИзменении(Элемент)
СертификатыОбновитьОтбор(ЭтотОбъект); СертификатыОбновитьОтбор(ЭтотОбъект, СостоянияЗаявленияНеВРаботе);
КонецПроцедуры КонецПроцедуры
@@ -675,7 +676,7 @@
КонецПроцедуры КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста &НаКлиентеНаСервереБезКонтекста
Процедура СертификатыОбновитьОтбор(Форма, ТекущийПользователь = Неопределено) Процедура СертификатыОбновитьОтбор(Форма, СостоянияЗаявленияНеВРаботе, ТекущийПользователь = Неопределено)
Элементы = Форма.Элементы; Элементы = Форма.Элементы;
@@ -711,13 +712,9 @@
Форма.СертификатыПоказатьЗаявления = Неопределено; Форма.СертификатыПоказатьЗаявления = Неопределено;
Форма.Элементы.СертификатыПоказатьЗаявления.Видимость = Ложь; Форма.Элементы.СертификатыПоказатьЗаявления.Видимость = Ложь;
СостоянияЗаявления = Новый Массив;
СостоянияЗаявления.Добавить(ПредопределенноеЗначение("Перечисление.СостоянияЗаявленияНаВыпускСертификата.Исполнено"));
СостоянияЗаявления.Добавить(ПредопределенноеЗначение("Перечисление.СостоянияЗаявленияНаВыпускСертификата.Отклонено"));
ОтборПоСостояниюЗаявления = Неопределено; ОтборПоСостояниюЗаявления = Неопределено;
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Форма.Сертификаты, ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Форма.Сертификаты,
"СостояниеЗаявления", СостоянияЗаявления, ВидСравненияКомпоновкиДанных.НеВСписке, , Истина); "СостояниеЗаявления", СостоянияЗаявленияНеВРаботе, ВидСравненияКомпоновкиДанных.НеВСписке, , Истина);
Иначе Иначе
Форма.Элементы.СертификатыПоказатьЗаявления.Видимость = Форма.ЗаявлениеНаВыпускСертификатаДоступно Форма.Элементы.СертификатыПоказатьЗаявления.Видимость = Форма.ЗаявлениеНаВыпускСертификатаДоступно
@@ -11,41 +11,47 @@
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если ЗначениеЗаполнено(Параметры.Подпись) Тогда Элементы.ПодписанныйОбъект.Видимость = Ложь;
Подпись = ПоместитьВоВременноеХранилище(Параметры.Подпись, УникальныйИдентификатор);
КонецЕсли;
Если ТипЗнч(Параметры.Подпись) = Тип("Структура") Тогда
Если ЗначениеЗаполнено(Параметры.Подпись.ПодписанныйОбъект) Тогда
ПодписанныйОбъект = Параметры.Подпись.ПодписанныйОбъект;
КонецЕсли;
КонецЕсли;
Если ЗначениеЗаполнено(Параметры.РежимПродления) Тогда Если ЗначениеЗаполнено(Параметры.РежимПродления) Тогда
ОбновитьПредставлениеДанных(Истина);
КонецЕсли;
Если Параметры.РежимПродления = "ТребуетсяУсовершенствоватьПодписи" Тогда ОбновитьПредставлениеДанных(Истина);
ТипПодписи = Константы.ТипПодписиКриптографииПоУмолчанию.Получить();
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь; Если Параметры.РежимПродления = "ТребуетсяУсовершенствоватьПодписи" Тогда
Элементы.ТипПодписи.Видимость = Ложь; ТипПодписи = Константы.ТипПодписиКриптографииПоУмолчанию.Получить();
Элементы.ДекорацияУсовершенствование.Видимость = Истина; Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
Элементы.ДекорацияУсовершенствование.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Элементы.ТипПодписи.Видимость = Ложь;
Элементы.ДекорацияУсовершенствование.Видимость = Истина;
Элементы.ДекорацияУсовершенствование.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='Подписи будут усовершенствованы до типа НСтр("ru='Подписи будут усовершенствованы до типа
|%1'"), ТипПодписи); |%1'"), ТипПодписи);
ИначеЕсли Параметры.РежимПродления = "ТребуетсяДобавитьАрхивныеМетки" Тогда ИначеЕсли Параметры.РежимПродления = "ТребуетсяДобавитьАрхивныеМетки" Тогда
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь; Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
Элементы.ДекорацияДобавлениеМетокВремени.Видимость = Истина; Элементы.ДекорацияДобавлениеМетокВремени.Видимость = Истина;
Элементы.ДекорацияДобавлениеМетокВремени.Заголовок = НСтр("ru='В подписи будут добавлены архивные метки времени'"); Элементы.ДекорацияДобавлениеМетокВремени.Заголовок = НСтр("ru='В подписи будут добавлены архивные метки времени'");
Элементы.ТипПодписи.Видимость = Ложь; Элементы.ТипПодписи.Видимость = Ложь;
ИначеЕсли Параметры.РежимПродления = "НеобработанныеПодписи" Тогда ИначеЕсли Параметры.РежимПродления = "НеобработанныеПодписи" Тогда
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Истина; Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Истина;
Элементы.ТипПодписи.Видимость = Истина; Элементы.ТипПодписи.Видимость = Истина;
ИначеЕсли ЗначениеЗаполнено(Параметры.РежимПродления) Тогда Иначе
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Истина; Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Истина;
Элементы.ТипПодписи.Видимость = Истина; Элементы.ТипПодписи.Видимость = Истина;
КонецЕсли;
Иначе Иначе
Если ЗначениеЗаполнено(Параметры.Подпись) Тогда
Подпись = ПоместитьВоВременноеХранилище(Параметры.Подпись, УникальныйИдентификатор);
КонецЕсли;
Если ТипЗнч(Параметры.Подпись) = Тип("Структура") Тогда
Если ЗначениеЗаполнено(Параметры.Подпись.ПодписанныйОбъект) Тогда
ПодписанныйОбъект = Параметры.Подпись.ПодписанныйОбъект;
ПорядковыйНомер = Параметры.Подпись.ПорядковыйНомер;
Элементы.ПодписанныйОбъект.Видимость = Истина;
КонецЕсли;
КонецЕсли;
Если ЗначениеЗаполнено(Параметры.ЗаголовокДанных) Тогда Если ЗначениеЗаполнено(Параметры.ЗаголовокДанных) Тогда
Элементы.ПредставлениеДанных.Заголовок = Параметры.ЗаголовокДанных; Элементы.ПредставлениеДанных.Заголовок = Параметры.ЗаголовокДанных;
Иначе Иначе
@@ -55,32 +61,32 @@
ПредставлениеДанных = Параметры.ПредставлениеДанных; ПредставлениеДанных = Параметры.ПредставлениеДанных;
Элементы.ПредставлениеДанных.Гиперссылка = Параметры.ПредставлениеДанныхОткрывается; Элементы.ПредставлениеДанных.Гиперссылка = Параметры.ПредставлениеДанныхОткрывается;
Если ЗначениеЗаполнено(Параметры.ТипПодписи) Тогда КонецЕсли;
Если Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.АрхивнаяCAdESAv3
Или Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.CAdESAv2 Тогда
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь; Если ЗначениеЗаполнено(Параметры.ТипПодписи) Тогда
Элементы.ДекорацияДобавлениеМетокВремени.Видимость = Истина; Если Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.АрхивнаяCAdESAv3
Элементы.ДекорацияДобавлениеМетокВремени.Заголовок = НСтр("ru='В подпись будут добавлены архивные метки времени'"); Или Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.CAdESAv2 Тогда
Элементы.ТипПодписи.Видимость = Ложь; Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
ДобавитьАрхивнуюМеткуВремени = Истина; Элементы.ДекорацияДобавлениеМетокВремени.Видимость = Истина;
Иначе Элементы.ДекорацияДобавлениеМетокВремени.Заголовок = НСтр("ru='В подписи будут добавлены архивные метки времени'");
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
Элементы.ТипПодписи.Видимость = Истина; Элементы.ТипПодписи.Видимость = Ложь;
КонецЕсли; ДобавитьАрхивнуюМеткуВремени = Истина;
Иначе
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
Элементы.ТипПодписи.Видимость = Истина;
КонецЕсли;
Иначе
Если ЗначениеЗаполнено(ПодписанныйОбъект) Тогда
ОпределитьТипПодписейОбъекта();
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
Если Не ЗначениеЗаполнено(ПредставлениеДанных) Тогда Если Не ЗначениеЗаполнено(ПредставлениеДанных) Тогда
Элементы.ПредставлениеДанных.Видимость = Ложь; Элементы.ПредставлениеДанных.Видимость = Ложь;
КонецЕсли; КонецЕсли;
Если Не ЗначениеЗаполнено(ПодписанныйОбъект) Тогда
Элементы.ПодписанныйОбъект.Видимость = Ложь;
КонецЕсли;
Если Элементы.ТипПодписи.Видимость Тогда Если Элементы.ТипПодписи.Видимость Тогда
ЭлектроннаяПодписьСлужебный.ЗаполнитьСписокТиповПодписейКриптографии(Элементы.ТипПодписи.СписокВыбора, ЭлектроннаяПодписьСлужебный.ЗаполнитьСписокТиповПодписейКриптографии(Элементы.ТипПодписи.СписокВыбора,
"Усовершенствование", ?(ЗначениеЗаполнено(Параметры.ТипПодписи), Параметры.ТипПодписи, Неопределено)); "Усовершенствование", ?(ЗначениеЗаполнено(Параметры.ТипПодписи), Параметры.ТипПодписи, Неопределено));
@@ -265,5 +271,62 @@
Возврат ОбщегоНазначения.ЭтоСсылка(ТипЗнч(ПодписанныйОбъект)); Возврат ОбщегоНазначения.ЭтоСсылка(ТипЗнч(ПодписанныйОбъект));
КонецФункции КонецФункции
&НаСервере
Процедура ОпределитьТипПодписейОбъекта()
УстановленныеПодписи = ЭлектроннаяПодпись.УстановленныеПодписи(
ПодписанныйОбъект, ?(ЗначениеЗаполнено(ПорядковыйНомер), ПорядковыйНомер, Неопределено));
ЕстьCAdESBES = Ложь; ЕстьCAdESТ = Ложь; ЕстьCAdESA = Ложь;
Для Каждого ТекущаяПодпись Из УстановленныеПодписи Цикл
Если Не ТекущаяПодпись.ПодписьВерна Тогда
Продолжить;
КонецЕсли;
Если Не ЗначениеЗаполнено(ТекущаяПодпись.ТипПодписи) Тогда
Прервать;
КонецЕсли;
Если Не ЕстьCAdESBES И ЭлектроннаяПодписьСлужебныйКлиентСервер.ПодлежитУсовершенствованию(
ТекущаяПодпись.ТипПодписи, Перечисления.ТипыПодписиКриптографии.СМеткойДоверенногоВремениCAdEST) Тогда
ЕстьCAdESBES = Истина;
Продолжить;
КонецЕсли;
Если Не ЕстьCAdESТ И ЭлектроннаяПодписьСлужебныйКлиентСервер.ПодлежитУсовершенствованию(
ТекущаяПодпись.ТипПодписи, Перечисления.ТипыПодписиКриптографии.АрхивнаяCAdESAv3) Тогда
ЕстьCAdESТ = Истина;
Продолжить;
КонецЕсли;
Если Не ЕстьCAdESA
И (ТекущаяПодпись.ТипПодписи = Перечисления.ТипыПодписиКриптографии.CAdESAv2
Или ТекущаяПодпись.ТипПодписи = Перечисления.ТипыПодписиКриптографии.АрхивнаяCAdESAv3) Тогда
ЕстьCAdESA = Истина;
Продолжить;
КонецЕсли;
КонецЦикла;
Если ЕстьCAdESA Тогда
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Истина;
ИначеЕсли ЕстьCAdESТ Или ЕстьCAdESBES Тогда
Элементы.ДобавитьАрхивнуюМеткуВремени.Видимость = Ложь;
КонецЕсли;
Если ЕстьCAdESBES Тогда
Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.БазоваяCAdESBES;
Элементы.ТипПодписи.Видимость = Истина;
ИначеЕсли ЕстьCAdESТ Тогда
Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.СМеткойДоверенногоВремениCAdEST;
Элементы.ТипПодписи.Видимость = Истина;
ИначеЕсли ЕстьCAdESA Тогда
Параметры.ТипПодписи = Перечисления.ТипыПодписиКриптографии.АрхивнаяCAdESAv3;
Элементы.ТипПодписи.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
#КонецОбласти #КонецОбласти
@@ -2342,7 +2342,7 @@
ТекущийЯзык = ОбщегоНазначения.КодОсновногоЯзыка(); ТекущийЯзык = ОбщегоНазначения.КодОсновногоЯзыка();
ЗагрузитьТабличныйДокументИзМетаданных(ТекущийЯзык); ЗагрузитьТабличныйДокументИзМетаданных(ТекущийЯзык);
Если ЗначениеЗаполнено(ВладелецМакета) Тогда Если ЗначениеЗаполнено(ВладелецМакета) Тогда
ПрочитатьМакет(); ТабличныйДокумент = ПрочитатьМакет();
КонецЕсли; КонецЕсли;
Элементы.Язык.Заголовок = Элементы["Язык_" + ТекущийЯзык].Заголовок; Элементы.Язык.Заголовок = Элементы["Язык_" + ТекущийЯзык].Заголовок;
@@ -379,7 +379,7 @@
<id>49</id> <id>49</id>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Не удалось просклонять с помощью альтернативного внешнего сервиса склонения «Морфер». <value>Не удалось просклонять с помощью сервиса Морфер.
Склонение выполнено с помощью встроенных возможностей программы.</value> Склонение выполнено с помощью встроенных возможностей программы.</value>
</title> </title>
<visible>true</visible> <visible>true</visible>
@@ -689,6 +689,36 @@
<currentRowUse>DontUse</currentRowUse> <currentRowUse>DontUse</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse> <selectedRowsUse>Auto</selectedRowsUse>
</formCommands> </formCommands>
<parameters>
<name>АдресТабличныхДокументов</name>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
</parameters>
<parameters>
<name>ЗаголовокЛевый</name>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<keyParameter>true</keyParameter>
</parameters>
<parameters>
<name>ЗаголовокПравый</name>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<keyParameter>true</keyParameter>
</parameters>
<parameters>
<name>Заголовок</name>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
</parameters>
<commandInterface> <commandInterface>
<navigationPanel/> <navigationPanel/>
<commandBar/> <commandBar/>
@@ -17,12 +17,17 @@
КонецЕсли; КонецЕсли;
ТабличныеДокументыДляСравнения = ПолучитьИзВременногоХранилища(Параметры.АдресТабличныхДокументов); ТабличныеДокументыДляСравнения = ПолучитьИзВременногоХранилища(Параметры.АдресТабличныхДокументов);
УдалитьИзВременногоХранилища(Параметры.АдресТабличныхДокументов);
ТабличныйДокументЛевый = ПодготовитьТабличныйДокумент(ТабличныеДокументыДляСравнения.Левый); ТабличныйДокументЛевый = ПодготовитьТабличныйДокумент(ТабличныеДокументыДляСравнения.Левый);
ТабличныйДокументПравый = ПодготовитьТабличныйДокумент(ТабличныеДокументыДляСравнения.Правый); ТабличныйДокументПравый = ПодготовитьТабличныйДокумент(ТабличныеДокументыДляСравнения.Правый);
Элементы.ГруппаЛевыйТабличныйДокумент.Заголовок = Параметры.ЗаголовокЛевый; Элементы.ГруппаЛевыйТабличныйДокумент.Заголовок = Параметры.ЗаголовокЛевый;
Элементы.ГруппаПравыйТабличныйДокумент.Заголовок = Параметры.ЗаголовокПравый; Элементы.ГруппаПравыйТабличныйДокумент.Заголовок = Параметры.ЗаголовокПравый;
Если Не ПустаяСтрока(Параметры.Заголовок) Тогда
Заголовок = Параметры.Заголовок;
КонецЕсли;
СравнитьНаСервере(); СравнитьНаСервере();
КонецПроцедуры КонецПроцедуры
@@ -73,7 +73,7 @@
Отказ = Истина; Отказ = Истина;
Если Не РазделениеВключено И Не ЭтоПодчиненныйУзелРИБ Тогда Если Не РазделениеВключено И Не ЭтоПодчиненныйУзелРИБ Тогда
Оповещение = Новый ОписаниеОповещения("ПослеУстановкиИсправлений", ЭтотОбъект); Оповещение = Новый ОписаниеОповещения("ПослеУстановкиИсправлений", ЭтотОбъект);
ОткрытьФорму("Обработка.УстановкаОбновлений.Форма.Форма",,,,,, Оповещение); ОткрытьФорму("Обработка.УстановкаОбновлений.Форма",,,,,, Оповещение);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -70,7 +70,7 @@
КонецЕсли; КонецЕсли;
// Параметры по умолчанию. // Параметры по умолчанию.
Если Не НастройкиОтчета.ВыводитьСуммуВыделенныхЯчеек Тогда Если Не НастройкиОтчета.ВыводитьСуммуВыделенныхЯчеек Или НастройкиОтчета.ОтключитьСтандартноеКонтекстноеМеню Тогда
Элементы.ГруппаПоказатель.Видимость = Ложь; Элементы.ГруппаПоказатель.Видимость = Ложь;
Элементы.ОбластьПоказателей.Видимость = Ложь; Элементы.ОбластьПоказателей.Видимость = Ложь;
Элементы.КомандыВидовПоказателейЕще.Видимость = Ложь; Элементы.КомандыВидовПоказателейЕще.Видимость = Ложь;
@@ -107,7 +107,7 @@
Если ЭлектроннаяПодпись.ДоступнаУсовершенствованнаяПодпись() И ЭлектроннаяПодпись.ДобавлениеИзменениеЭлектронныхПодписей() Тогда Если ЭлектроннаяПодпись.ДоступнаУсовершенствованнаяПодпись() И ЭлектроннаяПодпись.ДобавлениеИзменениеЭлектронныхПодписей() Тогда
Если (ЗначениеЗаполнено(СрокДействияПоследнейМеткиВремени) И СрокДействияПоследнейМеткиВремени <= ТекущаяДатаСеанса()) Если (ЗначениеЗаполнено(СрокДействияПоследнейМеткиВремени) И СрокДействияПоследнейМеткиВремени <= ТекущаяДатаСеанса())
Или ТипПодписи = Перечисления.ТипыПодписиКриптографии.ОбычнаяCMS Тогда Или ТипПодписи = Перечисления.ТипыПодписиКриптографии.ОбычнаяCMS Или Не ПодписьВерна Тогда
Элементы.ФормаПродлитьДействиеПодписи.Видимость = Ложь; Элементы.ФормаПродлитьДействиеПодписи.Видимость = Ложь;
Иначе Иначе
Элементы.ФормаПродлитьДействиеПодписи.Видимость = Истина; Элементы.ФормаПродлитьДействиеПодписи.Видимость = Истина;
@@ -209,4 +209,27 @@
КонецФункции КонецФункции
// Возвращает список разрешений для использования сервиса перевода.
//
// Возвращаемое значение:
// Массив
//
Функция Разрешения() Экспорт
Протокол = "HTTPS";
Адрес = "translation.googleapis.com";
Порт = Неопределено;
Описание = НСтр("ru = 'Сервис перевода текста Google Translate'");
МодульРаботаВБезопасномРежиме = ОбщегоНазначения.ОбщийМодуль("РаботаВБезопасномРежиме");
Разрешение = МодульРаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание);
Разрешения = Новый Массив;
Разрешения.Добавить(Разрешение);
Возврат Разрешения;
КонецФункции
#КонецОбласти #КонецОбласти
@@ -342,11 +342,13 @@
// Возвращает соответствие полных наименований адресных объектов и их сокращения. // Возвращает соответствие полных наименований адресных объектов и их сокращения.
// //
// Параметры: // Параметры:
// НаименованияАдресныхОбъектов - Массив - полные наименования адресных объектов. Если передан пустой массив, // НаименованияАдресныхОбъектов - Массив из Строка - полные наименования адресных объектов.
// то будут возвращен полный список наименований и сокращений. // Если передан пустой массив, то будут возвращен полный список наименований и сокращений.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие - соответствие найденных полных наименований адресных объектов их сокращениям. // Соответствие из КлючЗначение:
// * Ключ - Строка - полное наименование адресного объекта.
// * Значение - Строка - сокращение адресного объекта.
// //
Функция СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов) Экспорт Функция СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов) Экспорт
Возврат АдресныйКлассификаторСлужебный.СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов); Возврат АдресныйКлассификаторСлужебный.СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов);
@@ -882,6 +882,7 @@
// Возвращаемое значение: // Возвращаемое значение:
// Структура - найденные варианты. Содержит поля: // Структура - найденные варианты. Содержит поля:
// * Отказ - Булево - поставщик не доступен. // * Отказ - Булево - поставщик не доступен.
// * ИсключатьГородИзМуниципальногоАдреса - Булево - если Ложь, то представление муниципального адреса включает город.
// * ПодробноеПредставлениеОшибки - Строка - описание ошибки, если поставщик недоступен. Неопределено, если Отказ // * ПодробноеПредставлениеОшибки - Строка - описание ошибки, если поставщик недоступен. Неопределено, если Отказ
// = Ложь. // = Ложь.
// * КраткоеПредставлениеОшибки - Строка - описание ошибки, если поставщик недоступен. Неопределено, если Отказ // * КраткоеПредставлениеОшибки - Строка - описание ошибки, если поставщик недоступен. Неопределено, если Отказ
@@ -892,9 +893,10 @@
Данные = Новый Структура; Данные = Новый Структура;
Результат = Новый Структура("Данные", Данные); Результат = Новый Структура("Данные", Данные);
Результат.Вставить("ИсключатьГородИзМуниципальногоАдреса", Ложь);
СтруктураОписанияОшибкиПоставщика(Результат); СтруктураОписанияОшибкиПоставщика(Результат);
Если СведенияОбАдресномОбъекте.Свойство("ЗагруженныеДанные") Тогда Если СведенияОбАдресномОбъекте.Свойство("ЗагруженныеДанные") И ТипЗнч(СведенияОбАдресномОбъекте.ЗагруженныеДанные) = Тип("Булево") Тогда
ЗагруженныеДанные = СведенияОбАдресномОбъекте.ЗагруженныеДанные; ЗагруженныеДанные = СведенияОбАдресномОбъекте.ЗагруженныеДанные;
Иначе Иначе
ЗагруженныеАдресныеСведения = АдресныйКлассификаторПовтИсп.СведенияОЗагрузкеСубъектовРФ(); ЗагруженныеАдресныеСведения = АдресныйКлассификаторПовтИсп.СведенияОЗагрузкеСубъектовРФ();
@@ -909,6 +911,8 @@
Если ЗагруженныеДанные = Истина Тогда Если ЗагруженныеДанные = Истина Тогда
ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат.Данные, СведенияОбАдресномОбъекте); ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат.Данные, СведенияОбАдресномОбъекте);
Результат.ИсключатьГородИзМуниципальногоАдреса = ИсключатьГородИзМуниципальногоАдреса(Результат.Данные);
КонецЕсли; КонецЕсли;
Если АдресПустой(Результат.Данные) Тогда Если АдресПустой(Результат.Данные) Тогда
@@ -924,6 +928,27 @@
КонецФункции КонецФункции
// Параметры:
// Адрес - Структура
//
// Возвращаемое значение:
// Булево
//
Функция ИсключатьГородИзМуниципальногоАдреса(Адрес) Экспорт
Если АдресПустой(Адрес) Тогда
Возврат Ложь;
КонецЕсли;
УровеньРодительскогоОбъекта = УровеньМуниципальногоРодительскогоОбъектаПоАдресу(Адрес);
Если УровеньРодительскогоОбъекта = 31 ИЛИ УровеньРодительскогоОбъекта = 41 Тогда
Возврат Истина;
КонецЕсли;
Возврат Ложь;
КонецФункции
// Проверяет данные на соответствие классификатору. // Проверяет данные на соответствие классификатору.
// //
// Параметры: // Параметры:
@@ -4510,6 +4535,7 @@
Запрос.Текст = ТекстЗапроса; Запрос.Текст = ТекстЗапроса;
РезультатЗапроса = Запрос.Выполнить(); РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда Если РезультатЗапроса.Пустой() Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -4909,6 +4935,8 @@
Адрес = КлючЗначение.Значение; Адрес = КлючЗначение.Значение;
Счетчик = 0; Счетчик = 0;
ИсключатьГород = ИсключатьГородИзМуниципальногоАдреса(Адрес);
// Обратная совместимость // Обратная совместимость
Адрес.munDistrictType = ИсправлениеСокращений(Адрес.munDistrictType); Адрес.munDistrictType = ИсправлениеСокращений(Адрес.munDistrictType);
Адрес.munDistrict = КраткоеНаписаниеМуниципальныхРайонов(Адрес.munDistrict, Адрес.munDistrictType); Адрес.munDistrict = КраткоеНаписаниеМуниципальныхРайонов(Адрес.munDistrict, Адрес.munDistrictType);
@@ -4917,7 +4945,7 @@
Адрес.settlement = КраткоеНаписаниеПоселений(Адрес.settlement, Адрес.settlementType); Адрес.settlement = КраткоеНаписаниеПоселений(Адрес.settlement, Адрес.settlementType);
ПроверяемыеУровниАдреса = Новый Соответствие; ПроверяемыеУровниАдреса = Новый Соответствие;
ИменаУровнейАдреса = ИменаУровнейАдреса(Адрес.AddressType, Истина); ИменаУровнейАдреса = ИменаУровнейАдреса(Адрес.AddressType, Истина, ИсключатьГород);
АдресПоПолям = АдресаПоПолям.Добавить(); АдресПоПолям = АдресаПоПолям.Добавить();
АдресПоПолям.ЭтоМуниципальныйАдрес = ЭтоМуниципальныйАдрес(Адрес.AddressType); АдресПоПолям.ЭтоМуниципальныйАдрес = ЭтоМуниципальныйАдрес(Адрес.AddressType);
@@ -6126,12 +6154,12 @@
Адрес = Новый Структура; Адрес = Новый Структура;
Адрес.Вставить("ZIPcode"); // postalCode -> ZIPCode Адрес.Вставить("ZIPcode"); // postalCode -> ZIPCode
Адрес.Вставить("apartments"); // Массив из (См. ДомДляДляПередачиВСервис()) Адрес.Вставить("apartments"); // Массив из см. ДомДляДляПередачиВСервис
Адрес.Вставить("area"); Адрес.Вставить("area");
Адрес.Вставить("areaCode"); Адрес.Вставить("areaCode");
Адрес.Вставить("areaId"); Адрес.Вставить("areaId");
Адрес.Вставить("areaType"); Адрес.Вставить("areaType");
Адрес.Вставить("buildings"); // Массив из (См. ДомДляДляПередачиВСервис()) Адрес.Вставить("buildings"); // Массив из см. ДомДляДляПередачиВСервис
Адрес.Вставить("city"); Адрес.Вставить("city");
Адрес.Вставить("cityDistrict"); Адрес.Вставить("cityDistrict");
Адрес.Вставить("cityDistrictId"); Адрес.Вставить("cityDistrictId");
@@ -7626,7 +7654,7 @@
Возврат СтрСравнить(ТипАдреса, АдминистративноТерриториальныйАдрес()) = 0; Возврат СтрСравнить(ТипАдреса, АдминистративноТерриториальныйАдрес()) = 0;
КонецФункции КонецФункции
Функция ИменаУровнейАдреса(ТипАдреса, ВключатьУлицу) Функция ИменаУровнейАдреса(ТипАдреса, ВключатьУлицу, ИсключатьГород = Ложь)
Уровни = Новый Массив; Уровни = Новый Массив;
@@ -7642,11 +7670,14 @@
Если ЭтоМуниципальныйАдрес(ТипАдреса) Тогда Если ЭтоМуниципальныйАдрес(ТипАдреса) Тогда
Уровни.Добавить("MunDistrict"); Уровни.Добавить("MunDistrict");
Уровни.Добавить("Settlement"); Уровни.Добавить("Settlement");
Если Не ИсключатьГород Тогда
Уровни.Добавить("City");
КонецЕсли;
Иначе Иначе
Уровни.Добавить("District"); Уровни.Добавить("District");
Уровни.Добавить("City");
КонецЕсли; КонецЕсли;
Уровни.Добавить("City");
Уровни.Добавить("CityDistrict"); Уровни.Добавить("CityDistrict");
Уровни.Добавить("Locality"); Уровни.Добавить("Locality");
Уровни.Добавить("Territory"); Уровни.Добавить("Territory");
@@ -10792,6 +10823,58 @@
КонецФункции КонецФункции
Функция УровеньМуниципальногоРодительскогоОбъектаПоАдресу(Адрес)
УровеньРодительскогоОбъекта = 0;
ИдентификаторОбъекта = Неопределено;
Если ЗначениеЗаполнено(Адрес.localityId) Тогда
ИдентификаторОбъекта = Адрес.localityId;
ИначеЕсли ЗначениеЗаполнено(Адрес.territoryId) Тогда
ИдентификаторОбъекта = Адрес.territoryId;
КонецЕсли;
Если ИдентификаторОбъекта <> Неопределено Тогда
УровеньРодительскогоОбъекта = УровеньМуниципальногоРодительскогоОбъекта(ИдентификаторОбъекта);
КонецЕсли;
Возврат УровеньРодительскогоОбъекта;
КонецФункции
Функция УровеньМуниципальногоРодительскогоОбъекта(Идентификатор)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| РодительскийАдресныйОбъект.Уровень КАК УровеньРодительскогоОбъекта
|ИЗ
| РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК РодительскийАдресныйОбъект
| ПО АдресныйОбъект.МуниципальныйРодительскийИдентификатор = РодительскийАдресныйОбъект.Идентификатор
|ГДЕ
| АдресныйОбъект.Идентификатор = &Идентификатор";
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
Возврат ВыборкаДетальныеЗаписи.УровеньРодительскогоОбъекта;
КонецЕсли;
КонецЕсли;
Возврат 0;
КонецФункции
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти
@@ -29,8 +29,6 @@
// АПК:547-выкл Вызывается в подписке на событие ПолучитьПредставлениеБизнесПроцесса // АПК:547-выкл Вызывается в подписке на событие ПолучитьПредставлениеБизнесПроцесса
// Для клиентских вызовов следует использовать БизнесПроцессыИЗадачиКлиент.ОбработкаПолученияПредставленияБизнесПроцесса
// Для серверных вызовов следует использовать БизнесПроцессыИЗадачиСервер.ОбработкаПолученияПредставленияБизнесПроцесса
// Обработка получения представления бизнес-процесса на основании полей данных. // Обработка получения представления бизнес-процесса на основании полей данных.
// //
// Параметры: // Параметры:
@@ -759,9 +759,9 @@
// //
// Пример: // Пример:
// // Перенос всех пользовательских вариантов отчетов при обновлении. // // Перенос всех пользовательских вариантов отчетов при обновлении.
// ВариантыОтчетов.ПеренестиВариантыОтчетовИзСтандартногоХранилища(); // ВариантыОтчетов.ПеренестиПользовательскиеИзСтандартногоХранилища();
// // Перенос пользовательских вариантов отчетов, переведенных в хранилище подсистемы "Варианты отчетов". // // Перенос пользовательских вариантов отчетов, переведенных в хранилище подсистемы "Варианты отчетов".
// ВариантыОтчетов.ПеренестиВариантыОтчетовИзСтандартногоХранилища("АнализЖурналаРегистрации, ЗадачиИстекающиеНаДату"); // ВариантыОтчетов.ПеренестиПользовательскиеИзСтандартногоХранилища("АнализЖурналаРегистрации, ЗадачиИстекающиеНаДату");
// //
Процедура ПеренестиПользовательскиеИзСтандартногоХранилища(ИменаОтчетов = "") Экспорт Процедура ПеренестиПользовательскиеИзСтандартногоХранилища(ИменаОтчетов = "") Экспорт
ПредставлениеПроцедуры = НСтр("ru = 'Прямая конвертация вариантов отчетов'"); ПредставлениеПроцедуры = НСтр("ru = 'Прямая конвертация вариантов отчетов'");
@@ -900,7 +900,7 @@
ЗаписатьВЖурналЗапускПроцедуры(ПредставлениеПроцедуры); ЗаписатьВЖурналЗапускПроцедуры(ПредставлениеПроцедуры);
// Замена имен колонок под структуру справочника. // Замена имен колонок под структуру справочника.
Колонки = ПользовательскиеВарианты.Колонки; Колонки = ПользовательскиеВарианты.Колонки; // КоллекцияКолонокТаблицыЗначений
Колонки.Найти("Отчет").Имя = "ОтчетПолноеИмя"; Колонки.Найти("Отчет").Имя = "ОтчетПолноеИмя";
Колонки.Найти("Вариант").Имя = "КлючВарианта"; Колонки.Найти("Вариант").Имя = "КлючВарианта";
@@ -1362,9 +1362,6 @@
// * СтандартнаяОбработка - Булево - если Истина - вариант отчета сохранен в стандартном хранилище. // * СтандартнаяОбработка - Булево - если Истина - вариант отчета сохранен в стандартном хранилище.
// СтандартнаяОбработка - Булево - если Истина - вариант отчета сохранен в стандартном хранилище. // СтандартнаяОбработка - Булево - если Истина - вариант отчета сохранен в стандартном хранилище.
// //
// Места использования:
// ПользователиСлужебный.ПриПолученииПользовательскихВариантовОтчетов().
//
Процедура ПользовательскиеВариантыОтчетов(ПолноеИмяОтчета, ПользовательИнформационнойБазы, ТаблицаВариантовОтчетов, СтандартнаяОбработка) Экспорт Процедура ПользовательскиеВариантыОтчетов(ПолноеИмяОтчета, ПользовательИнформационнойБазы, ТаблицаВариантовОтчетов, СтандартнаяОбработка) Экспорт
КлючОтчета = ПолноеИмяОтчета; КлючОтчета = ПолноеИмяОтчета;
ВсеВариантыОтчета = КлючиВариантовОтчета(КлючОтчета, ПользовательИнформационнойБазы); ВсеВариантыОтчета = КлючиВариантовОтчета(КлючОтчета, ПользовательИнформационнойБазы);
@@ -1402,9 +1399,6 @@
// Удаляет переданный вариант отчета из хранилища вариантов отчетов. // Удаляет переданный вариант отчета из хранилища вариантов отчетов.
// //
// Места использования:
// ПользователиСлужебный.ПриУдаленииПользовательскихВариантовОтчета().
//
Процедура УдалитьПользовательскийВариантОтчета(СведенияОВариантеОтчета, ПользовательИнформационнойБазы, СтандартнаяОбработка) Экспорт Процедура УдалитьПользовательскийВариантОтчета(СведенияОВариантеОтчета, ПользовательИнформационнойБазы, СтандартнаяОбработка) Экспорт
Если СведенияОВариантеОтчета.СтандартнаяОбработка Тогда Если СведенияОВариантеОтчета.СтандартнаяОбработка Тогда
@@ -2583,6 +2583,8 @@
Результат.ТолькоПросмотр = Истина; Результат.ТолькоПросмотр = Истина;
Результат.ОтображатьЗаголовки = Ложь; Результат.ОтображатьЗаголовки = Ложь;
Возврат Результат;
КонецФункции КонецФункции
Процедура ВывестиШапкуПоВерсии(Результат, Знач Текст, Знач НомерСтроки, Знач НомерКолонки) Процедура ВывестиШапкуПоВерсии(Результат, Знач Текст, Знач НомерСтроки, Знач НомерКолонки)
@@ -1002,7 +1002,7 @@
ДелоРодитель = ТекущиеДела.Добавить(); ДелоРодитель = ТекущиеДела.Добавить();
ДелоРодитель.Идентификатор = ИдентификаторВзаимодействия; ДелоРодитель.Идентификатор = ИдентификаторВзаимодействия;
ДелоРодитель.Представление = НСтр("ru = 'Почта'"); ДелоРодитель.Представление = НСтр("ru = 'Почта'");
ДелоРодитель.Форма = "ЖурналДокументов.Взаимодействия.Форма.ФормаСписка"; ДелоРодитель.Форма = "ЖурналДокументов.Взаимодействия.ФормаСписка";
ДелоРодитель.Владелец = Раздел; ДелоРодитель.Владелец = Раздел;
Индекс = 1; Индекс = 1;
@@ -25,7 +25,7 @@
// ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения(); // ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения();
// ПараметрыПодключения.ТекстПояснения = // ПараметрыПодключения.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется // НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
Функция ПараметрыПодключения() Экспорт Функция ПараметрыПодключения() Экспорт
@@ -66,7 +66,7 @@
// ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения(); // ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения();
// ПараметрыПодключения.ТекстПояснения = // ПараметрыПодключения.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется // НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
// ВнешниеКомпонентыКлиент.ПодключитьКомпоненту(Оповещение, "InputDevice",, ПараметрыПодключения); // ВнешниеКомпонентыКлиент.ПодключитьКомпоненту(Оповещение, "InputDevice",, ПараметрыПодключения);
// //
@@ -171,7 +171,7 @@
// ПараметрыУстановки = ВнешниеКомпонентыКлиент.ПараметрыУстановки(); // ПараметрыУстановки = ВнешниеКомпонентыКлиент.ПараметрыУстановки();
// ПараметрыУстановки.ТекстПояснения = // ПараметрыУстановки.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется // НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
Функция ПараметрыУстановки() Экспорт Функция ПараметрыУстановки() Экспорт
@@ -204,7 +204,7 @@
// ПараметрыУстановки = ВнешниеКомпонентыКлиент.ПараметрыУстановки(); // ПараметрыУстановки = ВнешниеКомпонентыКлиент.ПараметрыУстановки();
// ПараметрыУстановки.ТекстПояснения = // ПараметрыУстановки.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется // НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
// ВнешниеКомпонентыКлиент.УстановитьКомпоненту(Оповещение, "InputDevice",, ПараметрыУстановки); // ВнешниеКомпонентыКлиент.УстановитьКомпоненту(Оповещение, "InputDevice",, ПараметрыУстановки);
// //
@@ -410,7 +410,7 @@
// Параметры: // Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты. // Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты. // Версия - Строка - версия компоненты.
// ПараметрыПодключения - см. ОбщегоНазначения.ПараметрыПодключения. // ПараметрыПодключения - см. ВнешниеКомпонентыСервер.ПараметрыПодключения.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Строка - краткое описание ошибки. // Строка - краткое описание ошибки.
@@ -106,7 +106,7 @@
Пока Выборка.Следующий() Цикл Пока Выборка.Следующий() Цикл
Если Выборка.ДатаПоКалендарю = Неопределено Тогда Если Выборка.ДатаПоКалендарю = Неопределено Тогда
СообщениеОбОшибке = НСтр("ru = 'График работы «%1» не заполнен с даты %2 на указанное количество рабочих дней.'"); СообщениеОбОшибке = НСтр("ru = 'График работы ""%1"" не заполнен с даты %2 на указанное количество рабочих дней.'");
Если ВызыватьИсключение Тогда Если ВызыватьИсключение Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, Формат(ДатаОт, "ДЛФ=D")); ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, Формат(ДатаОт, "ДЛФ=D"));
Иначе Иначе
@@ -495,7 +495,7 @@
// Делимое - Цел(Делимое / Делитель) * Делитель, где Цел() - функция выделения целой части. // Делимое - Цел(Делимое / Делитель) * Делитель, где Цел() - функция выделения целой части.
// Для выделения целой части используется конструкция: // Для выделения целой части используется конструкция:
// если результат округления числа по правилам «1.5 как 2» больше исходного значения, уменьшаем результат на 1. // если результат округления числа по правилам "1.5 как 2" больше исходного значения, уменьшаем результат на 1.
Запрос = Новый Запрос(ТекстЗапроса); Запрос = Новый Запрос(ТекстЗапроса);
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
@@ -631,7 +631,7 @@
Обработчик.ИзменяемыеОбъекты = "Справочник.Календари"; Обработчик.ИзменяемыеОбъекты = "Справочник.Календари";
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы"; Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("fe8c3f3a-8973-4538-a993-ba74fa9162d8"); Обработчик.Идентификатор = Новый УникальныйИдентификатор("fe8c3f3a-8973-4538-a993-ba74fa9162d8");
Обработчик.Комментарий = НСтр("ru = 'Установка нового признака «Учитывать нерабочие периоды» в положение по умолчанию.'"); Обработчик.Комментарий = НСтр("ru = 'Установка нового признака ""Учитывать нерабочие периоды"" в положение по умолчанию.'");
Обработчик.БлокируемыеОбъекты = "Справочник.Календари"; Обработчик.БлокируемыеОбъекты = "Справочник.Календари";
Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика();
@@ -497,21 +497,29 @@
ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("ДлительныеОперации.ВыполнитьВФоне", "ПараметрыВыполнения", ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("ДлительныеОперации.ВыполнитьВФоне", "ПараметрыВыполнения",
ПараметрыВыполнения, Тип("Структура")); ПараметрыВыполнения, Тип("Структура"));
Если ПараметрыВыполнения.ЗапуститьНеВФоне И ПараметрыВыполнения.ЗапуститьВФоне Тогда Если ПараметрыВыполнения.ЗапуститьНеВФоне И ПараметрыВыполнения.ЗапуститьВФоне Тогда
ВызватьИсключение НСтр("ru = 'Параметры ""ВсегдаНеВФоне"" и ""ВсегдаВФоне"" ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|не могут одновременно принимать значение Истина в ДлительныеОперации.ВыполнитьВФоне.'"); "ru = 'Параметры ""%1"" и ""%2""
|не могут одновременно принимать значение %3 в %4.'"),
"ЗапуститьНеВФоне", "ЗапуститьВФоне", "Истина", "ДлительныеОперации.ВыполнитьВФоне");
КонецЕсли; КонецЕсли;
Если ПараметрыВыполнения.БезРасширений И ПараметрыВыполнения.СРасширениямиБазыДанных Тогда Если ПараметрыВыполнения.БезРасширений И ПараметрыВыполнения.СРасширениямиБазыДанных Тогда
ВызватьИсключение НСтр("ru = 'Параметры ""БезРасширений"" и ""СРасширениямиБазыДанных"" ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|не могут одновременно принимать значение Истина в ДлительныеОперации.ВыполнитьВФоне.'"); "ru = 'Параметры ""%1"" и ""%2""
|не могут одновременно принимать значение %3 в %4.'"),
"БезРасширений", "СРасширениямиБазыДанных", "Истина", "ДлительныеОперации.ВыполнитьВФоне");
КонецЕсли; КонецЕсли;
#Если ВнешнееСоединение Тогда #Если ВнешнееСоединение Тогда
ИнформационнаяБазаФайловая = ОбщегоНазначения.ИнформационнаяБазаФайловая(); ИнформационнаяБазаФайловая = ОбщегоНазначения.ИнформационнаяБазаФайловая();
Если ПараметрыВыполнения.БезРасширений И ИнформационнаяБазаФайловая Тогда Если ПараметрыВыполнения.БезРасширений И ИнформационнаяБазаФайловая Тогда
ВызватьИсключение НСтр("ru = 'Фоновое задание не может быть запущено с параметром ""БезРасширений"" ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|в файловой информационной базе в ДлительныеОперации.ВыполнитьВФоне.'"); "ru = 'Фоновое задание не может быть запущено с параметром ""%1""
|в файловой информационной базе в %2.'"),
"БезРасширений", "ДлительныеОперации.ВыполнитьВФоне");
ИначеЕсли ПараметрыВыполнения.СРасширениямиБазыДанных И ИнформационнаяБазаФайловая Тогда ИначеЕсли ПараметрыВыполнения.СРасширениямиБазыДанных И ИнформационнаяБазаФайловая Тогда
ВызватьИсключение НСтр("ru = 'Фоновое задание не может быть запущено с параметром ""СРасширениямиБазыДанных"" ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|в файловой информационной базе в ДлительныеОперации.ВыполнитьВФоне.'"); "ru = 'Фоновое задание не может быть запущено с параметром ""%1""
|в файловой информационной базе в %2.'"),
"СРасширениямиБазыДанных", "ДлительныеОперации.ВыполнитьВФоне");
КонецЕсли; КонецЕсли;
#КонецЕсли #КонецЕсли
@@ -522,9 +530,12 @@
Если ПараметрыВыполнения.АдресРезультата = Неопределено Тогда Если ПараметрыВыполнения.АдресРезультата = Неопределено Тогда
Если Не ЗначениеЗаполнено(ПараметрыВыполнения.ИдентификаторФормы) И ОбщегоНазначения.РежимОтладки() Тогда Если Не ЗначениеЗаполнено(ПараметрыВыполнения.ИдентификаторФормы) И ОбщегоНазначения.РежимОтладки() Тогда
Попытка Попытка
ВызватьИсключение НСтр("ru = 'Не указан ни уникальный идентификатор формы в параметре ПараметрыВыполнения.ИдентификаторФормы, ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|ни адрес временного хранилища в ПараметрыВыполнения.АдресРезультата в ДлительныеОперации.ВыполнитьВФоне. "ru = 'Не указан ни уникальный идентификатор формы в параметре %1,
|Убедиться, что при обработке результата временное хранилище очищается явно методом УдалитьИзВременногоХранилища.'"); |ни адрес временного хранилища в %2 в %3.
|Убедиться, что при обработке результата временное хранилище очищается явно методом %4.'"),
"ПараметрыВыполнения.ИдентификаторФормы", "ПараметрыВыполнения.АдресРезультата",
"ДлительныеОперации.ВыполнитьВФоне", "УдалитьИзВременногоХранилища");
Исключение Исключение
// АПК:154-выкл Не ошибка, а предупреждение (рекомендация разработчику). // АПК:154-выкл Не ошибка, а предупреждение (рекомендация разработчику).
ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Диагностика'", ОбщегоНазначения.КодОсновногоЯзыка()), ЗаписьЖурналаРегистрации(НСтр("ru = 'Длительные операции.Диагностика'", ОбщегоНазначения.КодОсновногоЯзыка()),
@@ -534,8 +545,10 @@
КонецЕсли; КонецЕсли;
ПараметрыВыполнения.АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено, ПараметрыВыполнения.ИдентификаторФормы); ПараметрыВыполнения.АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено, ПараметрыВыполнения.ИдентификаторФормы);
ИначеЕсли Не ЭтоАдресВременногоХранилища(ПараметрыВыполнения.АдресРезультата) Тогда ИначеЕсли Не ЭтоАдресВременногоХранилища(ПараметрыВыполнения.АдресРезультата) Тогда
ВызватьИсключение НСтр("ru = 'Не указан адрес временного хранилища в параметре ПараметрыВыполнения.АдресРезультата ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
|в ДлительныеОперации.ВыполнитьВФоне.'"); "ru = 'Не указан адрес временного хранилища в параметре %1
|в %2.'"),
"ПараметрыВыполнения.АдресРезультата", "ДлительныеОперации.ВыполнитьВФоне");
КонецЕсли; КонецЕсли;
Результат.Вставить("АдресРезультата", ПараметрыВыполнения.АдресРезультата); Результат.Вставить("АдресРезультата", ПараметрыВыполнения.АдресРезультата);
КонецЕсли; КонецЕсли;
@@ -1292,7 +1305,7 @@
КонецЕсли; КонецЕсли;
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Неверный формат параметра ИмяПроцедуры (переданное значение: %1)'"), ИмяПроцедуры); НСтр("ru = 'Неверный формат параметра %2 (переданное значение: %1)'"), ИмяПроцедуры, "ИмяПроцедуры");
КонецПроцедуры КонецПроцедуры
@@ -1328,7 +1341,7 @@
КонецЕсли; КонецЕсли;
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Неверный формат параметра ИмяФункции (переданное значение: %1)'"), ИмяФункции); НСтр("ru = 'Неверный формат параметра %2 (переданное значение: %1)'"), ИмяФункции, "ИмяФункции");
КонецПроцедуры КонецПроцедуры
@@ -211,7 +211,7 @@
// Значение по умолчанию Истина (обработка будет выполняться безопасно). // Значение по умолчанию Истина (обработка будет выполняться безопасно).
// В безопасном режиме: // В безопасном режиме:
// Игнорируется привилегированный режим. // Игнорируется привилегированный режим.
// Запрещены внешние по отношению к платформе «1С:Предприятия» действия: // Запрещены внешние по отношению к платформе 1С:Предприятия действия:
// COM; // COM;
// загрузка внешних компонент; // загрузка внешних компонент;
// запуск внешних приложений и команд операционной системы; // запуск внешних приложений и команд операционной системы;
@@ -1625,9 +1625,6 @@
// ПолноеИмяОбъектаМетаданных - Строка - полное имя объекта метаданных, // ПолноеИмяОбъектаМетаданных - Строка - полное имя объекта метаданных,
// для которого требуется получить список печатных форм. // для которого требуется получить список печатных форм.
// //
// Места использования:
// УправлениеПечатью.ПриПолученииСпискаВнешнихПечатныхФорм().
//
Процедура ПриПолученииСпискаВнешнихПечатныхФорм(ВнешниеПечатныеФормы, ПолноеИмяОбъектаМетаданных) Экспорт Процедура ПриПолученииСпискаВнешнихПечатныхФорм(ВнешниеПечатныеФормы, ПолноеИмяОбъектаМетаданных) Экспорт
Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда
@@ -1656,9 +1653,6 @@
// Возвращает ссылку на объект внешней печатной формы. // Возвращает ссылку на объект внешней печатной формы.
// //
// Места использования:
// УправлениеПечатью.ПриПолученииВнешнейПечатнойФормы
//
Процедура ПриПолученииВнешнейПечатнойФормы(Идентификатор, ПолноеИмяОбъектаМетаданных, ВнешняяПечатнаяФормаСсылка) Экспорт Процедура ПриПолученииВнешнейПечатнойФормы(Идентификатор, ПолноеИмяОбъектаМетаданных, ВнешняяПечатнаяФормаСсылка) Экспорт
Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда
Возврат; Возврат;
@@ -905,7 +905,6 @@
// //
// Параметры: // Параметры:
// ТаблицаПараметров - ТаблицаЗначений - таблица описания параметров. // ТаблицаПараметров - ТаблицаЗначений - таблица описания параметров.
// Описание состав колонок - см. РаботаВМоделиСервиса.ПолучитьТаблицуПараметровИБ().
// //
Процедура ПриЗаполненииТаблицыПараметровИБ(Знач ТаблицаПараметров) Экспорт Процедура ПриЗаполненииТаблицыПараметровИБ(Знач ТаблицаПараметров) Экспорт
@@ -850,7 +850,7 @@
Дело.Количество = ИстекшиеСогласия.Количество(); Дело.Количество = ИстекшиеСогласия.Количество();
Дело.Подсказка = НСтр("ru = 'Истекли согласия на обработку персональных данных (ПДн). Прекратите обработку ПДн или запросите у субъекта продление согласия на обработку.'"); Дело.Подсказка = НСтр("ru = 'Истекли согласия на обработку персональных данных (ПДн). Прекратите обработку ПДн или запросите у субъекта продление согласия на обработку.'");
Дело.ПараметрыФормы = Новый Структура("ИстекшиеСогласия", ИстекшиеСогласия); Дело.ПараметрыФормы = Новый Структура("ИстекшиеСогласия", ИстекшиеСогласия);
Дело.Форма = "ЖурналДокументов.СогласияНаОбработкуПерсональныхДанных.Форма.ФормаСписка"; Дело.Форма = "ЖурналДокументов.СогласияНаОбработкуПерсональныхДанных.ФормаСписка";
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
@@ -865,7 +865,7 @@
КонецПроцедуры КонецПроцедуры
// См. ДатыЗапретаИзмененияПереопределяемый.ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения. // См. ДатыЗапретаИзмененияПереопределяемый.ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения.
Процедура ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных) Экспорт Процедура ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных) Экспорт
МодульДатыЗапретаИзменения = ОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзменения"); МодульДатыЗапретаИзменения = ОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзменения");
@@ -1508,7 +1508,7 @@
Для Каждого ТекущийСубъект Из ТекущиеСубъекты Цикл Для Каждого ТекущийСубъект Из ТекущиеСубъекты Цикл
ТекстСообщения = НСтр("ru = 'Персональные данные субъекта «%1» не могут быть скрыты. ТекстСообщения = НСтр("ru = 'Персональные данные субъекта ""%1"" не могут быть скрыты.
|%2'"); |%2'");
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ТекущийСубъект, ТекстПричины); ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ТекущийСубъект, ТекстПричины);
@@ -79,7 +79,7 @@
ТекстПричины = НСтр("ru = 'Скрытие уже выполнено.'"); ТекстПричины = НСтр("ru = 'Скрытие уже выполнено.'");
КонецЕсли; КонецЕсли;
ТекстСообщения = НСтр("ru = 'Персональные данные субъекта «%1» не могут быть скрыты. ТекстСообщения = НСтр("ru = 'Персональные данные субъекта ""%1"" не могут быть скрыты.
|%2'"); |%2'");
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, Субъект, ТекстПричины); ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, Субъект, ТекстПричины);
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения); ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
@@ -1112,7 +1112,12 @@
КонецПроцедуры КонецПроцедуры
// См. ОбщегоНазначенияПереопределяемый.ПередПоискомМестИспользования. // Добавляет к коллекции дублей связанные подчиненные объекты.
//
// Параметры:
// ПарыЗамен - см. ОбщегоНазначения.ЗаменитьСсылки.ПарыЗамен
// ПараметрыЗамены - см. ОбщегоНазначения.ПараметрыЗаменыСсылок
//
Процедура ПередПоискомМестИспользования(ПарыЗамен, ПараметрыВыполнения) Экспорт Процедура ПередПоискомМестИспользования(ПарыЗамен, ПараметрыВыполнения) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПоискИУдалениеДублей") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПоискИУдалениеДублей") Тогда
@@ -2247,7 +2252,7 @@
КонецПроцедуры КонецПроцедуры
// См. ДатыЗапретаИзмененияПереопределяемый.ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения. // См. ДатыЗапретаИзмененияПереопределяемый.ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения.
Процедура ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных) Экспорт Процедура ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗащитаПерсональныхДанных") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗащитаПерсональныхДанных") Тогда
@@ -3556,7 +3561,7 @@
КонецПроцедуры КонецПроцедуры
// См. ПоискИУдалениеДублей.ПриОпределенииОбъектовСПоискомДублей // См. ПоискИУдалениеДублейПереопределяемый.ПриОпределенииОбъектовСПоискомДублей
Процедура ПриДобавленииТиповИсключаемыхИзВозможныхДублей(ИсключаемыеТипы) Экспорт Процедура ПриДобавленииТиповИсключаемыхИзВозможныхДублей(ИсключаемыеТипы) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗаметкиПользователя") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗаметкиПользователя") Тогда
@@ -3677,22 +3682,22 @@
КонецПроцедуры КонецПроцедуры
// См. ПользователиПереопределяемый.ПриОпределенииДействийВФорме. // См. ПользователиПереопределяемый.ИзменитьДействияВФорме.
Процедура ПриОпределенииДействийВФорме(Ссылка, ДействияВФорме) Экспорт Процедура ПриОпределенииДействийВФорме(Знач ПользовательИлиГруппа, Знач ДействияВФорме) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный");
МодульУправлениеДоступомСлужебный.ПриОпределенииДействийВФорме(Ссылка, ДействияВФорме); МодульУправлениеДоступомСлужебный.ПриОпределенииДействийВФорме(ПользовательИлиГруппа, ДействияВФорме);
КонецЕсли; КонецЕсли;
Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБТС().ПриОпределенииДействийВФорме Тогда Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБТС().ПриОпределенииДействийВФорме Тогда
МодульИнтеграцияПодсистемБТС = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБТС"); МодульИнтеграцияПодсистемБТС = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБТС");
МодульИнтеграцияПодсистемБТС.ПриОпределенииДействийВФорме(Ссылка, ДействияВФорме); МодульИнтеграцияПодсистемБТС.ПриОпределенииДействийВФорме(ПользовательИлиГруппа, ДействияВФорме);
КонецЕсли; КонецЕсли;
Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБИП().ПриОпределенииДействийВФорме Тогда Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБИП().ПриОпределенииДействийВФорме Тогда
МодульИнтеграцияПодсистемБИП = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБИП"); МодульИнтеграцияПодсистемБИП = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБИП");
МодульИнтеграцияПодсистемБИП.ПриОпределенииДействийВФорме(Ссылка, ДействияВФорме); МодульИнтеграцияПодсистемБИП.ПриОпределенииДействийВФорме(ПользовательИлиГруппа, ДействияВФорме);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -3873,11 +3878,10 @@
// Переопределяет текст комментария при авторизации пользователя ИБ, // Переопределяет текст комментария при авторизации пользователя ИБ,
// созданного в конфигураторе с административными правами. // созданного в конфигураторе с административными правами.
// Вызывается из Пользователи.АвторизоватьТекущегоПользователя(). // Комментарий записывается в журнал регистрации.
// Комментарий записывается в журнал регистрации.
// //
// Параметры: // Параметры:
// Комментарий - Строка - начальное значение задано. // Комментарий - Строка
// //
Процедура ПослеЗаписиАдминистратораПриАвторизации(Комментарий) Экспорт Процедура ПослеЗаписиАдминистратораПриАвторизации(Комментарий) Экспорт
@@ -4251,6 +4255,11 @@
СтандартныеПодсистемыСервер.ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений); СтандартныеПодсистемыСервер.ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Мультиязычность.ПереводТекста") Тогда
МодульПереводТекстаНаДругиеЯзыки = ОбщегоНазначения.ОбщийМодуль("ПереводТекстаНаДругиеЯзыки");
МодульПереводТекстаНаДругиеЯзыки.ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений);
КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда
МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью");
МодульУправлениеПечатью.ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений); МодульУправлениеПечатью.ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений);
@@ -4471,34 +4480,34 @@
#Область Свойства #Область Свойства
// См. УправлениеСвойствамиПереопределяемый.ПриСозданииПредопределенныхНаборовСвойств. // См. УправлениеСвойствамиПереопределяемый.ПриПолученииПредопределенныхНаборовСвойств.
Процедура ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов) Экспорт Процедура ПриПолученииПредопределенныхНаборовСвойств(Наборы) Экспорт
ПользователиСлужебный.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); ПользователиСлужебный.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") Тогда
МодульВзаимодействия = ОбщегоНазначения.ОбщийМодуль("Взаимодействия"); МодульВзаимодействия = ОбщегоНазначения.ОбщийМодуль("Взаимодействия");
МодульВзаимодействия.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); МодульВзаимодействия.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗащитаПерсональныхДанных") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗащитаПерсональныхДанных") Тогда
МодульЗащитаПерсональныхДанных = ОбщегоНазначения.ОбщийМодуль("ЗащитаПерсональныхДанных"); МодульЗащитаПерсональныхДанных = ОбщегоНазначения.ОбщийМодуль("ЗащитаПерсональныхДанных");
МодульЗащитаПерсональныхДанных.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); МодульЗащитаПерсональныхДанных.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда
МодульРаботаСФайламиСлужебный = ОбщегоНазначения.ОбщийМодуль("РаботаСФайламиСлужебный"); МодульРаботаСФайламиСлужебный = ОбщегоНазначения.ОбщийМодуль("РаботаСФайламиСлужебный");
МодульРаботаСФайламиСлужебный.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); МодульРаботаСФайламиСлужебный.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
КонецЕсли; КонецЕсли;
Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБТС().ПриПолученииПредопределенныхНаборовСвойств Тогда Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБТС().ПриПолученииПредопределенныхНаборовСвойств Тогда
МодульИнтеграцияПодсистемБТС = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБТС"); МодульИнтеграцияПодсистемБТС = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБТС");
МодульИнтеграцияПодсистемБТС.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); МодульИнтеграцияПодсистемБТС.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
КонецЕсли; КонецЕсли;
Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБИП().ПриПолученииПредопределенныхНаборовСвойств Тогда Если ИнтеграцияПодсистемБСППовтИсп.ПодпискиБИП().ПриПолученииПредопределенныхНаборовСвойств Тогда
МодульИнтеграцияПодсистемБИП = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБИП"); МодульИнтеграцияПодсистемБИП = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияПодсистемБИП");
МодульИнтеграцияПодсистемБИП.ПриПолученииПредопределенныхНаборовСвойств(ДеревоНаборов); МодульИнтеграцияПодсистемБИП.ПриПолученииПредопределенныхНаборовСвойств(Наборы);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -5021,10 +5030,6 @@
// исполнителей задач, которые соответствуют ключам адресации // исполнителей задач, которые соответствуют ключам адресации
// (РольИсполнителя + ОсновнойОбъектАдресации + ДополнительныйОбъектАдресации). // (РольИсполнителя + ОсновнойОбъектАдресации + ДополнительныйОбъектАдресации).
// //
// При изменении состава дополнительных групп пользователей необходимо вызвать
// процедуру УправлениеДоступом.ОбновитьПользователейГруппИсполнителей,
// чтобы применить изменения к внутренним данным подсистемы.
//
// Параметры: // Параметры:
// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - в который можно поместить таблицу // МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - в который можно поместить таблицу
// ТаблицаГруппИсполнителей с полями: // ТаблицаГруппИсполнителей с полями:
@@ -435,7 +435,7 @@
КонецПроцедуры КонецПроцедуры
// См. ОтчетыКлиентПереопределяемый.ПриОбработкеВыбора. // См. ОтчетыКлиентПереопределяемый.ОбработкаВыбора.
Процедура ПриОбработкеВыбора(ФормаОтчета, ВыбранноеЗначение, ИсточникВыбора, Результат) Экспорт Процедура ПриОбработкеВыбора(ФормаОтчета, ВыбранноеЗначение, ИсточникВыбора, Результат) Экспорт
Если ИнтеграцияПодсистемБСПКлиентПовтИсп.ПодпискиБТС().ПриОбработкеВыбора Тогда Если ИнтеграцияПодсистемБСПКлиентПовтИсп.ПодпискиБТС().ПриОбработкеВыбора Тогда
@@ -418,6 +418,7 @@
Найденные = НайтиФайлы(КаталогПолныйПуть, "*", Ложь); Найденные = НайтиФайлы(КаталогПолныйПуть, "*", Ложь);
Для Каждого Файл Из Найденные Цикл Для Каждого Файл Из Найденные Цикл
ФайлОтносительноеИмя = КаталогОтносительныйПуть + Файл.Имя; ФайлОтносительноеИмя = КаталогОтносительныйПуть + Файл.Имя;
Если Файл.ЭтоКаталог() Тогда Если Файл.ЭтоКаталог() Тогда
@@ -426,6 +427,9 @@
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
// Снимаем атрибут ТолькоЧтение для избежания ошибок при удалении.
Файл.УстановитьТолькоЧтение(Ложь);
Расширение = СтрЗаменить(НРег(Файл.Расширение), ".", ""); Расширение = СтрЗаменить(НРег(Файл.Расширение), ".", "");
Если Расширение = "htm" ИЛИ Расширение = "html" Тогда Если Расширение = "htm" ИЛИ Расширение = "html" Тогда
@@ -103,7 +103,7 @@
Пока Выборка.Следующий() Цикл Пока Выборка.Следующий() Цикл
Если Выборка.ДатаПоКалендарю = Неопределено Тогда Если Выборка.ДатаПоКалендарю = Неопределено Тогда
СообщениеОбОшибке = НСтр("ru = 'Производственный календарь «%1» не заполнен с даты %2 на указанное количество рабочих дней.'"); СообщениеОбОшибке = НСтр("ru = 'Производственный календарь ""%1"" не заполнен с даты %2 на указанное количество рабочих дней.'");
Если ВызыватьИсключение Тогда Если ВызыватьИсключение Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, Формат(ДатаОт, "ДЛФ=D")); ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, Формат(ДатаОт, "ДЛФ=D"));
Иначе Иначе
@@ -186,7 +186,7 @@
ДатыГрафика = Новый Массив; ДатыГрафика = Новый Массив;
ДатыГрафика.Добавить(ДатаНачала); ДатыГрафика.Добавить(ДатаНачала);
Если Год(ДатаНачала) <> Год(ДатаОкончания) И КонецДня(ДатаНачала) <> КонецГода(ДатаНачала) Тогда Если Год(ДатаНачала) <> Год(ДатаОкончания) И КонецДня(ДатаНачала) <> КонецГода(ДатаНачала) Тогда
// Если даты разных годов, то добавляем «границы» годов. // Если даты разных годов, то добавляем "границы" годов.
Для НомерГода = Год(ДатаНачала) По Год(ДатаОкончания) - 1 Цикл Для НомерГода = Год(ДатаНачала) По Год(ДатаОкончания) - 1 Цикл
ДатыГрафика.Добавить(Дата(НомерГода, 12, 31)); ДатыГрафика.Добавить(Дата(НомерГода, 12, 31));
КонецЦикла; КонецЦикла;
@@ -301,7 +301,7 @@
Если Результат.Пустой() Тогда Если Результат.Пустой() Тогда
Если ВызыватьИсключение Тогда Если ВызыватьИсключение Тогда
СообщениеОбОшибке = НСтр("ru = 'График работы «%1» не заполнен на период %2.'"); СообщениеОбОшибке = НСтр("ru = 'График работы ""%1"" не заполнен на период %2.'");
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, ПредставлениеПериода(ДатаНачала, КонецДня(ДатаОкончания))); ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ГрафикРаботы, ПредставлениеПериода(ДатаНачала, КонецДня(ДатаОкончания)));
Иначе Иначе
Возврат Неопределено; Возврат Неопределено;
@@ -504,7 +504,7 @@
Возврат МодульГрафикиРаботы.РасписанияРаботыНаПериод(Графики, ДатаНачала, ДатаОкончания); Возврат МодульГрафикиРаботы.РасписанияРаботыНаПериод(Графики, ДатаНачала, ДатаОкончания);
КонецЕсли; КонецЕсли;
ВызватьИсключение НСтр("ru = 'Подсистема «Графики работы» не обнаружена.'"); ВызватьИсключение НСтр("ru = 'Подсистема ""Графики работы"" не обнаружена.'");
КонецФункции КонецФункции
@@ -526,7 +526,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ВызватьИсключение НСтр("ru = 'Подсистема «Графики работы» не обнаружена.'"); ВызватьИсключение НСтр("ru = 'Подсистема ""Графики работы"" не обнаружена.'");
КонецПроцедуры КонецПроцедуры
@@ -861,7 +861,7 @@
Если ДанныеФайлов = Неопределено Тогда Если ДанныеФайлов = Неопределено Тогда
ТекстСообщения = НСтр("ru = 'Не удалось получить данные календаря. ТекстСообщения = НСтр("ru = 'Не удалось получить данные календаря.
|Классификаторы не поддерживаются или подсистема «Работа с классификаторами» отсутствует.'"); |Классификаторы не поддерживаются или подсистема ""Работа с классификаторами"" отсутствует.'");
ВызватьИсключение ТекстСообщения; ВызватьИсключение ТекстСообщения;
КонецЕсли; КонецЕсли;
@@ -8,70 +8,6 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
Функция ЭлементыФормулы(Знач Формула) Экспорт
Операнды = Новый Массив;
Функции = Новый Массив;
ЛогическиеОператоры = СтрРазделить("И,ИЛИ,НЕ", ",", Ложь);
Разделители = "()/*-+%=<>, " + Символы.Таб + Символы.ПС;
ОткрывающихСкобок = 0;
ЭтоСтрокаВКавычках = Ложь;
Операнд = "";
Для Индекс = 1 По СтрДлина(Формула) Цикл
Символ = Сред(Формула, Индекс, 1);
ЭтоРазделитель = СтрНайти(Разделители, Символ) > 0;
Если ОткрывающихСкобок = 0 И Символ = """" Тогда
ЭтоСтрокаВКавычках = Не ЭтоСтрокаВКавычках;
Продолжить;
КонецЕсли;
Если ЭтоСтрокаВКавычках Тогда
Продолжить;
КонецЕсли;
Если Символ = "[" Тогда
ОткрывающихСкобок = ОткрывающихСкобок + 1;
КонецЕсли;
Если Символ = "]" И ОткрывающихСкобок > 0 Тогда
ОткрывающихСкобок = ОткрывающихСкобок - 1;
КонецЕсли;
Если ЭтоРазделитель И ОткрывающихСкобок = 0 Тогда
Если ЗначениеЗаполнено(Операнд) Тогда
Если Символ = "(" И СтрНайти(Операнд, ".") = 0
Или ЛогическиеОператоры.Найти(ВРег(Операнд)) <> Неопределено Тогда
Функции.Добавить(Операнд);
КонецЕсли;
Если Не ОбщегоНазначенияКлиентСервер.ЭтоЧисло(Операнд) Тогда
Операнды.Добавить(Операнд);
КонецЕсли;
Операнд = "";
КонецЕсли;
Иначе
Операнд = Операнд + Символ;
КонецЕсли;
КонецЦикла;
Если ЗначениеЗаполнено(Операнд) И Не ОбщегоНазначенияКлиентСервер.ЭтоЧисло(Операнд) Тогда
Операнды.Добавить(Операнд);
КонецЕсли;
Результат = Новый Структура;
Результат.Вставить("Операнды", Операнды);
Результат.Вставить("Функции", Функции);
Возврат Результат;
КонецФункции
// Возвращаемое значение: // Возвращаемое значение:
// СтрокаТаблицыЗначений: см. КонструкторФормулСлужебный.ОписаниеСписковПолей // СтрокаТаблицыЗначений: см. КонструкторФормулСлужебный.ОписаниеСписковПолей
// //
@@ -38,7 +38,7 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ДополнительныеПараметры = Новый Структура("Порядок"); ДополнительныеПараметры = Новый Структура("Порядок,ЭтоФункция");
ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, СтрокаТаблицы); ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, СтрокаТаблицы);
ДополнительныеПараметры.Вставить("Картинка", Base64Строка(СтрокаТаблицы.Картинка.ПолучитьДвоичныеДанные())); ДополнительныеПараметры.Вставить("Картинка", Base64Строка(СтрокаТаблицы.Картинка.ПолучитьДвоичныеДанные()));
@@ -195,7 +195,73 @@
Функция ЭлементыФормулы(Знач Формула) Экспорт Функция ЭлементыФормулы(Знач Формула) Экспорт
Возврат КонструкторФормулКлиентСервер.ЭлементыФормулы(Формула); ВсеЭлементы = Новый Массив;
ОперандыИФункции = Новый Соответствие;
ЛогическиеОператоры = СтрРазделить("И,ИЛИ,НЕ", ",", Ложь);
Разделители = "()/*-+%=<>, " + Символы.Таб + Символы.ПС;
ОткрывающихСкобок = 0;
ЭтоСтрокаВКавычках = Ложь;
Операнд = "";
Для Индекс = 1 По СтрДлина(Формула) Цикл
Символ = Сред(Формула, Индекс, 1);
ЭтоРазделитель = СтрНайти(Разделители, Символ) > 0;
Если ОткрывающихСкобок = 0 И Символ = """" Тогда
ЭтоСтрокаВКавычках = Не ЭтоСтрокаВКавычках;
ВсеЭлементы.Добавить(Символ);
Продолжить;
КонецЕсли;
Если ЭтоСтрокаВКавычках Тогда
ВсеЭлементы.Добавить(Символ);
Продолжить;
КонецЕсли;
Если Символ = "[" Тогда
ОткрывающихСкобок = ОткрывающихСкобок + 1;
КонецЕсли;
Если Символ = "]" И ОткрывающихСкобок > 0 Тогда
ОткрывающихСкобок = ОткрывающихСкобок - 1;
КонецЕсли;
Если ЭтоРазделитель И ОткрывающихСкобок = 0 Тогда
Если ЗначениеЗаполнено(Операнд) Тогда
ЭтоФункция = Ложь;
Если Символ = "(" И СтрНайти(Операнд, ".") = 0
Или ЛогическиеОператоры.Найти(ВРег(Операнд)) <> Неопределено Тогда
ЭтоФункция = Истина;
КонецЕсли;
Если ЭтоФункция Или Не ОбщегоНазначенияКлиентСервер.ЭтоЧисло(Операнд) Тогда
ОперандыИФункции.Вставить(ВсеЭлементы.ВГраница() + 1, ЭтоФункция);
КонецЕсли;
ВсеЭлементы.Добавить(Операнд);
Операнд = "";
КонецЕсли;
ВсеЭлементы.Добавить(Символ);
Иначе
Операнд = Операнд + Символ;
КонецЕсли;
КонецЦикла;
Если ЗначениеЗаполнено(Операнд) И Не ОбщегоНазначенияКлиентСервер.ЭтоЧисло(Операнд) Тогда
ОперандыИФункции.Вставить(ВсеЭлементы.ВГраница() + 1, Ложь);
КонецЕсли;
ВсеЭлементы.Добавить(Операнд);
Результат = Новый Структура;
Результат.Вставить("ВсеЭлементы", ВсеЭлементы);
Результат.Вставить("ОперандыИФункции", ОперандыИФункции);
Возврат Результат;
КонецФункции КонецФункции
@@ -212,45 +278,47 @@
Функция ПроверитьФормулу(Форма, ПредставлениеФормулы) Экспорт Функция ПроверитьФормулу(Форма, ПредставлениеФормулы) Экспорт
ЭлементыФормулы = КонструкторФормулКлиентСервер.ЭлементыФормулы(ПредставлениеФормулы); ЭлементыФормулы = ЭлементыФормулы(ПредставлениеФормулы);
Выражение = ПредставлениеФормулы;
НайденныеОперанды = Новый Соответствие; РаспознанныеЭлементы = Новый Соответствие;
Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл
ИмяСпискаПолей = Элемент.ИмяСпискаПолей; ИмяСпискаПолей = Элемент.ИмяСпискаПолей;
КоллекцияПолей = Форма[ИмяСпискаПолей]; КоллекцияПолей = Форма[ИмяСпискаПолей];
СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов; СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов;
Для Каждого ПредставлениеОперанда Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
ПредставлениеОперанда = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
ЭтоФункция = ОписаниеЭлемента.Значение;
ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда); ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда);
Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина); Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина);
Если Реквизит <> Неопределено Тогда Если Реквизит <> Неопределено Тогда
Если ЭтоФункция <> Реквизит.ЭтоФункция Тогда
Продолжить;
КонецЕсли;
Операнд = Реквизит.ПутьКДанным; Операнд = Реквизит.ПутьКДанным;
Если СкобкиИдентификаторов Тогда Если СкобкиИдентификаторов Тогда
Операнд = ОбернутьВКвадратныеСкобки(Операнд); Операнд = ОбернутьВКвадратныеСкобки(Операнд);
КонецЕсли; КонецЕсли;
НайденныеОперанды.Вставить(ПредставлениеОперанда, Операнд); РаспознанныеЭлементы.Вставить(ОписаниеЭлемента.Ключ, Операнд);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
Ошибки = Новый Массив; Ошибки = Новый Массив;
Для Каждого Операнд Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
Позиция = СтрНайти(Выражение, Операнд); Операнд = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
Если Позиция = 0 Тогда ЭтоФункция = ОписаниеЭлемента.Значение;
Продолжить;
КонецЕсли;
Если НайденныеОперанды[Операнд] = Неопределено Тогда Если РаспознанныеЭлементы[ОписаниеЭлемента.Ключ] = Неопределено Тогда
Если ЭлементыФормулы.Функции.Найти(Операнд) = Неопределено Тогда Если ЭтоФункция Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Поле %1 не найдено в списке доступных полей'"), НСтр("ru = 'Неизвестная функция в выражении - ""%1""'"),
Операнд); Операнд);
Иначе Иначе
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Неизвестная функция в выражении - ""%1""'"), НСтр("ru = 'Поле %1 не найдено в списке доступных полей'"),
Операнд); Операнд);
КонецЕсли; КонецЕсли;
Ошибки.Добавить(ТекстОшибки); Ошибки.Добавить(ТекстОшибки);
@@ -478,6 +546,7 @@
Результат.Колонки.Добавить("Картинка", Новый ОписаниеТипов("Картинка")); Результат.Колонки.Добавить("Картинка", Новый ОписаниеТипов("Картинка"));
Результат.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число")); Результат.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число"));
Результат.Колонки.Добавить("Формат", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("Формат", Новый ОписаниеТипов("Строка"));
Результат.Колонки.Добавить("ЭтоФункция", Новый ОписаниеТипов("Булево"));
Возврат Результат; Возврат Результат;
@@ -494,6 +563,7 @@
Результат.Колонки.Добавить("Папка", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("Папка", Новый ОписаниеТипов("Булево"));
Результат.Колонки.Добавить("Таблица", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("Таблица", Новый ОписаниеТипов("Булево"));
Результат.Колонки.Добавить("Формат", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("Формат", Новый ОписаниеТипов("Строка"));
Результат.Колонки.Добавить("ЭтоФункция", Новый ОписаниеТипов("Булево"));
Возврат Результат; Возврат Результат;
@@ -607,6 +677,8 @@
Реквизит.Папка = Реквизит.ЭтоГруппа; Реквизит.Папка = Реквизит.ЭтоГруппа;
КонецЕсли; КонецЕсли;
Реквизит.ЭтоФункция = ДополнительныеПараметры["ЭтоФункция"];
Если Не ЗначениеЗаполнено(Реквизит.Картинка) Тогда Если Не ЗначениеЗаполнено(Реквизит.Картинка) Тогда
Реквизит.Картинка = КартинкаТипа(ОписаниеПоля.Тип); Реквизит.Картинка = КартинкаТипа(ОписаниеПоля.Тип);
@@ -1475,7 +1547,7 @@
Поле.Поле = Элемент.Идентификатор; Поле.Поле = Элемент.Идентификатор;
ЭтоГруппа = Элемент.Строки.Количество() > 0 И Не ЗначениеЗаполнено(Элемент.ТипЗначения); ЭтоГруппа = Элемент.Строки.Количество() > 0 И Не ЗначениеЗаполнено(Элемент.ТипЗначения);
ДополнительныеПараметры = Новый Структура("Порядок,ЭтоГруппа"); ДополнительныеПараметры = Новый Структура("Порядок,ЭтоГруппа,ЭтоФункция");
ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, Элемент); ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, Элемент);
ДополнительныеПараметры.ЭтоГруппа = ЭтоГруппа; ДополнительныеПараметры.ЭтоГруппа = ЭтоГруппа;
ДополнительныеПараметры.Вставить("Картинка", Base64Строка(Элемент.Картинка.ПолучитьДвоичныеДанные())); ДополнительныеПараметры.Вставить("Картинка", Base64Строка(Элемент.Картинка.ПолучитьДвоичныеДанные()));
@@ -1509,68 +1581,81 @@
Функция ФормулаИзПредставления(Форма, ПредставлениеФормулы) Экспорт Функция ФормулаИзПредставления(Форма, ПредставлениеФормулы) Экспорт
ЭлементыФормулы = КонструкторФормулКлиентСервер.ЭлементыФормулы(ПредставлениеФормулы); ЭлементыФормулы = ЭлементыФормулы(ПредставлениеФормулы);
Выражение = ПредставлениеФормулы; Выражение = ПредставлениеФормулы;
ЗаменяемыеЭлементы = Новый Соответствие;
НайденныеОперанды = Новый Соответствие;
Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл
ИмяСпискаПолей = Элемент.ИмяСпискаПолей; ИмяСпискаПолей = Элемент.ИмяСпискаПолей;
КоллекцияПолей = Форма[ИмяСпискаПолей]; КоллекцияПолей = Форма[ИмяСпискаПолей];
СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов; СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов;
Для Каждого ПредставлениеОперанда Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
ПредставлениеОперанда = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
ЭтоФункция = ОписаниеЭлемента.Значение;
ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда); ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда);
Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина); Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина);
Если Реквизит <> Неопределено Тогда Если Реквизит <> Неопределено Тогда
Операнд = Реквизит.ПутьКДанным; Если ЭтоФункция <> Реквизит.ЭтоФункция Тогда
Продолжить;
КонецЕсли;
Операнд = ОчиститьКвадратныеСкобки(Реквизит.ПутьКДанным);
Если СкобкиИдентификаторов Тогда Если СкобкиИдентификаторов Тогда
Операнд = ОбернутьВКвадратныеСкобки(Операнд); Операнд = ОбернутьВКвадратныеСкобки(Операнд);
КонецЕсли; КонецЕсли;
НайденныеОперанды.Вставить(ПредставлениеОперанда, Операнд); ЗаменяемыеЭлементы.Вставить(ОписаниеЭлемента.Ключ, Операнд);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, НайденныеОперанды); ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, ЗаменяемыеЭлементы);
Возврат Выражение; Возврат Выражение;
КонецФункции КонецФункции
Функция ПредставлениеФормулы(Форма, Формула) Экспорт Функция ПредставлениеФормулы(Форма, Формула) Экспорт
ЭлементыФормулы = КонструкторФормулКлиентСервер.ЭлементыФормулы(Формула); ЭлементыФормулы = ЭлементыФормулы(Формула);
Выражение = Формула; Выражение = Формула;
НайденныеОперанды = Новый Соответствие; ЗаменяемыеЭлементы = Новый Соответствие;
Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл
ИмяСпискаПолей = Элемент.ИмяСпискаПолей; ИмяСпискаПолей = Элемент.ИмяСпискаПолей;
КоллекцияПолей = Форма[ИмяСпискаПолей]; КоллекцияПолей = Форма[ИмяСпискаПолей];
СкобкиПредставлений = Элемент.СкобкиПредставлений; СкобкиПредставлений = Элемент.СкобкиПредставлений;
Для Каждого Операнд Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
Операнд = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
ЭтоФункция = ОписаниеЭлемента.Значение;
ПутьКДанным = ОчиститьКвадратныеСкобки(Операнд); ПутьКДанным = ОчиститьКвадратныеСкобки(Операнд);
Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Ложь); Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Ложь);
Если Реквизит <> Неопределено Тогда Если Реквизит <> Неопределено Тогда
Если ЭтоФункция <> Реквизит.ЭтоФункция Тогда
Продолжить;
КонецЕсли;
ПредставлениеОперанда = Реквизит.ПредставлениеПутиКДанным; ПредставлениеОперанда = Реквизит.ПредставлениеПутиКДанным;
Если СкобкиПредставлений Тогда Если СкобкиПредставлений Тогда
ПредставлениеОперанда = ОбернутьВКвадратныеСкобки(Реквизит.ПредставлениеПутиКДанным); ПредставлениеОперанда = ОбернутьВКвадратныеСкобки(Реквизит.ПредставлениеПутиКДанным);
КонецЕсли; КонецЕсли;
НайденныеОперанды.Вставить(Операнд, ПредставлениеОперанда); ЗаменяемыеЭлементы.Вставить(ОписаниеЭлемента.Ключ, ПредставлениеОперанда);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, НайденныеОперанды); ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, ЗаменяемыеЭлементы);
Возврат Выражение; Возврат Выражение;
КонецФункции КонецФункции
Функция ПредставлениеВыражения(Знач Выражение, СпискиПолей) Экспорт Функция ПредставлениеВыражения(Знач Выражение, СпискиПолей) Экспорт
ЭлементыФормулы = КонструкторФормулКлиентСервер.ЭлементыФормулы(Выражение); ЭлементыФормулы = ЭлементыФормулы(Выражение);
Результат = Выражение; Результат = Выражение;
НайденныеПоля = Новый Соответствие; ЗаменяемыеЭлементы = Новый Соответствие;
Для Каждого НастройкиСписка Из СпискиПолей Цикл Для Каждого НастройкиСписка Из СпискиПолей Цикл
КоллекцияПолей = НастройкиСписка.КоллекцияПолей; КоллекцияПолей = НастройкиСписка.КоллекцияПолей;
@@ -1580,20 +1665,27 @@
ЗаполнитьСписокДоступныхРеквизитов(КоллекцияПолей, ИсточникиДоступныхПолей, , НастройкиСписка); ЗаполнитьСписокДоступныхРеквизитов(КоллекцияПолей, ИсточникиДоступныхПолей, , НастройкиСписка);
КонецЕсли; КонецЕсли;
Для Каждого Операнд Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
Операнд = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
ЭтоФункция = ОписаниеЭлемента.Значение;
ПутьКДанным = ОчиститьКвадратныеСкобки(Операнд); ПутьКДанным = ОчиститьКвадратныеСкобки(Операнд);
Реквизит = НайтиПоле(ПутьКДанным, ПодчиненныеЭлементы(КоллекцияПолей), Ложь, ИсточникиДоступныхПолей, НастройкиСписка); Реквизит = НайтиПоле(ПутьКДанным, ПодчиненныеЭлементы(КоллекцияПолей), Ложь, ИсточникиДоступныхПолей, НастройкиСписка);
Если Реквизит <> Неопределено Тогда Если Реквизит <> Неопределено Тогда
Если ЭтоФункция <> Реквизит.ЭтоФункция Тогда
Продолжить;
КонецЕсли;
ПредставлениеОперанда = Реквизит.ПредставлениеПутиКДанным; ПредставлениеОперанда = Реквизит.ПредставлениеПутиКДанным;
Если НастройкиСписка.СкобкиПредставлений Тогда Если НастройкиСписка.СкобкиПредставлений Тогда
ПредставлениеОперанда = ОбернутьВКвадратныеСкобки(Реквизит.ПредставлениеПутиКДанным); ПредставлениеОперанда = ОбернутьВКвадратныеСкобки(Реквизит.ПредставлениеПутиКДанным);
КонецЕсли; КонецЕсли;
НайденныеПоля.Вставить(Операнд, ПредставлениеОперанда); ЗаменяемыеЭлементы.Вставить(ОписаниеЭлемента.Ключ, ПредставлениеОперанда);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
ЗаменитьЭлементыФормулы(Результат, ЭлементыФормулы, НайденныеПоля); ЗаменитьЭлементыФормулы(Результат, ЭлементыФормулы, ЗаменяемыеЭлементы);
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
@@ -1622,20 +1714,26 @@
Функция ВыражениеДляПроверки(Форма, ПредставлениеФормулы, ИмяСпискаОперандов) Экспорт Функция ВыражениеДляПроверки(Форма, ПредставлениеФормулы, ИмяСпискаОперандов) Экспорт
ЭлементыФормулы = КонструкторФормулКлиентСервер.ЭлементыФормулы(ПредставлениеФормулы); ЭлементыФормулы = ЭлементыФормулы(ПредставлениеФормулы);
Выражение = ПредставлениеФормулы; Выражение = ПредставлениеФормулы;
ЗаменяемыеЭлементы = Новый Соответствие;
НайденныеОперанды = Новый Соответствие;
Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл Для Каждого Элемент Из Форма.ПодключенныеСпискиПолей Цикл
ИмяСпискаПолей = Элемент.ИмяСпискаПолей; ИмяСпискаПолей = Элемент.ИмяСпискаПолей;
КоллекцияПолей = Форма[ИмяСпискаПолей]; КоллекцияПолей = Форма[ИмяСпискаПолей];
СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов; СкобкиИдентификаторов = Элемент.СкобкиИдентификаторов;
Для Каждого ПредставлениеОперанда Из ЭлементыФормулы.Операнды Цикл Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
ПредставлениеОперанда = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
ЭтоФункция = ОписаниеЭлемента.Значение;
ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда); ПутьКДанным = ОчиститьКвадратныеСкобки(ПредставлениеОперанда);
Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина); Реквизит = НайтиРеквизит(Форма, ИмяСпискаПолей, ПутьКДанным, КоллекцияПолей.ПолучитьЭлементы(), Истина);
Если Реквизит <> Неопределено Тогда Если Реквизит <> Неопределено Тогда
Если ЭтоФункция <> Реквизит.ЭтоФункция Тогда
Продолжить;
КонецЕсли;
Если ИмяСпискаОперандов = ИмяСпискаПолей Тогда Если ИмяСпискаОперандов = ИмяСпискаПолей Тогда
Операнд = Реквизит.Тип.ПривестиЗначение(1); Операнд = Реквизит.Тип.ПривестиЗначение(1);
Если ТипЗнч(Операнд) = Тип("Строка") Тогда Если ТипЗнч(Операнд) = Тип("Строка") Тогда
@@ -1657,35 +1755,26 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
НайденныеОперанды.Вставить(ПредставлениеОперанда, Операнд); ЗаменяемыеЭлементы.Вставить(ОписаниеЭлемента.Ключ, Операнд);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, НайденныеОперанды); ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, ЗаменяемыеЭлементы);
Выражение = ФорматироватьЧисла(Выражение); Выражение = ФорматироватьЧисла(Выражение);
Возврат Выражение; Возврат Выражение;
КонецФункции КонецФункции
Процедура ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, Значения) Экспорт Процедура ЗаменитьЭлементыФормулы(Выражение, ЭлементыФормулы, Значения)
ЧастиСтроки = Новый Массив; Для Каждого ОписаниеЭлемента Из ЭлементыФормулы.ОперандыИФункции Цикл
Операнд = ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ];
Для Каждого Операнд Из ЭлементыФормулы.Операнды Цикл ЭтоФункция = ОписаниеЭлемента.Значение;
Позиция = СтрНайти(Выражение, Операнд); Значение = Значения[ОписаниеЭлемента.Ключ];
Если Позиция = 0 Тогда
Продолжить;
КонецЕсли;
Если Позиция > 1 Тогда
ЧастиСтроки.Добавить(Лев(Выражение, Позиция - 1));
КонецЕсли;
Значение = Значения[Операнд];
Если Значение = Неопределено Тогда Если Значение = Неопределено Тогда
Если ЭлементыФормулы.Функции.Найти(Операнд) <> Неопределено Если ЭтоФункция
И Не СтрЗаканчиваетсяНа(Операнд, СуффиксОтключеннойФункции()) Тогда И Не СтрЗаканчиваетсяНа(Операнд, СуффиксОтключеннойФункции()) Тогда
Значение = Операнд + СуффиксОтключеннойФункции(); Значение = Операнд + СуффиксОтключеннойФункции();
Иначе Иначе
@@ -1693,13 +1782,10 @@
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ЧастиСтроки.Добавить(Значение); ЭлементыФормулы.ВсеЭлементы[ОписаниеЭлемента.Ключ] = Значение;
Выражение = Сред(Выражение, Позиция + СтрДлина(Операнд));
КонецЦикла; КонецЦикла;
ЧастиСтроки.Добавить(Выражение); Выражение = СтрСоединить(ЭлементыФормулы.ВсеЭлементы);
Выражение = СтрСоединить(ЧастиСтроки);
КонецПроцедуры КонецПроцедуры
@@ -1827,6 +1913,7 @@
Результат.Вставить("СоответствуетОтбору", Новый ОписаниеТипов("Булево")); Результат.Вставить("СоответствуетОтбору", Новый ОписаниеТипов("Булево"));
Результат.Вставить("ПодчиненныйЭлементСоответствуетОтбору", Новый ОписаниеТипов("Булево")); Результат.Вставить("ПодчиненныйЭлементСоответствуетОтбору", Новый ОписаниеТипов("Булево"));
Результат.Вставить("ЭтоГруппа", Новый ОписаниеТипов("Булево")); Результат.Вставить("ЭтоГруппа", Новый ОписаниеТипов("Булево"));
Результат.Вставить("ЭтоФункция", Новый ОписаниеТипов("Булево"));
Возврат Результат; Возврат Результат;
@@ -2001,10 +2088,10 @@
Тип = Новый ОписаниеТипов("Число"); Тип = Новый ОписаниеТипов("Число");
ДобавитьОператорВГруппу(Группа, "Макс", НСтр("ru = 'Максимум'"), Тип); ДобавитьОператорВГруппу(Группа, "Макс", НСтр("ru = 'Максимум'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "Мин", НСтр("ru = 'Минимум'"), Тип); ДобавитьОператорВГруппу(Группа, "Мин", НСтр("ru = 'Минимум'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "Окр", НСтр("ru = 'Округлить'"), Тип); ДобавитьОператорВГруппу(Группа, "Окр", НСтр("ru = 'Округлить'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "Цел", НСтр("ru = 'ЦелаяЧасть'"), Тип); ДобавитьОператорВГруппу(Группа, "Цел", НСтр("ru = 'ЦелаяЧасть'"), Тип, Истина);
КонецПроцедуры КонецПроцедуры
@@ -2018,17 +2105,19 @@
Тип = Новый ОписаниеТипов("Строка"); Тип = Новый ОписаниеТипов("Строка");
ДобавитьОператорВГруппу(Группа, "Строка", НСтр("ru = 'ПреобразоватьВСтроку'"), Тип); // В НСтр переводимые на другие языки идентификаторы.
ДобавитьОператорВГруппу(Группа, "ВРег", НСтр("ru = 'ВсеПрописные'"), Тип);
ДобавитьОператорВГруппу(Группа, "НРег", НСтр("ru = 'ВсеСтрочные'"), Тип); ДобавитьОператорВГруппу(Группа, "Строка", НСтр("ru = 'ПреобразоватьВСтроку'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "ТРег", НСтр("ru = 'КаждоеСловоСПрописной'"), Тип); ДобавитьОператорВГруппу(Группа, "ВРег", НСтр("ru = 'ВсеПрописные'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "Лев", НСтр("ru = 'СимволыСлева'"), Тип); ДобавитьОператорВГруппу(Группа, "НРег", НСтр("ru = 'ВсеСтрочные'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "Прав", НСтр("ru = 'СимволыСправа'"), Тип); ДобавитьОператорВГруппу(Группа, "ТРег", НСтр("ru = 'КаждоеСловоСПрописной'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СокрЛ", НСтр("ru = 'УбратьПробелыСлева'"), Тип); ДобавитьОператорВГруппу(Группа, "Лев", НСтр("ru = 'СимволыСлева'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СокрЛП", НСтр("ru = 'УбратьПробелыСлеваИСправа'"), Тип); ДобавитьОператорВГруппу(Группа, "Прав", НСтр("ru = 'СимволыСправа'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СокрП", НСтр("ru = 'УбратьПробелыСправа'"), Тип); ДобавитьОператорВГруппу(Группа, "СокрЛ", НСтр("ru = 'УбратьПробелыСлева'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СтрЗаменить", НСтр("ru = 'ЗаменитьСимволыВСтроке'"), Тип); ДобавитьОператорВГруппу(Группа, "СокрЛП", НСтр("ru = 'УбратьПробелыСлеваИСправа'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СтрДлина", НСтр("ru = 'ДлинаСтроки'"), Новый ОписаниеТипов("Число")); ДобавитьОператорВГруппу(Группа, "СокрП", НСтр("ru = 'УбратьПробелыСправа'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СтрЗаменить", НСтр("ru = 'ЗаменитьСимволыВСтроке'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СтрДлина", НСтр("ru = 'ДлинаСтроки'"), Новый ОписаниеТипов("Число"), Истина);
КонецПроцедуры КонецПроцедуры
@@ -2040,14 +2129,14 @@
Группа.Порядок = 6; Группа.Порядок = 6;
Группа.Картинка = БиблиотекаКартинок.ТипФункция; Группа.Картинка = БиблиотекаКартинок.ТипФункция;
ДобавитьОператорВГруппу(Группа, "?", НСтр("ru = 'Условие'"), Новый ОписаниеТипов("Булево")); ДобавитьОператорВГруппу(Группа, "?", НСтр("ru = 'Условие'"), Новый ОписаниеТипов("Булево"), Истина);
ДобавитьОператорВГруппу(Группа, "ПредопределенноеЗначение", НСтр("ru = 'ПредопределенноеЗначение'"), Новый ОписаниеТипов); ДобавитьОператорВГруппу(Группа, "ПредопределенноеЗначение", НСтр("ru = 'ПредопределенноеЗначение'"), Новый ОписаниеТипов, Истина);
ДобавитьОператорВГруппу(Группа, "ЗначениеЗаполнено", НСтр("ru = 'ЗначениеЗаполнено'"), Новый ОписаниеТипов("Булево")); ДобавитьОператорВГруппу(Группа, "ЗначениеЗаполнено", НСтр("ru = 'ЗначениеЗаполнено'"), Новый ОписаниеТипов("Булево"), Истина);
ДобавитьОператорВГруппу(Группа, "Формат", НСтр("ru = 'Формат'"), Новый ОписаниеТипов("Строка")); ДобавитьОператорВГруппу(Группа, "Формат", НСтр("ru = 'Формат'"), Новый ОписаниеТипов("Строка"), Истина);
КонецПроцедуры КонецПроцедуры
Процедура ДобавитьОператорВГруппу(Группа, Идентификатор, Знач Представление = Неопределено, Тип = Неопределено) Процедура ДобавитьОператорВГруппу(Группа, Идентификатор, Знач Представление = Неопределено, Тип = Неопределено, ЭтоФункция = Ложь)
Если Представление = Неопределено Тогда Если Представление = Неопределено Тогда
Представление = Идентификатор; Представление = Идентификатор;
@@ -2058,6 +2147,7 @@
Оператор.Представление = Представление; Оператор.Представление = Представление;
Оператор.ТипЗначения = Тип; Оператор.ТипЗначения = Тип;
Оператор.Картинка = БиблиотекаКартинок.Пустая; Оператор.Картинка = БиблиотекаКартинок.Пустая;
Оператор.ЭтоФункция = ЭтоФункция;
КонецПроцедуры КонецПроцедуры
@@ -2088,7 +2178,7 @@
ДобавитьОператорВГруппу(Группа, Идентификатор, , Тип); ДобавитьОператорВГруппу(Группа, Идентификатор, , Тип);
КонецЦикла; КонецЦикла;
ДобавитьОператорВГруппу(Группа, "В", НСтр("ru = 'В'"), Тип); ДобавитьОператорВГруппу(Группа, "В", НСтр("ru = 'В'"), Тип, Истина);
КонецПроцедуры КонецПроцедуры
@@ -2117,11 +2207,11 @@
Тип = Новый ОписаниеТипов("Число"); Тип = Новый ОписаниеТипов("Число");
ДобавитьОператорВГруппу(Группа, "СУММА", НСтр("ru = 'СУММА'"), Тип); ДобавитьОператорВГруппу(Группа, "СУММА", НСтр("ru = 'СУММА'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "КОЛИЧЕСТВО", НСтр("ru = 'КОЛИЧЕСТВО'"), Тип); ДобавитьОператорВГруппу(Группа, "КОЛИЧЕСТВО", НСтр("ru = 'КОЛИЧЕСТВО'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "МАКСИМУМ", НСтр("ru = 'МАКСИМУМ'"), Тип); ДобавитьОператорВГруппу(Группа, "МАКСИМУМ", НСтр("ru = 'МАКСИМУМ'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "МИНИМУМ", НСтр("ru = 'МИНИМУМ'"), Тип); ДобавитьОператорВГруппу(Группа, "МИНИМУМ", НСтр("ru = 'МИНИМУМ'"), Тип, Истина);
ДобавитьОператорВГруппу(Группа, "СРЕДНЕЕ", НСтр("ru = 'СРЕДНЕЕ'"), Тип); ДобавитьОператорВГруппу(Группа, "СРЕДНЕЕ", НСтр("ru = 'СРЕДНЕЕ'"), Тип, Истина);
КонецПроцедуры КонецПроцедуры
@@ -1842,7 +1842,7 @@
КонецПроцедуры КонецПроцедуры
// См. КонтрольВеденияУчетаПереопределяемый.ПроверкаПоИдентификатору. // См. КонтрольВеденияУчета.ПроверкаПоИдентификатору.
Функция ПроверкаПоИдентификатору(Идентификатор) Экспорт Функция ПроверкаПоИдентификатору(Идентификатор) Экспорт
Запрос = Новый Запрос( Запрос = Новый Запрос(
@@ -1865,7 +1865,7 @@
КонецФункции КонецФункции
// См. КонтрольВеденияУчетаПереопределяемый.ВыполнитьПроверкиВКонтексте. // См. КонтрольВеденияУчета.ВыполнитьПроверкиВКонтексте.
Функция ПроверкиПоКонтексту(КонтекстПроверокВеденияУчета) Экспорт Функция ПроверкиПоКонтексту(КонтекстПроверокВеденияУчета) Экспорт
Запрос = Новый Запрос( Запрос = Новый Запрос(
@@ -2044,33 +2044,33 @@
Если ЕстьОграничениеПоДате Тогда Если ЕстьОграничениеПоДате Тогда
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Ссылка КАК ПроблемныйОбъект, | ПсевдонимЗаданнойТаблицы.Ссылка КАК ПроблемныйОбъект,
| &СсылочныеРеквизиты | &СсылочныеРеквизиты
| ,&РеквизитыТабличныхЧастей | ,&РеквизитыТабличныхЧастей
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| И ИмяТаблицы.Дата > &ДатаНачалаПроверки | И ПсевдонимЗаданнойТаблицы.Дата > &ДатаНачалаПроверки
| И НЕ ИмяТаблицы.ПометкаУдаления | И НЕ ПсевдонимЗаданнойТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ПсевдонимЗаданнойТаблицы.Ссылка";
Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки); Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки);
Иначе Иначе
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Ссылка КАК ПроблемныйОбъект, | ПсевдонимЗаданнойТаблицы.Ссылка КАК ПроблемныйОбъект,
| &СсылочныеРеквизиты | &СсылочныеРеквизиты
| ,&РеквизитыТабличныхЧастей | ,&РеквизитыТабличныхЧастей
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| И НЕ ИмяТаблицы.ПометкаУдаления | И НЕ ПсевдонимЗаданнойТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ПсевдонимЗаданнойТаблицы.Ссылка";
КонецЕсли; КонецЕсли;
ИмяТаблицы = СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", ""); ИмяТаблицы = СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", "");
@@ -2082,7 +2082,7 @@
Запрос.УстановитьПараметр("Ссылка", ""); Запрос.УстановитьПараметр("Ссылка", "");
КонецЕсли; КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", Условие); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", Условие);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя()); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя());
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&СсылочныеРеквизиты", СтрСоединить(СсылочныеРеквизиты, ",")); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&СсылочныеРеквизиты", СтрСоединить(СсылочныеРеквизиты, ","));
@@ -2445,19 +2445,19 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка, | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка,
| ИмяТаблицы.Период КАК Период | ПсевдонимЗаданнойТаблицы.Период КАК Период
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Период > &ДатаНачалаПроверки | ПсевдонимЗаданнойТаблицы.Период > &ДатаНачалаПроверки
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.Период, | ПсевдонимЗаданнойТаблицы.Период,
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Период"); | ПсевдонимЗаданнойТаблицы.Период");
Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки); Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки);
@@ -2465,24 +2465,24 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Регистратор > &Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор > &Регистратор
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Регистратор"); | ПсевдонимЗаданнойТаблицы.Регистратор");
Запрос.УстановитьПараметр("Регистратор", ""); Запрос.УстановитьПараметр("Регистратор", "");
КонецЕсли; КонецЕсли;
ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", ""); ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", "");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ИмяТаблицы); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя);
Результат = Запрос.Выполнить().Выгрузить(); Результат = Запрос.Выполнить().Выгрузить();
@@ -2558,14 +2558,14 @@
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Период КАК Период, | ПсевдонимЗаданнойТаблицы.Период КАК Период,
| &ПоляВыборки КАК ПоляВыборки | &ПоляВыборки КАК ПоляВыборки
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| (ИмяТаблицы.Период > &Период | (ПсевдонимЗаданнойТаблицы.Период > &Период
| И НЕ &ТолькоУказанныйПериод | И НЕ &ТолькоУказанныйПериод
| ИЛИ ИмяТаблицы.Период = &Период | ИЛИ ПсевдонимЗаданнойТаблицы.Период = &Период
| И &ТолькоУказанныйПериод) | И &ТолькоУказанныйПериод)
| И &Условие | И &Условие
| |
@@ -2575,7 +2575,7 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя()); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя());
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина"); ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина");
ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям); ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям);
@@ -2680,7 +2680,7 @@
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| &ПоляВыборки КАК ПоляВыборки | &ПоляВыборки КАК ПоляВыборки
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| |
@@ -2690,7 +2690,7 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя()); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя());
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина"); ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина");
ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям); ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям);
@@ -3059,7 +3059,7 @@
Для Каждого Измерение Из Измерения Цикл Для Каждого Измерение Из Измерения Цикл
ИмяИзмерения = Измерение.Имя; ИмяИзмерения = Измерение.Имя;
ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "") ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "")
+ "ИмяТаблицы" + "." + ИмяИзмерения + " Как " + ИмяИзмерения + "ИзмерениеСсылка"; + "ПсевдонимЗаданнойТаблицы" + "." + ИмяИзмерения + " Как " + ИмяИзмерения + "ИзмерениеСсылка";
ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(), ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(),
Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных", Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных",
"Измерение", НСтр("ru = 'измерении'"), ИмяИзмерения)); "Измерение", НСтр("ru = 'измерении'"), ИмяИзмерения));
@@ -3071,7 +3071,7 @@
Для Каждого Ресурс Из Ресурсы Цикл Для Каждого Ресурс Из Ресурсы Цикл
ИмяРесурса = Ресурс.Имя; ИмяРесурса = Ресурс.Имя;
ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "") ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "")
+ "ИмяТаблицы" + "." + ИмяРесурса + " Как " + ИмяРесурса + "РесурсСсылка"; + "ПсевдонимЗаданнойТаблицы" + "." + ИмяРесурса + " Как " + ИмяРесурса + "РесурсСсылка";
ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(), ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(),
Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных", Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных",
"Ресурс", НСтр("ru = 'ресурсе'"), ИмяРесурса)); "Ресурс", НСтр("ru = 'ресурсе'"), ИмяРесурса));
@@ -3083,7 +3083,7 @@
Для Каждого Реквизит Из Реквизиты Цикл Для Каждого Реквизит Из Реквизиты Цикл
ИмяРеквизита = Реквизит.Имя; ИмяРеквизита = Реквизит.Имя;
ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "") ПоляВыборки = ПоляВыборки + ?(ЗначениеЗаполнено(ПоляВыборки), ",", "")
+ "ИмяТаблицы" + "." + ИмяРеквизита + " Как " + ИмяРеквизита + "РеквизитСсылка"; + "ПсевдонимЗаданнойТаблицы" + "." + ИмяРеквизита + " Как " + ИмяРеквизита + "РеквизитСсылка";
ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(), ЗаполнитьЗначенияСвойств(ИнформацияОРегистре.Добавить(),
Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных", Новый Структура("ТипМетаданныхВИменительномПадеже, ТипМетаданныхВТворительномПадеже, ИмяМетаданных",
"Реквизит", НСтр("ru = 'реквизите'"), ИмяРеквизита)); "Реквизит", НСтр("ru = 'реквизите'"), ИмяРеквизита));
@@ -3120,15 +3120,15 @@
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Ссылка КАК ПроблемныйОбъект | ПсевдонимЗаданнойТаблицы.Ссылка КАК ПроблемныйОбъект
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| И НЕ ИмяТаблицы.ПометкаУдаления | И НЕ ПсевдонимЗаданнойТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ПсевдонимЗаданнойТаблицы.Ссылка";
ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", ""); ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", "");
Если ПараметрыПроверки.Свойство("ПроверяемыеОбъекты") И ПараметрыПроверки.ПроверяемыеОбъекты <> Неопределено Тогда Если ПараметрыПроверки.Свойство("ПроверяемыеОбъекты") И ПараметрыПроверки.ПроверяемыеОбъекты <> Неопределено Тогда
@@ -3139,7 +3139,7 @@
Запрос.УстановитьПараметр("Ссылка", ""); Запрос.УстановитьПараметр("Ссылка", "");
КонецЕсли; КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", Условие); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", Условие);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя);
@@ -3257,21 +3257,21 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка, | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка,
| ИмяТаблицы.ПериодРегистрации КАК Период | ПсевдонимЗаданнойТаблицы.ПериодРегистрации КАК Период
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.ПериодРегистрации > &ДатаНачалаПроверки | ПсевдонимЗаданнойТаблицы.ПериодРегистрации > &ДатаНачалаПроверки
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.ПериодРегистрации, | ПсевдонимЗаданнойТаблицы.ПериодРегистрации,
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.ПериодРегистрации"); | ПсевдонимЗаданнойТаблицы.ПериодРегистрации");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ИмяТаблицы); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя);
Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки); Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки);
@@ -3279,19 +3279,19 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ "ВЫБРАТЬ
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка, | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка,
| ИмяТаблицы.Период КАК Период | ПсевдонимЗаданнойТаблицы.Период КАК Период
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.Период, | ПсевдонимЗаданнойТаблицы.Период,
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Период"); | ПсевдонимЗаданнойТаблицы.Период");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ИмяТаблицы); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных",
ПолноеИмя + ".ДвиженияССубконто(, , Период > &ДатаНачалаПроверки И Регистратор > &Регистратор, , 1000)"); ПолноеИмя + ".ДвиженияССубконто(, , Период > &ДатаНачалаПроверки И Регистратор > &Регистратор, , 1000)");
Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки); Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки);
@@ -3300,21 +3300,21 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка, | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка,
| ИмяТаблицы.Период КАК Период | ПсевдонимЗаданнойТаблицы.Период КАК Период
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Период > &ДатаНачалаПроверки | ПсевдонимЗаданнойТаблицы.Период > &ДатаНачалаПроверки
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.Период, | ПсевдонимЗаданнойТаблицы.Период,
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Период"); | ПсевдонимЗаданнойТаблицы.Период");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ИмяТаблицы); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя);
Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки); Запрос.УстановитьПараметр("ДатаНачалаПроверки", ПараметрыПроверки.ДатаНачалаПроверки);
@@ -3388,20 +3388,20 @@
Запрос = Новый Запрос( Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Регистратор КАК РегистраторРеквизитСсылка | ПсевдонимЗаданнойТаблицы.Регистратор КАК РегистраторРеквизитСсылка
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Регистратор > &Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор > &Регистратор
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ИмяТаблицы.Регистратор | ПсевдонимЗаданнойТаблицы.Регистратор
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Регистратор"); | ПсевдонимЗаданнойТаблицы.Регистратор");
ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", ""); ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", "");
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ИмяТаблицы", ИмяТаблицы); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ОбъектМетаданных", ПолноеИмя);
Запрос.УстановитьПараметр("Регистратор", ""); Запрос.УстановитьПараметр("Регистратор", "");
@@ -3491,7 +3491,7 @@
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| &ПоляВыборки КАК ПоляВыборки | &ПоляВыборки КАК ПоляВыборки
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| |
@@ -3501,7 +3501,7 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя()); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя());
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина"); ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина");
ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям); ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям);
@@ -3621,14 +3621,14 @@
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Период КАК Период, | ПсевдонимЗаданнойТаблицы.Период КАК Период,
| &ПоляВыборки КАК ПоляВыборки | &ПоляВыборки КАК ПоляВыборки
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| (ИмяТаблицы.Период > &Период | (ПсевдонимЗаданнойТаблицы.Период > &Период
| И НЕ &ТолькоУказанныйПериод | И НЕ &ТолькоУказанныйПериод
| ИЛИ ИмяТаблицы.Период = &Период | ИЛИ ПсевдонимЗаданнойТаблицы.Период = &Период
| И &ТолькоУказанныйПериод) | И &ТолькоУказанныйПериод)
| И &Условие | И &Условие
|УПОРЯДОЧИТЬ ПО &ПоляУпорядочивания"; |УПОРЯДОЧИТЬ ПО &ПоляУпорядочивания";
@@ -3636,7 +3636,7 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляУпорядочивания", ПоляУпорядочивания);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПоляВыборки КАК ПоляВыборки", ПоляВыборки);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя()); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ОбъектМетаданных.ПолноеИмя());
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина"); ТекстПервогоЗапроса = СтрЗаменить(ТекстЗапроса, "&Условие", "Истина");
ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям); ТекстЗапросаСУсловием = СтрЗаменить(ТекстЗапроса, "&Условие", УсловиеПоИзмерениям);
@@ -3748,19 +3748,19 @@
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1000 "ВЫБРАТЬ ПЕРВЫЕ 1000
| ИмяТаблицы.Ссылка КАК ПроблемныйОбъект, | ПсевдонимЗаданнойТаблицы.Ссылка КАК ПроблемныйОбъект,
| ПРЕДСТАВЛЕНИЕССЫЛКИ(ИмяТаблицы.Ссылка) КАК Представление, | ПРЕДСТАВЛЕНИЕССЫЛКИ(ПсевдонимЗаданнойТаблицы.Ссылка) КАК Представление,
| ИмяТаблицы.Родитель КАК Родитель | ПсевдонимЗаданнойТаблицы.Родитель КАК Родитель
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Ссылка > &Ссылка | ПсевдонимЗаданнойТаблицы.Ссылка > &Ссылка
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ПсевдонимЗаданнойТаблицы.Ссылка";
ИмяТаблицы = СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", ""); ИмяТаблицы = СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", "");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя);
Запрос = Новый Запрос(ТекстЗапроса); Запрос = Новый Запрос(ТекстЗапроса);
@@ -3935,16 +3935,16 @@
Перем Результат; Перем Результат;
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ "ВЫБРАТЬ
| ИмяТаблицы.Ссылка КАК Ссылка | ПсевдонимЗаданнойТаблицы.Ссылка КАК Ссылка
|ИЗ |ИЗ
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ПсевдонимЗаданнойТаблицы
|ГДЕ |ГДЕ
| ИмяТаблицы.Родитель = &Родитель | ПсевдонимЗаданнойТаблицы.Родитель = &Родитель
| И ИмяТаблицы.Ссылка <> &ИсключениеВыборки"; | И ПсевдонимЗаданнойТаблицы.Ссылка <> &ИсключениеВыборки";
ПолноеИмя = СсылкаНаОбъект.Метаданные().ПолноеИмя(); ПолноеИмя = СсылкаНаОбъект.Метаданные().ПолноеИмя();
ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", ""); ИмяТаблицы = СтрЗаменить(ПолноеИмя, ".", "");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяТаблицы", ИмяТаблицы); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПсевдонимЗаданнойТаблицы", ИмяТаблицы);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ОбъектМетаданных", ПолноеИмя);
Запрос = Новый Запрос(ТекстЗапроса); Запрос = Новый Запрос(ТекстЗапроса);
@@ -286,7 +286,7 @@
СуффиксТекущегоЯзыка = СуффиксТекущегоЯзыка(); СуффиксТекущегоЯзыка = СуффиксТекущегоЯзыка();
Если ЗначениеЗаполнено(СуффиксТекущегоЯзыка) Тогда Если МультиязычныеСтрокиВРеквизитах(ОбъектМетаданных) И ЗначениеЗаполнено(СуффиксТекущегоЯзыка) Тогда
ИменаЛокализуемыхРеквизитов = НаименованияЛокализуемыхРеквизитовОбъекта(ОбъектМетаданных); ИменаЛокализуемыхРеквизитов = НаименованияЛокализуемыхРеквизитовОбъекта(ОбъектМетаданных);
@@ -885,7 +885,7 @@
// * ОсновнойЯзык - Строка // * ОсновнойЯзык - Строка
// * КодЯзыка2 - Строка // * КодЯзыка2 - Строка
// * КодЯзыка1 - Строка // * КодЯзыка1 - Строка
// * ЛокализуемыеРеквизитыОбъекта - Соответствие // * ЛокализуемыеРеквизитыОбъекта - см. НастройкиОбновлениеПредопределенныхДанных
// //
Процедура ОбновитьМультиязычныеСтрокиПредопределенногоЭлемента(СсылкаНаОбъект, НастройкиОбновления) Экспорт Процедура ОбновитьМультиязычныеСтрокиПредопределенногоЭлемента(СсылкаНаОбъект, НастройкиОбновления) Экспорт
@@ -940,6 +940,20 @@
КонецПроцедуры КонецПроцедуры
// Параметры:
// ОбъектМетаданных - ОбъектМетаданных
//
// Возвращаемое значение:
// Структура:
// * ЛокализуемыеРеквизитыОбъекта - Соответствие из КлючЗначение:
// ** Ключ - Строка
// ** Значение - Булево
// * КодЯзыка1 - Строка
// * КодЯзыка2 - Строка
// * ОсновнойЯзык - Строка
// * ИмяОбъектМетаданных - Строка
// * ПредопределенныеДанные - ТаблицаЗначений
//
Функция НастройкиОбновлениеПредопределенныхДанных(ОбъектМетаданных) Экспорт Функция НастройкиОбновлениеПредопределенныхДанных(ОбъектМетаданных) Экспорт
Результат = Новый Структура; Результат = Новый Структура;
@@ -1028,8 +1042,10 @@
КонецФункции КонецФункции
// Параметры: // Параметры:
// ИменаРеквизитовОбъекта - Массив // ИменаРеквизитовОбъекта - Массив из Строка
// ЛокализуемыеРеквизитыОбъекта - Соответствие // ЛокализуемыеРеквизитыОбъекта - Соответствие из КлючЗначение:
// * Ключ - Строка
// * Значение - Булево
// //
Процедура СформироватьИменаМультиязычныхРеквизитов(Знач ИменаРеквизитовОбъекта, Знач ЛокализуемыеРеквизитыОбъекта) Экспорт Процедура СформироватьИменаМультиязычныхРеквизитов(Знач ИменаРеквизитовОбъекта, Знач ЛокализуемыеРеквизитыОбъекта) Экспорт
@@ -1782,6 +1782,7 @@
Запрос = Новый Запрос; Запрос = Новый Запрос;
ТекстыЗапроса = Новый Массив; ТекстыЗапроса = Новый Массив;
ТекстыЗапросаРегистров = Новый Массив;
ОтборУстановлен = Ложь; ОтборУстановлен = Ложь;
Для Каждого ОбрабатываемыйТип Из ПолныеИменаОбрабатываемыхОбъектов Цикл Для Каждого ОбрабатываемыйТип Из ПолныеИменаОбрабатываемыхОбъектов Цикл
@@ -1793,12 +1794,14 @@
МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ОбрабатываемыйТип); МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ОбрабатываемыйТип);
ПолноеИмяОбъекта = ОбрабатываемыйТип; ПолноеИмяОбъекта = ОбрабатываемыйТип;
КонецЕсли; КонецЕсли;
ПроверкаРегистра = Ложь;
ИмяОбъекта = СтрРазделить(ПолноеИмяОбъекта,".",Ложь)[1]; ИмяОбъекта = СтрРазделить(ПолноеИмяОбъекта,".",Ложь)[1];
УсловиеОтбораДанных = "ИСТИНА"; УсловиеОтбораДанных = "ИСТИНА";
УсловиеПроверкиРегистратора = "ИСТИНА"; УсловиеПроверкиРегистратора = "ИСТИНА";
Если ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(МетаданныеОбъекта) Тогда Если ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(МетаданныеОбъекта) Тогда
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ ПЕРВЫЕ 1 "ВЫБРАТЬ ПЕРВЫЕ 1
@@ -1876,6 +1879,7 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВыборкиИзмерений", ТекстВыборкиИзмерений); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВыборкиИзмерений", ТекстВыборкиИзмерений);
ИначеЕсли ОбщегоНазначения.ЭтоРегистр(МетаданныеОбъекта) Тогда ИначеЕсли ОбщегоНазначения.ЭтоРегистр(МетаданныеОбъекта) Тогда
ПроверкаРегистра = Истина;
ШаблонЗапросаПроверки = ШаблонЗапросаПроверки =
"ИСТИНА В (ВЫБРАТЬ ПЕРВЫЕ 1 "ИСТИНА В (ВЫБРАТЬ ПЕРВЫЕ 1
@@ -1927,7 +1931,11 @@
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораДанных", УсловиеОтбораДанных); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораДанных", УсловиеОтбораДанных);
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоРегистраторам", УсловиеПроверкиРегистратора); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоРегистраторам", УсловиеПроверкиРегистратора);
ТекстыЗапроса.Добавить(ТекстЗапроса); Если ПроверкаРегистра Тогда
ТекстыЗапросаРегистров.Добавить(ТекстЗапроса);
Иначе
ТекстыЗапроса.Добавить(ТекстЗапроса);
КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -1938,29 +1946,40 @@
ТекстЗапроса = СтрСоединить(ТекстыЗапроса, Соединитель); ТекстЗапроса = СтрСоединить(ТекстыЗапроса, Соединитель);
Если Очередь = Неопределено Тогда ИтоговыйМассивЗапросов = Новый Массив;
УсловиеОтбораУзла = " ТаблицаИзменений.Узел ССЫЛКА ПланОбмена.ОбновлениеИнформационнойБазы "; ИтоговыйМассивЗапросов.Добавить(ТекстЗапроса);
Иначе ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ИтоговыйМассивЗапросов, ТекстыЗапросаРегистров);
УсловиеОтбораУзла = " ТаблицаИзменений.Узел В (&Узлы) ";
Если ТипЗнч(Очередь) = Тип("Массив") Тогда Для Каждого ТекстЗапроса Из ИтоговыйМассивЗапросов Цикл
Запрос.УстановитьПараметр("Узлы", Очередь); Если Очередь = Неопределено Тогда
УсловиеОтбораУзла = " ТаблицаИзменений.Узел ССЫЛКА ПланОбмена.ОбновлениеИнформационнойБазы ";
Иначе Иначе
Запрос.УстановитьПараметр("Узлы", ОчередьСсылкой(Очередь)); УсловиеОтбораУзла = " ТаблицаИзменений.Узел В (&Узлы) ";
Если ТипЗнч(Очередь) = Тип("Массив") Тогда
Запрос.УстановитьПараметр("Узлы", Очередь);
Иначе
Запрос.УстановитьПараметр("Узлы", ОчередьСсылкой(Очередь));
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораУзла", УсловиеОтбораУзла); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораУзла", УсловиеОтбораУзла);
Если Не ОтборУстановлен Тогда Если Не ОтборУстановлен Тогда
Запрос.УстановитьПараметр("Отбор", Отбор); Запрос.УстановитьПараметр("Отбор", Отбор);
КонецЕсли; КонецЕсли;
Запрос.Текст = ТекстЗапроса; Запрос.Текст = ТекстЗапроса;
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Возврат Не Запрос.Выполнить().Пустой(); Если Не Запрос.Выполнить().Пустой() Тогда
Возврат Истина;
КонецЕсли;
УстановитьПривилегированныйРежим(Ложь);
УстановитьОтключениеБезопасногоРежима(Ложь);
КонецЦикла;
Возврат Ложь;
КонецФункции КонецФункции
// Проверяет, что все данные обработаны. // Проверяет, что все данные обработаны.
@@ -3190,7 +3209,7 @@
// //
// Если количество указано в параметре запуска "ЧислоПотоковОбновления", то возвращается оно. // Если количество указано в параметре запуска "ЧислоПотоковОбновления", то возвращается оно.
// Иначе, если значение константы КоличествоПотоковОбновленияИнформационнойБазы установлено, то возвращается оно. // Иначе, если значение константы КоличествоПотоковОбновленияИнформационнойБазы установлено, то возвращается оно.
// Иначе возвращается значение по умолчанию (см. КоличествоПотоковОбновленияИнформационнойБазыПоУмолчанию()). // Иначе возвращается значение по умолчанию, см. КоличествоПотоковОбновленияИнформационнойБазыПоУмолчанию.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Число - количество потоков. // Число - количество потоков.
@@ -5548,7 +5567,7 @@
КонецФункции КонецФункции
// Имя поля, полученное из колонки таблицы условий постраничной выборки (см. НовыеУсловияПостраничнойВыборки()). // Имя поля, полученное из колонки таблицы условий постраничной выборки, см. НовыеУсловияПостраничнойВыборки.
// //
// Параметры: // Параметры:
// ИмяПоля - Строка - имя поля. // ИмяПоля - Строка - имя поля.
@@ -5928,7 +5947,7 @@
КонецФункции КонецФункции
// Возвращает вид источника данных (см. ДополнительныеПараметрыВыборкиДанныхДляОбработки(), п. 1 и п. 2. // Возвращает вид источника данных, см. ДополнительныеПараметрыВыборкиДанныхДляОбработки п. 1 и п. 2.
// //
// Параметры: // Параметры:
// ДополнительныеИсточникиДанных - см. ДополнительныеПараметрыВыборкиДанныхДляОбработки // ДополнительныеИсточникиДанных - см. ДополнительныеПараметрыВыборкиДанныхДляОбработки
@@ -41,7 +41,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы"; Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.1.6.159"; Описание.Версия = "3.1.6.180";
Описание.ИдентификаторИнтернетПоддержки = "SSL"; Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -164,8 +164,6 @@
// //
Процедура ПередФормированиеСпискаОтложенныхОбработчиков(ИтерацииОбновления) Экспорт Процедура ПередФормированиеСпискаОтложенныхОбработчиков(ИтерацииОбновления) Экспорт
КонецПроцедуры КонецПроцедуры
// Необходимо для того, чтобы выгружать новые или измененные описания // Необходимо для того, чтобы выгружать новые или измененные описания
@@ -197,8 +195,6 @@
// //
Процедура ПриЗаполненииПриоритетовТиповМетаданных(ПриоритетыТиповМетаданных) Экспорт Процедура ПриЗаполненииПриоритетовТиповМетаданных(ПриоритетыТиповМетаданных) Экспорт
КонецПроцедуры КонецПроцедуры
// Вызывается при выполнении функции ОбновлениеИнформационнойБазы.ОбъектОбработан. // Вызывается при выполнении функции ОбновлениеИнформационнойБазы.ОбъектОбработан.
@@ -213,8 +209,6 @@
// //
Процедура ПриВыполненииПроверкиОбъектОбработан(ПолноеИмяОбъекта, БлокироватьИзменение, ТекстСообщения) Экспорт Процедура ПриВыполненииПроверкиОбъектОбработан(ПолноеИмяОбъекта, БлокироватьИзменение, ТекстСообщения) Экспорт
КонецПроцедуры КонецПроцедуры
// Определяет настройки начального заполнения элементов // Определяет настройки начального заполнения элементов
@@ -995,7 +995,7 @@
// //
// Если количество указано в параметре запуска "ЧислоПотоковОбновления", то возвращается оно. // Если количество указано в параметре запуска "ЧислоПотоковОбновления", то возвращается оно.
// Иначе, если значение константы КоличествоПотоковОбновленияИнформационнойБазы установлено, то возвращается оно. // Иначе, если значение константы КоличествоПотоковОбновленияИнформационнойБазы установлено, то возвращается оно.
// Иначе возвращается значение по умолчанию (см. КоличествоПотоковОбновленияИнформационнойБазыПоУмолчанию()). // Иначе возвращается значение по умолчанию, см. КоличествоПотоковОбновленияИнформационнойБазыПоУмолчанию.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Число - количество потоков. // Число - количество потоков.
@@ -1160,6 +1160,7 @@
ОписанияБиблиотек = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам; ОписанияБиблиотек = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам;
ГруппаОбновления = 1; ГруппаОбновления = 1;
ТекущийРежимВыполнения = "";
ТекстОшибок = ""; ТекстОшибок = "";
ДобавленныеОбработчики = Новый Массив; ДобавленныеОбработчики = Новый Массив;
Для Каждого ИтерацияОбновления Из ИтерацииОбновления Цикл Для Каждого ИтерацияОбновления Из ИтерацииОбновления Цикл
@@ -1254,7 +1255,7 @@
УпорядочитьВерсииОбработчиков(ОбработчикиПоВерсиям); УпорядочитьВерсииОбработчиков(ОбработчикиПоВерсиям);
ДобавитьОтложенныеОбработчики(ИмяБиблиотеки, ОбработчикиПоВерсиям.Строки, ГруппаОбновления, ТекстОшибок); ДобавитьОтложенныеОбработчики(ИмяБиблиотеки, ОбработчикиПоВерсиям.Строки, ГруппаОбновления, ТекстОшибок, ТекущийРежимВыполнения);
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -1264,6 +1265,7 @@
КонецЕсли; КонецЕсли;
Если Не ТолькоМонопольные И ЗаполнитьВерсииПодсистем Тогда Если Не ТолькоМонопольные И ЗаполнитьВерсииПодсистем Тогда
СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы();
СведенияОбОбновлении.ВерсииПодсистемНаНачалоОбновления = ВерсииПодсистемНаНачалоОбновления; СведенияОбОбновлении.ВерсииПодсистемНаНачалоОбновления = ВерсииПодсистемНаНачалоОбновления;
ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении);
КонецЕсли; КонецЕсли;
@@ -2012,13 +2014,23 @@
КонецЕсли; КонецЕсли;
Если ЕстьКолонкаСсылка И ЗначениеЗаполнено(СтрокаТаблицы.Ссылка) Тогда Если ЕстьКолонкаСсылка И ЗначениеЗаполнено(СтрокаТаблицы.Ссылка) Тогда
ЗаполняемыйЭлемент.УстановитьСсылкуНового(СтрокаТаблицы.Ссылка); ЗаполняемыйЭлемент.УстановитьСсылкуНового(СтрокаТаблицы.Ссылка);
Если ЗначениеЗаполнено(СтрокаТаблицы[ИмяКлючевогоРеквизита]) Тогда
СуществующиеЭлементы.Вставить(СтрокаТаблицы[ИмяКлючевогоРеквизита], СтрокаТаблицы.Ссылка);
КонецЕсли;
Иначе Иначе
НоваяСсылка = МенеджерОбъекта.ПолучитьСсылку(); НоваяСсылка = МенеджерОбъекта.ПолучитьСсылку();
ЗаполняемыйЭлемент.УстановитьСсылкуНового(НоваяСсылка); ЗаполняемыйЭлемент.УстановитьСсылкуНового(НоваяСсылка);
КонецЕсли;
СуществующиеЭлементы.Вставить(СтрокаТаблицы[ИмяКлючевогоРеквизита], НоваяСсылка); Если ЗначениеЗаполнено(СтрокаТаблицы[ИмяКлючевогоРеквизита]) Тогда
СуществующиеЭлементы.Вставить(СтрокаТаблицы[ИмяКлючевогоРеквизита], НоваяСсылка);
КонецЕсли;
КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -3877,7 +3889,7 @@
КонецПроцедуры КонецПроцедуры
Процедура ДобавитьОтложенныеОбработчики(ИмяБиблиотеки, ОбработчикиПоВерсиям, ГруппаОбновления, ТекстОшибок) Процедура ДобавитьОтложенныеОбработчики(ИмяБиблиотеки, ОбработчикиПоВерсиям, ГруппаОбновления, ТекстОшибок, ТекущийРежимВыполнения = "")
ЭтоПодчиненныйУзелРИБ = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ(); ЭтоПодчиненныйУзелРИБ = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ();
ЭтоПодчиненныйУзелРИБСФильтром = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБСФильтром(); ЭтоПодчиненныйУзелРИБСФильтром = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБСФильтром();
@@ -3894,7 +3906,6 @@
ЗависимостьГруппОбработчиков = СведенияОбОбновлении.ЗависимостьГруппОбработчиков; ЗависимостьГруппОбработчиков = СведенияОбОбновлении.ЗависимостьГруппОбработчиков;
ПропуститьПроверку = Ложь; ПропуститьПроверку = Ложь;
ТекущийРежимВыполнения = "";
СоздаватьНовуюИтерацию = Истина; СоздаватьНовуюИтерацию = Истина;
Итерация = 1; Итерация = 1;
ЕстьОбработчикиТолькоГлавногоУзла = Ложь; ЕстьОбработчикиТолькоГлавногоУзла = Ложь;
@@ -3903,6 +3914,11 @@
ЗаполнитьБлокируемыеОбъекты(СтрокаВерсия, СведенияОБлокируемыхОбъектах); ЗаполнитьБлокируемыеОбъекты(СтрокаВерсия, СведенияОБлокируемыхОбъектах);
Если РежимВыполненияОтложенныхОбработчиков = "Последовательно" Тогда Если РежимВыполненияОтложенныхОбработчиков = "Последовательно" Тогда
Если ТекущийРежимВыполнения = "Параллельно" Тогда
// У предыдущей библиотеки был параллельный режим, поэтому
// для текущей создаем отдельную группу обновления.
ГруппаОбновления = ГруппаОбновления + 1;
КонецЕсли;
ЗависимостьГруппОбработчиков.Вставить(ГруппаОбновления, Итерация <> 1); ЗависимостьГруппОбработчиков.Вставить(ГруппаОбновления, Итерация <> 1);
ТекущийРежимВыполнения = "Последовательно"; ТекущийРежимВыполнения = "Последовательно";
ИначеЕсли РежимВыполненияОтложенныхОбработчиков = "Параллельно" И Не ЗначениеЗаполнено(ПараллельноСВерсии) Тогда ИначеЕсли РежимВыполненияОтложенныхОбработчиков = "Параллельно" И Не ЗначениеЗаполнено(ПараллельноСВерсии) Тогда
@@ -3920,6 +3936,11 @@
КонецЕсли; КонецЕсли;
Если Результат < 0 Тогда Если Результат < 0 Тогда
Если ТекущийРежимВыполнения = "Параллельно" Тогда
// У предыдущей библиотеки был параллельный режим, поэтому
// для текущей создаем отдельную группу обновления.
ГруппаОбновления = ГруппаОбновления + 1;
КонецЕсли;
ЗависимостьГруппОбработчиков.Вставить(ГруппаОбновления, Итерация <> 1); ЗависимостьГруппОбработчиков.Вставить(ГруппаОбновления, Итерация <> 1);
ТекущийРежимВыполнения = "Последовательно"; ТекущийРежимВыполнения = "Последовательно";
Иначе Иначе
@@ -3970,9 +3991,6 @@
Итерация = Итерация + 1; Итерация = Итерация + 1;
КонецЦикла; КонецЦикла;
// Обработчики обновления следующей библиотеки добавляются в новую группу.
ГруппаОбновления = ГруппаОбновления + 1;
ЗаписатьСведенияОБлокируемыхОбъектах(СведенияОБлокируемыхОбъектах); ЗаписатьСведенияОБлокируемыхОбъектах(СведенияОБлокируемыхОбъектах);
ТекущееЗначение = Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Получить(); ТекущееЗначение = Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Получить();
Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(ТекущееЗначение И Не ЕстьОбработчикиТолькоГлавногоУзла); Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(ТекущееЗначение И Не ЕстьОбработчикиТолькоГлавногоУзла);
@@ -5035,7 +5053,7 @@
// //
// Параметры: // Параметры:
// Группы - Соответствие // Группы - Соответствие
// Поток - СтрокаТаблицыЗначений - описание потока (см. Потоки в НовоеОписаниеПотоков()). // Поток - СтрокаТаблицыЗначений - описание потока, см. Потоки в НовоеОписаниеПотоков.
// ИдентификаторФормы - УникальныйИдентификатор - идентификатор формы, если есть. // ИдентификаторФормы - УникальныйИдентификатор - идентификатор формы, если есть.
// //
Процедура ВыполнитьПоток(Группы, Поток, ИдентификаторФормы = Неопределено) Процедура ВыполнитьПоток(Группы, Поток, ИдентификаторФормы = Неопределено)
@@ -6235,8 +6253,8 @@
// Возвращаемое значение: // Возвращаемое значение:
// Структура - описание порции со следующей структурой: // Структура - описание порции со следующей структурой:
// * Идентификатор - УникальныйИдентификатор - идентификатор порции. // * Идентификатор - УникальныйИдентификатор - идентификатор порции.
// * ПерваяЗапись - СписокЗначений - ключ первой записи порции (см. НовыйКлючЗаписиИзДанныхПорции()). // * ПерваяЗапись - СписокЗначений - ключ первой записи порции, см. НовыйКлючЗаписиИзДанныхПорции.
// * ПоследняяЗапись - СписокЗначений - ключ последней записи порции (см. НовыйКлючЗаписиИзДанныхПорции()). // * ПоследняяЗапись - СписокЗначений - ключ последней записи порции, см. НовыйКлючЗаписиИзДанныхПорции.
// * НаборДанных - см. НовыйНаборДанныхДляОбновления // * НаборДанных - см. НовыйНаборДанныхДляОбновления
// //
Функция НоваяПорцияДляОбновления() Функция НоваяПорцияДляОбновления()
@@ -6466,7 +6484,7 @@
Функция ИмяКлючевогоРеквизита(НаборДанныхДляЗаполнения) Функция ИмяКлючевогоРеквизита(НаборДанныхДляЗаполнения)
ИмяКлючевогоРеквизита = НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов.ИмяКлючевогоРеквизита; ИмяКлючевогоРеквизита = НаборДанныхДляЗаполнения.ПереопределяемыеНастройки.ИмяКлючевогоРеквизита;
Если Не ЗначениеЗаполнено(ИмяКлючевогоРеквизита) Тогда Если Не ЗначениеЗаполнено(ИмяКлючевогоРеквизита) Тогда
ИмяКлючевогоРеквизита = "ИмяПредопределенныхДанных"; ИмяКлючевогоРеквизита = "ИмяПредопределенныхДанных";
КонецЕсли; КонецЕсли;
@@ -6593,7 +6611,7 @@
Процедура ЗаполнитьРеквизитыНачальнымиДанными(ЗаполняемыйЭлемент, НаборДанныхДляЗаполнения, НастройкиЗаполнения) Процедура ЗаполнитьРеквизитыНачальнымиДанными(ЗаполняемыйЭлемент, НаборДанныхДляЗаполнения, НастройкиЗаполнения)
ИмяКлючевогоРеквизита = ИмяКлючевогоРеквизита(НаборДанныхДляЗаполнения); ИмяКлючевогоРеквизита = ИмяКлючевогоРеквизита(НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов);
ЗначениеКлючаОбъекта = ЗаполняемыйЭлемент[ИмяКлючевогоРеквизита]; ЗначениеКлючаОбъекта = ЗаполняемыйЭлемент[ИмяКлючевогоРеквизита];
МенеджерОбъекта = НаборДанныхДляЗаполнения.МенеджерОбъекта; МенеджерОбъекта = НаборДанныхДляЗаполнения.МенеджерОбъекта;
@@ -6636,13 +6654,12 @@
НаборДанныхДляЗаполнения.ПоддерживаетсяИерархия, СтрокаТаблицы); НаборДанныхДляЗаполнения.ПоддерживаетсяИерархия, СтрокаТаблицы);
КонецЕсли; КонецЕсли;
Если НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов.ПриНачальномЗаполненииЭлемента Тогда Если НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов.ПереопределяемыеНастройки.ПриНачальномЗаполненииЭлемента Тогда
МенеджерОбъекта.ПриНачальномЗаполненииЭлемента(ЗаполняемыйЭлемент, СтрокаТаблицы, НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов.ДополнительныеПараметры); МенеджерОбъекта.ПриНачальномЗаполненииЭлемента(ЗаполняемыйЭлемент, СтрокаТаблицы, НаборДанныхДляЗаполнения.НастройкиПредопределенныхЭлементов.ПереопределяемыеНастройки.ДополнительныеПараметры);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
// Обновить элементы предопределенных элементов в обработчиках обновления // Обновить элементы предопределенных элементов в обработчиках обновления
// //
// Параметры: // Параметры:
@@ -6665,6 +6682,7 @@
ПараметрыДляЗаполненияОбъекта = НаборПараметровДляЗаполненияОбъекта(МетаданныеОбъекта); ПараметрыДляЗаполненияОбъекта = НаборПараметровДляЗаполненияОбъекта(МетаданныеОбъекта);
ИмяКлючевогоРеквизита = ИмяКлючевогоРеквизита(ПараметрыДляЗаполненияОбъекта.НастройкиПредопределенныхЭлементов); ИмяКлючевогоРеквизита = ИмяКлючевогоРеквизита(ПараметрыДляЗаполненияОбъекта.НастройкиПредопределенныхЭлементов);
ПоддерживаетсяИерархия = ПараметрыДляЗаполненияОбъекта.ПоддерживаетсяИерархия; ПоддерживаетсяИерархия = ПараметрыДляЗаполненияОбъекта.ПоддерживаетсяИерархия;
РеквизитыИсключения = ПараметрыДляЗаполненияОбъекта.РеквизитыИсключения; РеквизитыИсключения = ПараметрыДляЗаполненияОбъекта.РеквизитыИсключения;
МенеджерОбъекта = ПараметрыДляЗаполненияОбъекта.МенеджерОбъекта; МенеджерОбъекта = ПараметрыДляЗаполненияОбъекта.МенеджерОбъекта;
@@ -660,7 +660,7 @@
// //
Функция ИмяФормыУстановкиОбновления() Экспорт Функция ИмяФормыУстановкиОбновления() Экспорт
Возврат "Обработка.УстановкаОбновлений.Форма.Форма"; Возврат "Обработка.УстановкаОбновлений.Форма";
КонецФункции КонецФункции
@@ -122,7 +122,7 @@
ПараметрыТекста["[НаименованиеПродукта]"] = НСтр("ru = '1С:ПРЕДПРИЯТИЕ 8.3'"); ПараметрыТекста["[НаименованиеПродукта]"] = НСтр("ru = '1С:ПРЕДПРИЯТИЕ 8.3'");
ПараметрыТекста["[Копирайт]"] = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ПараметрыТекста["[Копирайт]"] = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = '© ООО «1С-Софт», 1996-%1'"), Формат(Год(ТекущаяДатаСеанса()), "ЧГ=0")); НСтр("ru = '© ООО ""1С-Софт"", 1996-%1'"), Формат(Год(ТекущаяДатаСеанса()), "ЧГ=0"));
Возврат ПодставитьПараметрыВТекст(ШаблонТекста, ПараметрыТекста);; Возврат ПодставитьПараметрыВТекст(ШаблонТекста, ПараметрыТекста);;
@@ -108,7 +108,7 @@
Если Результат.Поддерживается Если Результат.Поддерживается
Или Результат.ПоддерживаетсяУстановкаИсправлений Тогда Или Результат.ПоддерживаетсяУстановкаИсправлений Тогда
ОткрытьФорму("Обработка.УстановкаОбновлений.Форма.Форма", ПараметрыУстановкиОбновлений); ОткрытьФорму("Обработка.УстановкаОбновлений.Форма", ПараметрыУстановкиОбновлений);
Иначе Иначе
ПоказатьПредупреждение(, Результат.ОписаниеОшибки); ПоказатьПредупреждение(, Результат.ОписаниеОшибки);
КонецЕсли; КонецЕсли;
@@ -344,8 +344,9 @@
ПараметрыПредупреждения.ВывестиОдноПредупреждение = Истина; ПараметрыПредупреждения.ВывестиОдноПредупреждение = Истина;
ДействиеПриУстановленномФлажке = ПараметрыПредупреждения.ДействиеПриУстановленномФлажке; ДействиеПриУстановленномФлажке = ПараметрыПредупреждения.ДействиеПриУстановленномФлажке;
ДействиеПриУстановленномФлажке.Форма = "Обработка.УстановкаОбновлений.Форма.Форма"; ДействиеПриУстановленномФлажке.Форма = "Обработка.УстановкаОбновлений.Форма";
ДействиеПриУстановленномФлажке.ПараметрыФормы = Новый Структура("ЗавершениеРаботыСистемы, ВыполнитьОбновление", Истина, Истина); ДействиеПриУстановленномФлажке.ПараметрыФормы = Новый Структура("ЗавершениеРаботыСистемы, ВыполнитьОбновление",
Истина, Истина);
Предупреждения.Добавить(ПараметрыПредупреждения); Предупреждения.Добавить(ПараметрыПредупреждения);
КонецЕсли; КонецЕсли;
@@ -92,18 +92,11 @@
ИдентификаторОбсуждения = Обсуждение.Идентификатор; ИдентификаторОбсуждения = Обсуждение.Идентификатор;
Иначе Иначе
ИдентификаторОбсуждения = ОбсуждениеКонтекст; ИдентификаторОбсуждения = ОбсуждениеКонтекст;
КонецЕсли; КонецЕсли;
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
СообщениеСВ = СообщениеИзОписания(Автор, ИдентификаторОбсуждения, Получатели, Сообщение);
СообщениеСВ = СообщениеИзОписания(
Автор,
ИдентификаторОбсуждения,
Получатели,
Сообщение);
СообщениеСВ.Записать(); СообщениеСВ.Записать();
КонецПроцедуры КонецПроцедуры
@@ -539,7 +532,7 @@
// Параметры: // Параметры:
// ПолучателиПриемник - КоллекцияИдентификаторовПользователейСистемыВзаимодействия // ПолучателиПриемник - КоллекцияИдентификаторовПользователейСистемыВзаимодействия
// ПолучателиИсточник - Соответствие // ПолучателиИсточник - Массив из СправочникСсылка.Пользователи
// - Массив из ПользовательСистемыВзаимодействия // - Массив из ПользовательСистемыВзаимодействия
// //
Процедура ДобавитьПолучателей(ПолучателиПриемник, ПолучателиИсточник) Процедура ДобавитьПолучателей(ПолучателиПриемник, ПолучателиИсточник)
@@ -548,10 +541,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПолучателиПользователиИБ = ТипЗнч(ПолучателиИсточник) = Тип("Соответствие") ПолучателиПользователиИБ = (ТипЗнч(ПолучателиИсточник[0]) = Тип("СправочникСсылка.Пользователи"));
ИЛИ (ТипЗнч(ПолучателиИсточник) = Тип("Массив")
И ТипЗнч(ПолучателиИсточник[0]) = Тип("СправочникСсылка.Пользователи"));
Если ПолучателиПользователиИБ Тогда Если ПолучателиПользователиИБ Тогда
Для каждого Получатель Из ПолучателиИсточник Цикл Для каждого Получатель Из ПолучателиИсточник Цикл
@@ -1886,8 +1886,6 @@
// Возвращаемое значение: // Возвращаемое значение:
// Структура: // Структура:
// * ИмяФормыПерсональныхНастроек - Строка - имя формы для редактирования персональных настроек. // * ИмяФормыПерсональныхНастроек - Строка - имя формы для редактирования персональных настроек.
// Ранее определялись в
// ОбщегоНазначенияПереопределяемый.ИмяФормыПерсональныхНастроек.
// * ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - по умолчанию Истина. Если установить в Ложь, то // * ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - по умолчанию Истина. Если установить в Ложь, то
// подтверждение при завершении работы программы не // подтверждение при завершении работы программы не
// будет запрашиваться, если явно не разрешить в // будет запрашиваться, если явно не разрешить в
@@ -5865,7 +5863,7 @@
// Выгружает запрос в строку XML, которую можно вставить в Консоль запросов. // Выгружает запрос в строку XML, которую можно вставить в Консоль запросов.
// Для переноса запроса и всех его параметров в Консоль запросов, необходимо вызвать функцию в окне. // Для переноса запроса и всех его параметров в Консоль запросов, необходимо вызвать функцию в окне.
// «Вычислить выражение»(Shift + F9), скопировать полученный XML в поле "Текст запроса" // "Вычислить выражение" (Shift + F9), скопировать полученный XML в поле "Текст запроса"
// консоли запросов и выполнить команду "Заполнить из XML" из меню "Еще". // консоли запросов и выполнить команду "Заполнить из XML" из меню "Еще".
// Подробнее об использование функции смотрите в справке к консоли запросов. // Подробнее об использование функции смотрите в справке к консоли запросов.
// //
@@ -7592,14 +7590,19 @@
ИначеЕсли Действие = "ПометкаУдаления" Тогда ИначеЕсли Действие = "ПометкаУдаления" Тогда
Объект.ОбменДанными.Загрузка = Не ПараметрыЗаписи.ВключатьБизнесЛогику;
МетаданныеОбъекта = Объект.Метаданные(); МетаданныеОбъекта = Объект.Метаданные();
Если ЭтоСправочник(МетаданныеОбъекта) Если ЭтоСправочник(МетаданныеОбъекта)
Или ЭтоПланВидовХарактеристик(МетаданныеОбъекта) Или ЭтоПланВидовХарактеристик(МетаданныеОбъекта)
Или ЭтоПланСчетов(МетаданныеОбъекта) Тогда Или ЭтоПланСчетов(МетаданныеОбъекта) Тогда
Объект.ОбменДанными.Загрузка = Не ПараметрыЗаписи.ВключатьБизнесЛогику;
Объект.УстановитьПометкуУдаления(Истина, Ложь); Объект.УстановитьПометкуУдаления(Истина, Ложь);
ИначеЕсли ЭтоДокумент(МетаданныеОбъекта)
И МетаданныеОбъекта.Проведение = Метаданные.СвойстваОбъектов.Проведение.Разрешить Тогда
Объект.УстановитьПометкуУдаления(Истина);
Иначе Иначе
Объект.ОбменДанными.Загрузка = Не ПараметрыЗаписи.ВключатьБизнесЛогику;
Объект.УстановитьПометкуУдаления(Истина); Объект.УстановитьПометкуУдаления(Истина);
КонецЕсли; КонецЕсли;
@@ -382,15 +382,15 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Функции для работы с цветами стиля в клиентском коде. // Функции для работы с цветами стиля в клиентском коде.
// (См. ОбщегоНазначенияКлиент.ЦветСтиля) // См. ОбщегоНазначенияКлиент.ЦветСтиля
Функция ЦветСтиля(ИмяЦветаСтиля) Экспорт Функция ЦветСтиля(Знач ИмяЦветаСтиля) Экспорт
Возврат ЦветаСтиля[ИмяЦветаСтиля]; Возврат ЦветаСтиля[ИмяЦветаСтиля];
КонецФункции КонецФункции
// (См. ОбщегоНазначенияКлиент.ШрифтСтиля) // См. ОбщегоНазначенияКлиент.ШрифтСтиля
Функция ШрифтСтиля(ИмяШрифтаСтиля) Экспорт Функция ШрифтСтиля(Знач ИмяШрифтаСтиля) Экспорт
Возврат ШрифтыСтиля[ИмяШрифтаСтиля]; Возврат ШрифтыСтиля[ИмяШрифтаСтиля];
@@ -618,7 +618,7 @@
// Пример: // Пример:
// ТекстПредупреждения = НСтр("ru = 'Закрыть помощник?'"); // ТекстПредупреждения = НСтр("ru = 'Закрыть помощник?'");
// ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( // ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(
// ЭтотОбъект, Отказ, ТекстПредупреждения, "ЗакрытьФормуБезПодтверждения"); // ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезПодтверждения");
// //
Процедура ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( Процедура ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(
Знач Форма, Знач Форма,
@@ -857,13 +857,13 @@
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Функции для работы с цветами стиля в клиентском коде. // Функции для работы с цветами стиля в клиентском коде.
// Функция получает цвет стиля по имени элемента стиля. // Получает цвет стиля по имени элемента стиля.
// //
// Параметры: // Параметры:
// ИмяЦветаСтиля - Строка - имя элемента стиля. // ИмяЦветаСтиля - Строка
// //
// Возвращаемое значение: // Возвращаемое значение:
// Цвет - цвет стиля. // Цвет
// //
Функция ЦветСтиля(ИмяЦветаСтиля) Экспорт Функция ЦветСтиля(ИмяЦветаСтиля) Экспорт
@@ -871,13 +871,13 @@
КонецФункции КонецФункции
// Функция получает шрифт стиля по имени элемента стиля. // Получает шрифт стиля по имени элемента стиля.
// //
// Параметры: // Параметры:
// ИмяШрифтаСтиля - Строка - имя элемента стиля. // ИмяШрифтаСтиля - Строка
// //
// Возвращаемое значение: // Возвращаемое значение:
// Шрифт - шрифт стиля. // Шрифт
// //
Функция ШрифтСтиля(ИмяШрифтаСтиля) Экспорт Функция ШрифтСтиля(ИмяШрифтаСтиля) Экспорт
@@ -908,7 +908,7 @@
// //
// ПараметрыПодключения = ОбщегоНазначенияКлиент.ПараметрыПодключенияКомпоненты(); // ПараметрыПодключения = ОбщегоНазначенияКлиент.ПараметрыПодключенияКомпоненты();
// ПараметрыПодключения.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется // ПараметрыПодключения.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
Функция ПараметрыПодключенияКомпоненты() Экспорт Функция ПараметрыПодключенияКомпоненты() Экспорт
@@ -949,7 +949,7 @@
// //
// ПараметрыПодключения = ОбщегоНазначенияКлиент.ПараметрыПодключенияКомпоненты(); // ПараметрыПодключения = ОбщегоНазначенияКлиент.ПараметрыПодключенияКомпоненты();
// ПараметрыПодключения.ТекстПояснения = НСтр("ru = 'Для оформления заявления на выпуск сертификата требуется // ПараметрыПодключения.ТекстПояснения = НСтр("ru = 'Для оформления заявления на выпуск сертификата требуется
// |внешняя компонента «Криптография (CryptS)».'"); // |внешняя компонента ""Криптография (CryptS)"".'");
// //
// ОбщегоНазначенияКлиент.ПодключитьКомпонентуИзМакета(Оповещение, // ОбщегоНазначенияКлиент.ПодключитьКомпонентуИзМакета(Оповещение,
// "CryptS", // "CryptS",
@@ -1005,7 +1005,7 @@
// //
// ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты(); // ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты();
// ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется // ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента «1С:Сканеры штрихкода (NativeApi)».'"); // |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
// //
Функция ПараметрыУстановкиКомпоненты() Экспорт Функция ПараметрыУстановкиКомпоненты() Экспорт
@@ -1035,7 +1035,7 @@
// //
// ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты(); // ПараметрыУстановки = ОбщегоНазначенияКлиент.ПараметрыУстановкиКомпоненты();
// ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для оформления заявления на выпуск сертификата требуется // ПараметрыУстановки.ТекстПояснения = НСтр("ru = 'Для оформления заявления на выпуск сертификата требуется
// |внешняя компонента «Криптография (CryptS)».'"); // |внешняя компонента ""Криптография (CryptS)"".'");
// //
// ОбщегоНазначенияКлиент.УстановитьКомпонентуИзМакета(Оповещение, // ОбщегоНазначенияКлиент.УстановитьКомпонентуИзМакета(Оповещение,
// "Обработка.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Макет.КомпонентаОбмена", // "Обработка.ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата.Макет.КомпонентаОбмена",
@@ -8,29 +8,15 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
// Функция получает цвет стиля по имени элемента стиля. // См. ОбщегоНазначенияКлиент.ЦветСтиля
// Функция ЦветСтиля(Знач ИмяЦветаСтиля) Экспорт
// Параметры:
// ИмяЦветаСтиля - Строка - имя элемента стиля.
//
// Возвращаемое значение:
// Цвет
//
Функция ЦветСтиля(ИмяЦветаСтиля) Экспорт
Возврат ОбщегоНазначенияВызовСервера.ЦветСтиля(ИмяЦветаСтиля); Возврат ОбщегоНазначенияВызовСервера.ЦветСтиля(ИмяЦветаСтиля);
КонецФункции КонецФункции
// Функция получает шрифт стиля по имени элемента стиля. // См. ОбщегоНазначенияКлиент.ШрифтСтиля
// Функция ШрифтСтиля(Знач ИмяШрифтаСтиля) Экспорт
// Параметры:
// ИмяШрифтаСтиля - Строка - имя шрифта стиля.
//
// Возвращаемое значение:
// Шрифт
//
Функция ШрифтСтиля(ИмяШрифтаСтиля) Экспорт
Возврат ОбщегоНазначенияВызовСервера.ШрифтСтиля(ИмяШрифтаСтиля); Возврат ОбщегоНазначенияВызовСервера.ШрифтСтиля(ИмяШрифтаСтиля);
@@ -639,12 +639,11 @@
// Возвращаемое значение: // Возвращаемое значение:
// Массив - массив из одного элемента. // Массив - массив из одного элемента.
// //
Функция ЗначениеВМассиве(Значение) Экспорт Функция ЗначениеВМассиве(Знач Значение) Экспорт
Массив = Новый Массив; Результат = Новый Массив;
Массив.Добавить(Значение); Результат.Добавить(Значение);
Возврат Результат;
Возврат Массив;
КонецФункции КонецФункции
@@ -1879,9 +1878,8 @@
КонецФункции КонецФункции
// Возвращает шаблон структуры параметров для установки внешнего соединения. // Конструктор параметра Параметры функций ОбщегоНазначения.УстановитьВнешнееСоединениеСБазой()
// Параметрам необходимо задать требуемые значения и передать // и ОбщегоНазначенияКлиент.УстановитьВнешнееСоединениеСБазой()
// в метод ОбщегоНазначения.УстановитьВнешнееСоединение().
// //
// Возвращаемое значение: // Возвращаемое значение:
// Структура - коллекция параметров. // Структура - коллекция параметров.
@@ -3680,15 +3678,17 @@
Если ВыполнитьСНаивысшимиПравами Тогда Если ВыполнитьСНаивысшимиПравами Тогда
#Если ВнешнееСоединение Тогда #Если ВнешнееСоединение Тогда
ВызватьИсключение ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
НСтр("ru = 'Недопустимое значение параметра ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами. "ru = 'Недопустимое значение параметра %1.
|Повышение привилегий системы не доступно из внешнего соединения.'"); |Повышение привилегий системы не доступно из внешнего соединения.'"),
"ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами");
#КонецЕсли #КонецЕсли
#Если Сервер Тогда #Если Сервер Тогда
ВызватьИсключение ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Недопустимое значение параметра ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами. НСтр("ru = 'Недопустимое значение параметра %1.
|Повышение привилегий системы не доступно на сервере.'"); |Повышение привилегий системы не доступно на сервере.'"),
"ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами");
#КонецЕсли #КонецЕсли
КонецЕсли; КонецЕсли;
@@ -3746,12 +3746,14 @@
Если ВыполнитьСНаивысшимиПравами Тогда Если ВыполнитьСНаивысшимиПравами Тогда
Если ДождатьсяЗавершения Тогда Если ДождатьсяЗавершения Тогда
ВызватьИсключение ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(
НСтр("ru = 'Недопустимо одновременно устанавливать параметры "ru = 'Недопустимо одновременно устанавливать параметры
| - ПараметрыЗапускаПрограммы.ДождатьсяЗавершения и | - %1 и
| - ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами: | - %2:
|Операционная система не позволяет отслеживать от имени пользователя процессы, |Операционная система не позволяет отслеживать от имени пользователя процессы,
|запущенные администратором.'"); |запущенные администратором.'"),
"ПараметрыЗапускаПрограммы.ДождатьсяЗавершения",
"ПараметрыЗапускаПрограммы.ВыполнитьСНаивысшимиПравами");
КонецЕсли; КонецЕсли;
// После начала исполнения файла команды отследить статус процесса будет невозможно, // После начала исполнения файла команды отследить статус процесса будет невозможно,
@@ -4035,6 +4037,42 @@
#КонецОбласти #КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Создает массив и помещает в него переданные значения.
//
// Параметры:
// Значение1 - Произвольный - любое значение.
// Значение2 - Произвольный
// Значение3 - Произвольный
// Значение4 - Произвольный
//
// Возвращаемое значение:
// Массив
//
// Пример:
// Результат = ОбщегоНазначенияКлиентСервер.МассивЗначений(1, 2, 3);
//
Функция МассивЗначений(Знач Значение1, Знач Значение2 = Неопределено, Знач Значение3 = Неопределено,
Знач Значение4 = Неопределено) Экспорт
Результат = Новый Массив;
Если Значение4 <> Неопределено Тогда
Результат.Добавить(Значение4);
КонецЕсли;
Если Значение3 <> Неопределено Тогда
Результат.Добавить(Значение3);
КонецЕсли;
Если Значение2 <> Неопределено Тогда
Результат.Добавить(Значение2);
КонецЕсли;
Результат.Добавить(Значение1);
Возврат Результат;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
#Область Данные #Область Данные
Loaded 100 of 299 files, more files were not shown because too many files have changed in this diff. Show more