3_1_5_237

This commit is contained in:
Компания 1С committed 2021-10-29 12:32:00 +03:00
1 parent d5da2cab4a
commit 5db66f3ced
216 files changed
+4177 -3971

No files matched your search

@@ -275,7 +275,7 @@
Если КодЯзыка = "ru" Или КодЯзыка = "be" Тогда Если КодЯзыка = "ru" Или КодЯзыка = "be" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для русского и белорусского языков (ru_RU, be_BY): |Образец заполнения для русского и белорусского языков (ru_RU, be_BY):
| |
|рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2 |рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2
@@ -293,7 +293,7 @@
ИначеЕсли КодЯзыка = "uk" Тогда ИначеЕсли КодЯзыка = "uk" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для украинского языка (uk_UA): |Образец заполнения для украинского языка (uk_UA):
| |
|гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2 |гривна, гривны, гривен, м, копейка, копейки, копеек, ж, 2
@@ -311,7 +311,7 @@
ИначеЕсли КодЯзыка = "pl" Тогда ИначеЕсли КодЯзыка = "pl" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для польского языка (pl_PL): |Образец заполнения для польского языка (pl_PL):
| |
|złoty, złote, złotych, m, grosz, grosze, groszy, m, 2 |złoty, złote, złotych, m, grosz, grosze, groszy, m, 2
@@ -329,7 +329,7 @@
ИначеЕсли КодЯзыка = "en" Или КодЯзыка = "fr" Или КодЯзыка = "fi" Или КодЯзыка = "kk" Тогда ИначеЕсли КодЯзыка = "en" Или КодЯзыка = "fr" Или КодЯзыка = "fi" Или КодЯзыка = "kk" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для английского, французского, финского и казахского языков (en_US, fr_CA,fi_FI, kk_KZ): |Образец заполнения для английского, французского, финского и казахского языков (en_US, fr_CA,fi_FI, kk_KZ):
| |
|dollar, dollars, cent, cents, 2 |dollar, dollars, cent, cents, 2
@@ -343,7 +343,7 @@
ИначеЕсли КодЯзыка = "de" Тогда ИначеЕсли КодЯзыка = "de" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для немецкого языка (de_DE): |Образец заполнения для немецкого языка (de_DE):
| |
|EURO, EURO, М, Cent, Cent, M, 2 |EURO, EURO, М, Cent, Cent, M, 2
@@ -359,7 +359,7 @@
ИначеЕсли КодЯзыка = "lv" Тогда ИначеЕсли КодЯзыка = "lv" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для латышского языка (lv_LV): |Образец заполнения для латышского языка (lv_LV):
| |
|lats, lati, latu, V, santīms, santīmi, santīmu, V, 2, J, J |lats, lati, latu, V, santīms, santīmi, santīmu, V, 2, J, J
@@ -381,7 +381,7 @@
ИначеЕсли КодЯзыка = "lt" Тогда ИначеЕсли КодЯзыка = "lt" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для литовского языка (lt_LT): |Образец заполнения для литовского языка (lt_LT):
| |
|litas, litai, litų, М, centas, centai, centų, М, 2 |litas, litai, litų, М, centas, centai, centų, М, 2
@@ -399,7 +399,7 @@
ИначеЕсли КодЯзыка = "et" Тогда ИначеЕсли КодЯзыка = "et" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для эстонского языка (et_EE): |Образец заполнения для эстонского языка (et_EE):
| |
|kroon, krooni, sent, senti, 2 |kroon, krooni, sent, senti, 2
@@ -413,7 +413,7 @@
ИначеЕсли КодЯзыка = "bg" Тогда ИначеЕсли КодЯзыка = "bg" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для болгарского языка (bg_BG): |Образец заполнения для болгарского языка (bg_BG):
| |
|лев, лева, м, стотинка, стотинки, ж, 2 |лев, лева, м, стотинка, стотинки, ж, 2
@@ -433,7 +433,7 @@
ИначеЕсли КодЯзыка = "ro" Тогда ИначеЕсли КодЯзыка = "ro" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для румынского языка (ro_RO): |Образец заполнения для румынского языка (ro_RO):
| |
|leu, lei, M, ban, bani, W, 2 |leu, lei, M, ban, bani, W, 2
@@ -453,7 +453,7 @@
ИначеЕсли КодЯзыка = "ka" Тогда ИначеЕсли КодЯзыка = "ka" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для грузинского языка (ka_GE): |Образец заполнения для грузинского языка (ka_GE):
| |
|ლარი, თეთრი, 2 |ლარი, თეთრი, 2
@@ -467,7 +467,7 @@
ИначеЕсли КодЯзыка = "az" Или КодЯзыка = "tk" Тогда ИначеЕсли КодЯзыка = "az" Или КодЯзыка = "tk" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для азербайджанского(az) и туркменского языков(tk): |Образец заполнения для азербайджанского(az) и туркменского языков(tk):
| |
|TL,Kr,2 |TL,Kr,2
@@ -481,7 +481,7 @@
ИначеЕсли КодЯзыка = "vi" Тогда ИначеЕсли КодЯзыка = "vi" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для вьетнамского языка (vi_VN): |Образец заполнения для вьетнамского языка (vi_VN):
| |
|dong, xu, 2 |dong, xu, 2
@@ -495,7 +495,7 @@
ИначеЕсли КодЯзыка = "tr" Тогда ИначеЕсли КодЯзыка = "tr" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для турецкого языка (tr_TR): |Образец заполнения для турецкого языка (tr_TR):
| |
|TL,Kr,2,Separate |TL,Kr,2,Separate
@@ -510,7 +510,7 @@
ИначеЕсли КодЯзыка = "hu" Тогда ИначеЕсли КодЯзыка = "hu" Тогда
Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр( Результат.Инструкция = СтроковыеФункции.ФорматированнаяСтрока(НСтр(
"ru = 'Параметры прописи необходимо перечислить через запятую. "ru = 'Перечислите параметры прописи через запятую.
|Образец заполнения для венгерского языка (hu): |Образец заполнения для венгерского языка (hu):
| |
|Forint, fillér, 2 |Forint, fillér, 2
@@ -29,7 +29,7 @@
Если Наименование <> "" И ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование) Тогда Если Наименование <> "" И ВариантыОтчетов.НаименованиеЗанято(Отчет, Ссылка, Наименование) Тогда
Отказ = Истина; Отказ = Истина;
ОбщегоНазначения.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" занято, необходимо указать другое наименование.'"), Наименование), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" занято, укажите другое наименование.'"), Наименование),
, ,
"Наименование"); "Наименование");
КонецЕсли; КонецЕсли;
@@ -79,7 +79,7 @@
КлючВарианта); КлючВарианта);
КонецЕсли; КонецЕсли;
ТекстОшибки = ТекстОшибки + НСтр("ru = 'Перед снятием пометки удаления варианта отчета ТекстОшибки = ТекстОшибки + НСтр("ru = 'Перед снятием пометки удаления варианта отчета
|необходимо установить пометку удаления конфликтующего варианта отчета.'"); |установите пометку удаления конфликтующего варианта отчета.'");
ВызватьИсключение ТекстОшибки; ВызватьИсключение ТекстОшибки;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -160,7 +160,7 @@
ЧислоВыделенныхСтрок = Элементы.Список.ВыделенныеСтроки.Количество(); ЧислоВыделенныхСтрок = Элементы.Список.ВыделенныеСтроки.Количество();
Если ЧислоВыделенныхСтрок <> 2 И ЧислоВыделенныхСтрок <> 1 Тогда Если ЧислоВыделенныхСтрок <> 2 И ЧислоВыделенныхСтрок <> 1 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Для просмотра отличий необходимо выбрать две версии файла.'")); ПоказатьПредупреждение(, НСтр("ru = 'Для просмотра отличий выберите две версии файла.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -48,7 +48,7 @@
<ul><li>Для создания международного адреса (например, для валютных платежей), включите флажок <strong>Международный формат адреса</strong>, в этом случае ссылка <strong>Дополнительные настройки адреса</strong> становится недоступной.</li></ul><h3>Дополнительные настройки поля Адрес </h3> <ul><li>Для создания международного адреса (например, для валютных платежей), включите флажок <strong>Международный формат адреса</strong>, в этом случае ссылка <strong>Дополнительные настройки адреса</strong> становится недоступной.</li></ul><h3>Дополнительные настройки поля Адрес </h3>
<p>С помощью соответствующей ссылки можно перейти к дополнительным настройкам адреса:</p> <p>С помощью соответствующей ссылки можно перейти к дополнительным настройкам адреса:</p>
<ul><li>Включите флажок <strong>Только российский адрес</strong>, для того чтобы запретить выбор другой страны при заполнении адреса. Используйте эту возможность, если у сотрудников Вашей организации только российские адреса, это ускорит ввод информации. При этом становятся доступными дополнительные настройки: <ul><li>Включите флажок <strong>Только российский адрес</strong>, для того чтобы запретить выбор другой страны при заполнении адреса. Используйте эту возможность, если у сотрудников Вашей организации только российские адреса, это ускорит ввод информации. При этом становятся доступными дополнительные настройки:
<ul><li><strong>Запрещать ввод некорректного адреса</strong> - если флажок включен, то при некорректном вводе российского адреса невозможно будет ввести данные в программу (имеет смысл только при использовании шаблонов ввода и адресного классификатора - для использования этой возможности включите флажок <strong>Редактировать только в диалоге</strong>). Адрес проверяется по ФИАС. <ul><li><strong>Запрещать ввод некорректного адреса</strong> - если флажок включен, то при некорректном вводе российского адреса невозможно будет ввести данные в программу (имеет смысл только при использовании шаблонов ввода и адресного классификатора - для использования этой возможности включите флажок <strong>Редактировать только в диалоге</strong>). Адрес проверяется по ГАР ФНС России.
</li> </li>
<li><strong>Указывать ОКТМО</strong> - включите флажок, для того чтобы автоматически заполнялось поле ОКТМО. По ОКТМО нужно получать адрес муниципального образования, в том числе и код - получение особенностей налогообложения выполняется именно по коду. При необходимости поле можно отредактировать.</li> <li><strong>Указывать ОКТМО</strong> - включите флажок, для того чтобы автоматически заполнялось поле ОКТМО. По ОКТМО нужно получать адрес муниципального образования, в том числе и код - получение особенностей налогообложения выполняется именно по коду. При необходимости поле можно отредактировать.</li>
<a name="СтандартныеПодсистемы.КонтрольВеденияУчета"></a> <a name="СтандартныеПодсистемы.КонтрольВеденияУчета"></a>
@@ -160,7 +160,7 @@
Если ВидКИСТакимНаименованиемУжеСуществует(ТекущийОбъект) Тогда Если ВидКИСТакимНаименованиемУжеСуществует(ТекущийОбъект) Тогда
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Вид контактной информации с наименованием %1 уже существует. Необходимо задать другое наименование.'"), НСтр("ru = 'Вид контактной информации с наименованием %1 уже существует. Задайте другое наименование.'"),
Строка(ТекущийОбъект.Наименование)); Строка(ТекущийОбъект.Наименование));
КонецЕсли; КонецЕсли;
@@ -349,14 +349,14 @@
<name>ПроверятьПоФИАС</name> <name>ПроверятьПоФИАС</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Проверять по ФИАС</value> <value>Проверять по адресному классификатору</value>
</synonym> </synonym>
<type> <type>
<types>Boolean</types> <types>Boolean</types>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>Проверять корректность ввода адресов по классификатору ФИАС</value> <value>Проверять корректность ввода адресов по адресному классификатору</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
@@ -141,7 +141,7 @@
Если Модифицированность Тогда Если Модифицированность Тогда
Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаЗаписатьОбъект", ЭтотОбъект); Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаЗаписатьОбъект", ЭтотОбъект);
ПоказатьВопрос(Оповещение, ПоказатьВопрос(Оповещение,
НСтр("ru = 'Для проверки обновления необходимо записать изменения. Записать?'"), НСтр("ru = 'Для проверки обновления запишите изменения. Записать?'"),
РежимДиалогаВопрос.ДаНет); РежимДиалогаВопрос.ДаНет);
Иначе Иначе
НачатьОбновлениеКомпонентыСПортала(); НачатьОбновлениеКомпонентыСПортала();
@@ -161,7 +161,7 @@
Процедура СохранитьКак(Команда) Процедура СохранитьКак(Команда)
Если ЭтоАдресВременногоХранилища(АдресДвоичныхДанныхКомпоненты) Тогда Если ЭтоАдресВременногоХранилища(АдресДвоичныхДанныхКомпоненты) Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Перед сохранение компоненты в файл элемент справочника нужно записать.'")); ПоказатьПредупреждение(, НСтр("ru = 'Перед сохранение компоненты в файл запишите элемент справочника.'"));
Иначе Иначе
ОчиститьСообщения(); ОчиститьСообщения();
ВнешниеКомпонентыСлужебныйКлиент.СохранитьКомпонентуВФайл(Объект.Ссылка); ВнешниеКомпонентыСлужебныйКлиент.СохранитьКомпонентуВФайл(Объект.Ссылка);
@@ -269,7 +269,7 @@
Оповещение = Новый ОписаниеОповещения("ЗагрузитьКомпонентуПослеОтображенияОшибки", ЭтотОбъект); Оповещение = Новый ОписаниеОповещения("ЗагрузитьКомпонентуПослеОтображенияОшибки", ЭтотОбъект);
СтрокаСПредупреждением = НСтр("ru = '%1 СтрокаСПредупреждением = НСтр("ru = '%1
|Необходимо указать zip-архив с внешней компонентой. |Укажите zip-архив с внешней компонентой.
|Подробнее см. <a href = ""https://its.1c.ru/db/metod8dev/content/3221"">Технология создания внешних компонент</a>'"); |Подробнее см. <a href = ""https://its.1c.ru/db/metod8dev/content/3221"">Технология создания внешних компонент</a>'");
СтрокаСПредупреждением = СтроковыеФункцииКлиент.ФорматированнаяСтрока(СтрокаСПредупреждением, ОписаниеОшибки); СтрокаСПредупреждением = СтроковыеФункцииКлиент.ФорматированнаяСтрока(СтрокаСПредупреждением, ОписаниеОшибки);
@@ -328,7 +328,7 @@
Если ВыбиратьИерархически Тогда Если ВыбиратьИерархически Тогда
ПоказатьПредупреждение(, ПоказатьПредупреждение(,
НСтр("ru = 'Для перетаскивания пользователя в группы необходимо отключить НСтр("ru = 'Для перетаскивания пользователя в группы отключите
|флажок ""Показывать пользователей нижестоящих групп"".'")); |флажок ""Показывать пользователей нижестоящих групп"".'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -2163,6 +2163,10 @@
<event>OnOpen</event> <event>OnOpen</event>
<name>ПриОткрытии</name> <name>ПриОткрытии</name>
</handlers> </handlers>
<handlers>
<event>OnLoadDataFromSettingsAtServer</event>
<name>ПриЗагрузкеДанныхИзНастроекНаСервере</name>
</handlers>
<handlers> <handlers>
<event>OnCreateAtServer</event> <event>OnCreateAtServer</event>
<name>ПриСозданииНаСервере</name> <name>ПриСозданииНаСервере</name>
@@ -612,7 +612,7 @@
Если Объект.ПометкаУдаления И ВходВПрограммуРазрешен Тогда Если Объект.ПометкаУдаления И ВходВПрограммуРазрешен Тогда
ВходВПрограммуРазрешен = Ложь; ВходВПрограммуРазрешен = Ложь;
ПоказатьПредупреждение(, ПоказатьПредупреждение(,
НСтр("ru = 'Чтобы разрешить вход в программу, требуется снять НСтр("ru = 'Чтобы разрешить вход в программу, снимите
|пометку на удаление с этого внешнего пользователя.'")); |пометку на удаление с этого внешнего пользователя.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -437,7 +437,7 @@
Процедура НастроитьВидимость(Команда) Процедура НастроитьВидимость(Команда)
Если Модифицированность Тогда Если Модифицированность Тогда
ОписаниеОповещения = Новый ОписаниеОповещения("НастроитьВидимостьЗавершение", ЭтотОбъект); ОписаниеОповещения = Новый ОписаниеОповещения("НастроитьВидимостьЗавершение", ЭтотОбъект);
ТекстВопроса = НСтр("ru = 'Для настройки видимости команд печати обработку необходимо записать. Продолжить?'"); ТекстВопроса = НСтр("ru = 'Для настройки видимости команд печати запишите обработку. Продолжить?'");
Кнопки = Новый СписокЗначений; Кнопки = Новый СписокЗначений;
Кнопки.Добавить("Продолжить", НСтр("ru = 'Продолжить'")); Кнопки.Добавить("Продолжить", НСтр("ru = 'Продолжить'"));
Кнопки.Добавить(КодВозвратаДиалога.Отмена); Кнопки.Добавить(КодВозвратаДиалога.Отмена);
@@ -465,7 +465,7 @@
Обработчик = Новый ОписаниеОповещения("ВыполнитьКомандуПослеПодтвержденияЗаписи", ЭтотОбъект, Контекст); Обработчик = Новый ОписаниеОповещения("ВыполнитьКомандуПослеПодтвержденияЗаписи", ЭтотОбъект, Контекст);
Если Объект.Ссылка.Пустая() Или Модифицированность Тогда Если Объект.Ссылка.Пустая() Или Модифицированность Тогда
ТекстВопроса = НСтр("ru = 'Для выполнения команды необходимо записать данные.'"); ТекстВопроса = НСтр("ru = 'Для выполнения команды запишите данные.'");
Кнопки = Новый СписокЗначений; Кнопки = Новый СписокЗначений;
Кнопки.Добавить("ЗаписатьИПродолжить", НСтр("ru = 'Записать и продолжить'")); Кнопки.Добавить("ЗаписатьИПродолжить", НСтр("ru = 'Записать и продолжить'"));
Кнопки.Добавить(КодВозвратаДиалога.Отмена); Кнопки.Добавить(КодВозвратаДиалога.Отмена);
@@ -543,7 +543,7 @@
Если ПараметрыЗаписи.РегистрацияОбработки Тогда Если ПараметрыЗаписи.РегистрацияОбработки Тогда
ОбновитьПовторноИспользуемыеЗначения(); ОбновитьПовторноИспользуемыеЗначения();
ТекстОповещения = НСтр("ru = 'Для применения изменений в открытых окнах необходимо их закрыть и открыть заново.'"); ТекстОповещения = НСтр("ru = 'Для применения изменений в открытых окнах закройте их и откройте заново.'");
ПоказатьОповещениеПользователя(, , ТекстОповещения); ПоказатьОповещениеПользователя(, , ТекстОповещения);
КонецЕсли; КонецЕсли;
ЗаписатьНаКлиентеЗавершение(ПараметрыЗаписи); ЗаписатьНаКлиентеЗавершение(ПараметрыЗаписи);
@@ -30,7 +30,7 @@
Если НЕ ИспользоватьДляФормыОбъекта И НЕ ИспользоватьДляФормыСписка Если НЕ ИспользоватьДляФормыОбъекта И НЕ ИспользоватьДляФормыСписка
И Публикация <> Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Отключена Тогда И Публикация <> Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Отключена Тогда
ОбщегоНазначения.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Необходимо отключить публикацию или выбрать для использования как минимум одну из форм'") НСтр("ru = 'Отключите публикацию или выберите для использования как минимум одну из форм'")
, ,
, ,
, ,
@@ -82,7 +82,7 @@
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Имя ""%1"", используемое данным отчетом (обработкой), уже занято другим опубликованным дополнительным отчетом (обработкой). НСтр("ru = 'Имя ""%1"", используемое данным отчетом (обработкой), уже занято другим опубликованным дополнительным отчетом (обработкой).
| |
|Для продолжения необходимо изменить вид Публикации с ""%2"" на ""%3"" или ""%4"".'"), |Для продолжения измените вид Публикации с ""%2"" на ""%3"" или ""%4"".'"),
ИмяОбъекта, ИмяОбъекта,
Строка(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется), Строка(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется),
Строка(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.РежимОтладки), Строка(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.РежимОтладки),
@@ -2420,11 +2420,9 @@
Если НайденноеОписание = Неопределено Тогда Если НайденноеОписание = Неопределено Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПодсистемаСтандартныеПодсистемы = НайденноеОписание.Ссылка;
Отбор = Новый Структура; Отбор = Новый Структура;
Отбор.Вставить("ЭтоНовый", Истина); Отбор.Вставить("ЭтоНовый", Истина);
Отбор.Вставить("Родитель", ПодсистемаСтандартныеПодсистемы);
НайденныеОписания = Выгрузка.НайтиСтроки(Отбор); НайденныеОписания = Выгрузка.НайтиСтроки(Отбор);
НаследующиеПодсистемы = Новый Массив; НаследующиеПодсистемы = Новый Массив;
@@ -2433,12 +2431,15 @@
МодульРаботаСФайламиСлужебный.ПриОпределенииНаследованияПодсистем(Выгрузка, НаследующиеПодсистемы); МодульРаботаСФайламиСлужебный.ПриОпределенииНаследованияПодсистем(Выгрузка, НаследующиеПодсистемы);
КонецЕсли; КонецЕсли;
СтрокаПоиска = Метаданные.Подсистемы.СтандартныеПодсистемы.ПолноеИмя() + ".";
НовыеПодсистемы = Новый Массив; НовыеПодсистемы = Новый Массив;
Для Каждого Описание Из НайденныеОписания Цикл Для Каждого Описание Из НайденныеОписания Цикл
Если НаследующиеПодсистемы.Найти(Описание) <> Неопределено Тогда Если НаследующиеПодсистемы.Найти(Описание) <> Неопределено Тогда
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
НовыеПодсистемы.Добавить(Описание.ПолноеИмя); Если СтрНачинаетсяС(Описание.ПолноеИмя, СтрокаПоиска) Тогда
НовыеПодсистемы.Добавить(Описание.ПолноеИмя);
КонецЕсли;
КонецЦикла; КонецЦикла;
ОбновитьСписокНовыхПодсистем(НовыеПодсистемы); ОбновитьСписокНовыхПодсистем(НовыеПодсистемы);
@@ -3298,7 +3299,7 @@
ИначеЕсли Не УстановленныеРасширения[0].Активно Тогда ИначеЕсли Не УстановленныеРасширения[0].Активно Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Расширение конфигурации ""%1"" установлено, но выключено. НСтр("ru = 'Расширение конфигурации ""%1"" установлено, но выключено.
|Требуется включить расширение и перезапустить сеанс.'"), |Включите расширение и перезапустите сеанс.'"),
ИмяРасширения); ИмяРасширения);
ИначеЕсли ОтключенныеРасширения.Количество() > 0 И Не ОтключенныеРасширения[0].Активно ИначеЕсли ОтключенныеРасширения.Количество() > 0 И Не ОтключенныеРасширения[0].Активно
@@ -3306,7 +3307,7 @@
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Расширение конфигурации ""%1"" установлено после запуска сеанса, поэтому не подключено. НСтр("ru = 'Расширение конфигурации ""%1"" установлено после запуска сеанса, поэтому не подключено.
|Требуется перезапустить сеанс.'"), |Перезапустите сеанс.'"),
ИмяРасширения); ИмяРасширения);
ИначеЕсли ОтключенныеРасширения.Количество() > 0 И ОтключенныеРасширения[0].Активно Тогда ИначеЕсли ОтключенныеРасширения.Количество() > 0 И ОтключенныеРасширения[0].Активно Тогда
@@ -416,7 +416,7 @@
Если ВыбиратьИерархически Тогда Если ВыбиратьИерархически Тогда
ПоказатьПредупреждение(, ПоказатьПредупреждение(,
НСтр("ru = 'Для перетаскивания пользователя в группы необходимо отключить НСтр("ru = 'Для перетаскивания пользователя в группы отключите
|флажок ""Показывать пользователей нижестоящих групп"".'")); |флажок ""Показывать пользователей нижестоящих групп"".'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -733,7 +733,7 @@
Если Объект.ПометкаУдаления И ВходВПрограммуРазрешен Тогда Если Объект.ПометкаУдаления И ВходВПрограммуРазрешен Тогда
ВходВПрограммуРазрешен = Ложь; ВходВПрограммуРазрешен = Ложь;
ПоказатьПредупреждение(, ПоказатьПредупреждение(,
НСтр("ru = 'Чтобы разрешить вход в программу, требуется снять НСтр("ru = 'Чтобы разрешить вход в программу, снимите
|пометку на удаление с этого пользователя.'")); |пометку на удаление с этого пользователя.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1269,7 +1269,7 @@
ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Роли.Имя"); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Роли.Имя");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = НСтр("ru = 'ПолныеПрава'"); ОтборЭлемента.ПравоеЗначение = Метаданные.Роли.ПолныеПрава.Имя;
ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЗапретИзмененияАдминистративногоДоступа"); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЗапретИзмененияАдминистративногоДоступа");
@@ -1294,7 +1294,7 @@
ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Роли.Имя"); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Роли.Имя");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = НСтр("ru = 'ПолныеПрава'"); ОтборЭлемента.ПравоеЗначение = Метаданные.Роли.ПолныеПрава.Имя;
ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЗапретИзмененияАдминистративногоДоступа"); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЗапретИзмененияАдминистративногоДоступа");
@@ -89,7 +89,7 @@
Если Не ВыбраноХотьОдноПравило Тогда Если Не ВыбраноХотьОдноПравило Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю( ОбщегоНазначенияКлиент.СообщитьПользователю(
НСтр("ru = 'Необходимо выбрать хотя бы одно правило для применения'"),,"Список"); НСтр("ru = 'Выберите хотя бы одно правило для применения'"),,"Список");
Отказ = Истина; Отказ = Истина;
КонецЕсли; КонецЕсли;
@@ -170,7 +170,7 @@
ЕстьГруппы = Ложь; ЕстьГруппы = Ложь;
Проверки = ВыделенныеПроверки(ЕстьГруппы); Проверки = ВыделенныеПроверки(ЕстьГруппы);
Если Проверки.Количество() = 0 Тогда Если Проверки.Количество() = 0 Тогда
ВызватьИсключение НСтр("ru = 'Необходимо выбрать в списке одну или несколько проверок.'"); ВызватьИсключение НСтр("ru = 'Выберите в списке одну или несколько проверок.'");
КонецЕсли; КонецЕсли;
Если ЕстьГруппы Тогда Если ЕстьГруппы Тогда
@@ -197,7 +197,7 @@
Процедура ВыполнитьВсеПроверки(Команда) Процедура ВыполнитьВсеПроверки(Команда)
Проверки = ВсеВыделенныеПроверки(); Проверки = ВсеВыделенныеПроверки();
Если Проверки.Количество() = 0 Тогда Если Проверки.Количество() = 0 Тогда
ВызватьИсключение НСтр("ru = 'Необходимо выбрать в списке одну или несколько проверок.'"); ВызватьИсключение НСтр("ru = 'Выберите в списке одну или несколько проверок.'");
КонецЕсли; КонецЕсли;
ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
@@ -169,7 +169,7 @@
ПоказатьВопрос( ПоказатьВопрос(
Новый ОписаниеОповещения("УстановитьПометкуУдаленияПослеОтветаНаВопрос", ЭтотОбъект), Новый ОписаниеОповещения("УстановитьПометкуУдаленияПослеОтветаНаВопрос", ЭтотОбъект),
НСтр("ru = 'Для установки отметки удаления необходимо записать сделанные изменения. НСтр("ru = 'Для установки отметки удаления запишите сделанные изменения.
|Записать данные?'"), РежимДиалогаВопрос.ДаНет); |Записать данные?'"), РежимДиалогаВопрос.ДаНет);
КонецПроцедуры КонецПроцедуры
@@ -448,7 +448,7 @@
Если Не ЗаполненыВсеОбязательныеНастройки Тогда Если Не ЗаполненыВсеОбязательныеНастройки Тогда
Отказ = Истина; Отказ = Истина;
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для отчета ''%1'' заполнены не все настройки, обязательные для заполнения. Необходимо заполнить все обязательные настройки или снять флажок ''Подготовлена''.'"), НСтр("ru = 'Для отчета ''%1'' заполнены не все настройки, обязательные для заполнения. Заполните все обязательные настройки или снимите флажок ''Подготовлена''.'"),
Строка(СтрокаОтчеты.Отчет)); Строка(СтрокаОтчеты.Отчет));
Поле = "Отчеты["+ Формат(ТекущийОбъект.Отчеты.Индекс(ОбъектСтрокаОтчеты), "ЧН=0; ЧГ=0") +"].Представление"; Поле = "Отчеты["+ Формат(ТекущийОбъект.Отчеты.Индекс(ОбъектСтрокаОтчеты), "ЧН=0; ЧГ=0") +"].Представление";
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, ТекущийОбъект, Поле); ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, ТекущийОбъект, Поле);
@@ -465,7 +465,7 @@
Если РассылкаНеПерсонализирована И ОтчетПерсонализирован Тогда Если РассылкаНеПерсонализирована И ОтчетПерсонализирован Тогда
Отказ = Истина; Отказ = Истина;
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В настройках отчета ''%1'' задан отбор по получателю рассылки. Необходимо отключить этот отбор или изменить вид рассылки на ''Свой отчет для каждого получателя''.'"), НСтр("ru = 'В настройках отчета ''%1'' задан отбор по получателю рассылки. Отключите этот отбор или измените вид рассылки на ''Свой отчет для каждого получателя''.'"),
Строка(СтрокаОтчеты.Отчет)); Строка(СтрокаОтчеты.Отчет));
Поле = "Отчеты["+ Формат(ТекущийОбъект.Отчеты.Индекс(ОбъектСтрокаОтчеты), "ЧН=0; ЧГ=0") +"].Представление"; Поле = "Отчеты["+ Формат(ТекущийОбъект.Отчеты.Индекс(ОбъектСтрокаОтчеты), "ЧН=0; ЧГ=0") +"].Представление";
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, ТекущийОбъект, Поле); ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, ТекущийОбъект, Поле);
@@ -1167,7 +1167,7 @@
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
Если Не ЗначениеЗаполнено(Объект.ТипПолучателейРассылки) Тогда Если Не ЗначениеЗаполнено(Объект.ТипПолучателейРассылки) Тогда
ТекстОшибки = НСтр("ru = 'Для ввода получателей необходимо выбрать их тип'"); ТекстОшибки = НСтр("ru = 'Для ввода получателей выберите их тип'");
ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстОшибки, , "ТипПолучателейРассылки"); ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстОшибки, , "ТипПолучателейРассылки");
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1371,7 +1371,7 @@
// Проверка на содержание типа получателей. // Проверка на содержание типа получателей.
Если Не Настройка.ОписаниеДоступныхТипов.СодержитТип(ОсновнойТипПолучателей) Тогда Если Не Настройка.ОписаниеДоступныхТипов.СодержитТип(ОсновнойТипПолучателей) Тогда
ТекстПредупреждения = НСтр("ru = 'Тип ""%1"" не подходит по типу к выбранной настройке. ТекстПредупреждения = НСтр("ru = 'Тип ""%1"" не подходит по типу к выбранной настройке.
|Необходимо выбрать другой тип получателей рассылки или другую настройку.'"); |Выберите другой тип получателей рассылки или другую настройку.'");
ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстПредупреждения, Строка(ОсновнойТипПолучателей)); ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстПредупреждения, Строка(ОсновнойТипПолучателей));
ПоказатьПредупреждение(, ТекстПредупреждения); ПоказатьПредупреждение(, ТекстПредупреждения);
Возврат; Возврат;
@@ -271,7 +271,7 @@
Если Не ПроверкаВыполнена Тогда Если Не ПроверкаВыполнена Тогда
ПоказатьПредупреждение(, ПоказатьПредупреждение(,
НСтр("ru = 'Для сбора технической информации о возникшей проблеме необходимо выполнить проверку сертификата.'")); НСтр("ru = 'Для сбора технической информации о возникшей проблеме выполните проверку сертификата.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -509,7 +509,7 @@
Если СтандартныеПроверки Тогда Если СтандартныеПроверки Тогда
ЭлектроннаяПодписьКлиент.УстановитьРасширение(Ложь, Новый ОписаниеОповещения( ЭлектроннаяПодписьКлиент.УстановитьРасширение(Ложь, Новый ОписаниеОповещения(
"ПроверитьНаСторонеКлиентаПослеПодключенияРасширенияРаботыСКриптографией", ЭтотОбъект, Контекст), "ПроверитьНаСторонеКлиентаПослеПодключенияРасширенияРаботыСКриптографией", ЭтотОбъект, Контекст),
НСтр("ru = 'Для продолжения необходимо установить расширение для работы с криптографией.'")); НСтр("ru = 'Для продолжения установите расширение для работы с криптографией.'"));
Иначе Иначе
Контекст.Вставить("МенеджерКриптографии", Неопределено); Контекст.Вставить("МенеджерКриптографии", Неопределено);
ПроверитьНаСторонеКлиентаДополнительныеПроверки(Контекст); ПроверитьНаСторонеКлиентаДополнительныеПроверки(Контекст);
@@ -1,6 +1,6 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.17239"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.17239"></meta></head><body>
<p>Предназначен для настройки и хранения сценариев синхронизации данных.</p> <p>Предназначен для настройки и хранения сценариев синхронизации данных.</p>
<p>Открыть список можно из раздела <strong>Синхронизация данных</strong> по соответствующей команде. Также можно открыть список сценариев из списка <strong>Синхронизация данных</strong> по соответствующей команде меню <strong>Еще</strong>.</p> <p>Сценарии синхронизации для выбранной настройки можно просмотреть с помощью ссылки <b>Синхронизация по расписанию </b>в нижней части списка <b>Настройки Синхронизации данных</b>. Также это можно сделать в настройке синхронизации данных с помощью ссылки панели навигации <b>Сценарии синхронизации</b>.</p>
<p>В списке выводится:</p> <p>В списке выводится:</p>
<ul><li> <ul><li>
<div><img src="StdPicture.MoveLeft"></img> - загрузка (получение данных);</div> <div><img src="StdPicture.MoveLeft"></img> - загрузка (получение данных);</div>
@@ -174,7 +174,7 @@
КонецЕсли; КонецЕсли;
Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
ТекстВопроса = НСтр("ru = 'Для выполнения проверки целостности требуется записать сведения о томе. ТекстВопроса = НСтр("ru = 'Для выполнения проверки целостности запишите сведения о томе.
|Записать?'"); |Записать?'");
Оповещение = Новый ОписаниеОповещения("ТребуетсяЗаписатьФормуДляПроверкиЦелостностиТома", ЭтотОбъект); Оповещение = Новый ОписаниеОповещения("ТребуетсяЗаписатьФормуДляПроверкиЦелостностиТома", ЭтотОбъект);
ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет); ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
@@ -34,7 +34,7 @@
Элементы.ОставлятьПисьмаНаСервере.Видимость = ДоступноПолучениеПисем; Элементы.ОставлятьПисьмаНаСервере.Видимость = ДоступноПолучениеПисем;
Элементы.НастройкаУчетнойЗаписиЗаголовок.Заголовок = ?(КонтекстныйРежим, Элементы.НастройкаУчетнойЗаписиЗаголовок.Заголовок = ?(КонтекстныйРежим,
НСтр("ru = 'Для отправки писем необходимо настроить почту'"), НСтр("ru = 'Для отправки писем настройте почту'"),
НСтр("ru = 'Введите настройки почты'")); НСтр("ru = 'Введите настройки почты'"));
Элементы.НастройкаУчетнойЗаписиЗаголовок.Видимость = КонтекстныйРежим; Элементы.НастройкаУчетнойЗаписиЗаголовок.Видимость = КонтекстныйРежим;
@@ -379,7 +379,7 @@
КонецЕсли; КонецЕсли;
Если ПустаяСтрока(ПарольДляПолученияПисем) Тогда Если ПустаяСтрока(ПарольДляПолученияПисем) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Необходимо ввести пароль'"), , "ПарольДляПолученияПисем", , Отказ); ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Введите пароль'"), , "ПарольДляПолученияПисем", , Отказ);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -75,10 +75,12 @@
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка) Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если ЗначениеЗаполнено(Данные.АдресЭлектроннойПочты) И СтрНайти(Данные.Наименование, Данные.АдресЭлектроннойПочты) = 0 Тогда Если ЗначениеЗаполнено(Данные.АдресЭлектроннойПочты) И СтрНайти(Данные.Наименование, Данные.АдресЭлектроннойПочты) = 0 Тогда
Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (%2)'"), Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (%2)'"),
Данные.Наименование, Данные.АдресЭлектроннойПочты); Данные.Наименование, Данные.АдресЭлектроннойПочты);
СтандартнаяОбработка = Ложь; Иначе
Представление = Данные.Наименование;
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -348,12 +348,12 @@
Если Модифицированность Тогда Если Модифицированность Тогда
Если ЭтотОбъект.Объект.ПометкаУдаления Тогда Если ЭтотОбъект.Объект.ПометкаУдаления Тогда
ТекстВопроса = НСтр( ТекстВопроса = НСтр(
"ru = 'Для выполнения действия требуется записать изменения файла. "ru = 'Для выполнения действия запишите изменения файла.
|Записать изменения и снять пометку на удаление с файла |Записать изменения и снять пометку на удаление с файла
|""%1""?'"); |""%1""?'");
Иначе Иначе
ТекстВопроса = НСтр( ТекстВопроса = НСтр(
"ru = 'Для выполнения действия требуется записать изменения файла. "ru = 'Для выполнения действия запишите изменения файла.
|Записать изменения и пометить на удаление файл |Записать изменения и пометить на удаление файл
|""%1""?'"); |""%1""?'");
КонецЕсли; КонецЕсли;
@@ -508,7 +508,7 @@
ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВопросОНеобходимостиЗаписиПослеЗавершения", ЭтотОбъект); ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВопросОНеобходимостиЗаписиПослеЗавершения", ЭтотОбъект);
ПоказатьВопрос(ОбработчикОповещенияОЗакрытии, ПоказатьВопрос(ОбработчикОповещенияОЗакрытии,
НСтр("ru = 'Шаблон анкеты был модифицирован. НСтр("ru = 'Шаблон анкеты был модифицирован.
|Для корректного отображения изменений шаблон необходимо записать. |Для корректного отображения изменений запишите шаблон.
|Записать?'"), |Записать?'"),
РежимДиалогаВопрос.ДаНет, РежимДиалогаВопрос.ДаНет,
, ,
@@ -54,7 +54,6 @@
ИдВерсии = СервисКриптографииDSSКлиентСервер.ИдентификаторВерсииСервера(ВерсияАПИ); ИдВерсии = СервисКриптографииDSSКлиентСервер.ИдентификаторВерсииСервера(ВерсияАПИ);
Если ИдВерсии > 1 Тогда Если ИдВерсии > 1 Тогда
ПроверяемыеРеквизиты.Добавить("СервисАудита");
ПроверяемыеРеквизиты.Добавить("СервисОбработкиДокументов"); ПроверяемыеРеквизиты.Добавить("СервисОбработкиДокументов");
КонецЕсли; КонецЕсли;
@@ -368,7 +368,7 @@
Если Форма.Объект.Ссылка.Пустая() Тогда Если Форма.Объект.Ссылка.Пустая() Тогда
Форма.Элементы.ТаблицаВариантыОтветов.ТолькоПросмотр = Истина; Форма.Элементы.ТаблицаВариантыОтветов.ТолькоПросмотр = Истина;
Форма.ИнформацияВариантыОтветов = НСтр("ru = 'Для редактирования вариантов ответов необходимо записать вопрос для анкетирования'"); Форма.ИнформацияВариантыОтветов = НСтр("ru = 'Для редактирования вариантов ответов запишите вопрос для анкетирования'");
Иначе Иначе
Форма.Элементы.ТаблицаВариантыОтветов.ТолькоПросмотр = Ложь; Форма.Элементы.ТаблицаВариантыОтветов.ТолькоПросмотр = Ложь;
Форма.ИнформацияВариантыОтветов = НСтр("ru = 'Варианты ответов на вопрос:'"); Форма.ИнформацияВариантыОтветов = НСтр("ru = 'Варианты ответов на вопрос:'");
@@ -1419,9 +1419,9 @@
Если ВариантТекстаВопроса = "ИзменениеПометкиУдаления" Тогда Если ВариантТекстаВопроса = "ИзменениеПометкиУдаления" Тогда
Если Модифицированность Тогда Если Модифицированность Тогда
Если Объект.ПометкаУдаления Тогда Если Объект.ПометкаУдаления Тогда
ТекстВопроса = НСтр("ru = 'Для снятия пометки удаления необходимо записать внесенные изменения. Записать данные?'"); ТекстВопроса = НСтр("ru = 'Для снятия пометки удаления запишите внесенные изменения. Записать данные?'");
Иначе Иначе
ТекстВопроса = НСтр("ru = 'Для установки пометки удаления необходимо записать внесенные изменения. Записать данные?'"); ТекстВопроса = НСтр("ru = 'Для установки пометки удаления запишите внесенные изменения. Записать данные?'");
КонецЕсли; КонецЕсли;
Иначе Иначе
ТекстВопроса = НСтр("ru = 'Пометить ""%1"" на удаление?'"); ТекстВопроса = НСтр("ru = 'Пометить ""%1"" на удаление?'");
@@ -11,7 +11,14 @@
&НаКлиенте &НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОткрытьФорму("РегистрСведений.РезультатыОбменаДанными.Форма.ПредупрежденияСинхронизаций",, ПараметрыОткрытия = Новый Структура;
ПараметрыОткрытия.Вставить("МассивУзловПланаОбмена", Новый Массив);
ПараметрыОткрытия.Вставить("ОтборПоДатеВозникновения", Дата(1,1,1));
ПараметрыОткрытия.Вставить("ОтборУзловОбменов", Новый Массив);
ПараметрыОткрытия.Вставить("ОтборТипыПредупреждений", Новый Массив);
ПараметрыОткрытия.Вставить("ТолькоСкрытыеЗаписи", Истина);
ОткрытьФорму("РегистрСведений.РезультатыОбменаДанными.Форма.ПредупрежденияСинхронизаций", ПараметрыОткрытия,
ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Источник,
ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Уникальность,
ПараметрыВыполненияКоманды.Окно); ПараметрыВыполненияКоманды.Окно);
@@ -237,7 +237,7 @@
Если РольДоступнаНастройкаСинхронизацииДанных Тогда Если РольДоступнаНастройкаСинхронизацииДанных Тогда
Элементы.ПоясняющаяНадписьПолученоОбновление.Заголовок = НСтр("ru = 'Получено обновление программы из Интернета. Элементы.ПоясняющаяНадписьПолученоОбновление.Заголовок = НСтр("ru = 'Получено обновление программы из Интернета.
|Необходимо установить полученное обновление, после чего синхронизация будет продолжена.'"); |Установите полученное обновление, после чего синхронизация будет продолжена.'");
Иначе Иначе
Элементы.ПоясняющаяНадписьПолученоОбновление.Заголовок = НСтр("ru = 'Получено обновление программы из Интернета. Элементы.ПоясняющаяНадписьПолученоОбновление.Заголовок = НСтр("ru = 'Получено обновление программы из Интернета.
|Обратитесь к администратору информационной базы для установки полученного обновления.'"); |Обратитесь к администратору информационной базы для установки полученного обновления.'");
@@ -375,7 +375,7 @@
ТекущиеДанные = Элементы.ПолучателиПисьма.ТекущиеДанные; ТекущиеДанные = Элементы.ПолучателиПисьма.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда Если ТекущиеДанные = Неопределено Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Необходимо выбрать адрес получателя в списке справа.'")); ПоказатьПредупреждение(, НСтр("ru = 'Выберите адрес получателя в списке справа.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -17,7 +17,7 @@
Если Не ПользователиСлужебныйПовтИсп.ВерсияПредприятияПоддерживаетВосстановлениеПаролей() Тогда Если Не ПользователиСлужебныйПовтИсп.ВерсияПредприятияПоддерживаетВосстановлениеПаролей() Тогда
ВызватьИсключение НСтр("ru = 'Восстановление паролей пользователей не поддерживается. ВызватьИсключение НСтр("ru = 'Восстановление паролей пользователей не поддерживается.
|Необходимо обновить версию платформы 1С: Предприятие.'"); |Обновите версию платформы 1С: Предприятие.'");
КонецЕсли; КонецЕсли;
ПрочитьНастройкиВосстановленияПароля(); ПрочитьНастройкиВосстановленияПароля();
@@ -1,27 +1,34 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body>
<p>Предназначен для выбора исполнителя бизнес-процесса (например, <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">Задания</a>).</p> <p>Предназначена для выбора исполнителя бизнес-процесса (например, <a href="BusinessProcess.Задание.Form.ФормаБизнесПроцесса/Help">Задания</a>).</p>
<p>Открывается из бизнес-процесса по кнопке выбора в поле <strong>Исполнитель</strong>. </p> <p>Открывается из бизнес-процесса по кнопке выбора в поле <strong>Исполнитель</strong>. </p>
<p>В зависимости от специфики бизнес-процессов <a href="Task.ЗадачаИсполнителя/Help">задачи</a> могут быть адресованы исполнителюили группе исполнителей как персонально (персональная адресация - в качестве исполнителя можно выбирать конкретного пользователя), так и для некоторых <a href="v8help://1cv8/EnterprWorkingWithBusinessProcesses_StandardInterface">бизнес-процессов</a> с использованием ролей бизнес-процесса (ролевая адресация).</p> <p>В зависимости от специфики бизнес-процессов <a href="Task.ЗадачаИсполнителя/Help">задачи</a> могут быть адресованы исполнителю или группе исполнителей как персонально (персональная адресация - в качестве исполнителя можно выбирать конкретного пользователя), так и для некоторых <a href="v8help://1cv8/EnterprWorkingWithBusinessProcesses_StandardInterface">бизнес-процессов</a> с использованием ролей бизнес-процесса (ролевая адресация).</p>
<p>Если выбирается исполнитель, то бизнес-процесс будет адресован этому исполнителю. Если выполняется выбор роли, то бизнес-процесс адресуется тому исполнителю, который в момент рассмотрения задачи <a href="InformationRegister.ИсполнителиЗадач/Help">назначен исполнителем</a> этой роли. <br>В процессе работы роли могут быть переназначены. В этом случае задача автоматически переадресовывается новым исполнителям.</p> <p>Если выбирается исполнитель, то бизнес-процесс будет адресован этому исполнителю. Если выполняется выбор роли, то бизнес-процесс адресуется тому исполнителю, который в момент рассмотрения задачи <a href="InformationRegister.ИсполнителиЗадач/Help">назначен исполнителем</a> этой роли. <br>В процессе работы роли могут быть переназначены. В этом случае задача автоматически переадресовывается новым исполнителям.</p>
<h3>Пользователи</h3> <h3>Пользователи</h3>
<ul><a name="СтандартныеПодсистемы.Пользователи"> <ul><a name="СтандартныеПодсистемы.Пользователи">
</a><li><a name="СтандартныеПодсистемы.Пользователи">Выделите нужного </a><a href="Catalog.Пользователи/Help">пользователя</a>, нажмите <strong>Выбрать</strong></li>. </a>
<li><a name="СтандартныеПодсистемы.Пользователи">Выделите нужного </a><a href="Catalog.Пользователи/Help">пользователя</a>, нажмите <strong>Выбрать</strong>.</li>
<li>Также можно воспользоваться двойным щелчком мыши.</li></ul><h3>Особенности взаимодействия с внешними пользователями</h3> <li>Также можно воспользоваться двойным щелчком мыши.</li></ul><h3>Особенности взаимодействия с внешними пользователями</h3>
<ul><li> <ul><li>
<div>Исполнителями некоторых бизнес-процессов могут быть и внешние пользователи (например, партнеры или контактные лица партнеров).</div> <div>Исполнителями некоторых бизнес-процессов могут быть и внешние пользователи (например, партнеры или контактные лица партнеров).</div>
</li><li> </li>
<li>
<div>Внешним пользователям, как правило, недоступны имена конкретных сотрудников компании, поэтому в качестве исполнителя они могут указывать только предназначенные для них роли исполнителей.</div> <div>Внешним пользователям, как правило, недоступны имена конкретных сотрудников компании, поэтому в качестве исполнителя они могут указывать только предназначенные для них роли исполнителей.</div>
</li><li> </li>
<li>
<div>Для этого нужно настроить список таких ролей, указав, что они предназначены для определенных категорий внешних пользователей.</div></li></ul><h3>Роли исполнителей</h3> <div>Для этого нужно настроить список таких ролей, указав, что они предназначены для определенных категорий внешних пользователей.</div></li></ul><h3>Роли исполнителей</h3>
<ul><li> <ul><li>
<div>При ролевой адресации поручение выдается не персонально исполнителю, а некоторой роли бизнес-процесса (например, <strong>Старший по залу</strong>). </div> <div>При ролевой адресации поручение выдается не персонально исполнителю, а некоторой роли бизнес-процесса (например, <strong>Старший по залу</strong>). </div>
<ul><li> <ul><li>
<div>Могут использоваться "уточняющие" <a href="ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач/Help">объекты адресации</a>, основные и дополнительные. Например, у роли <strong>Руководитель проектов</strong> могут присутствовать основной объект адресации <strong>Подразделение</strong> и дополнительный объект <strong>Проект</strong>. </div> <div>Могут использоваться "уточняющие" <a href="ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач/Help">объекты адресации</a>, основные и дополнительные. Например, у роли <strong>Руководитель проектов</strong> могут присутствовать основной объект адресации <strong>Подразделение</strong> и дополнительный объект <strong>Проект</strong>. </div>
</li><li> </li>
<div>Таким образом, с помощью объектов адресации происходит уточнение, руководителям какого проекта и в каком подразделении адресуется задача.</div></li></ul></li><li> <li>
<div>Таким образом, с помощью объектов адресации происходит уточнение, руководителям какого проекта и в каком подразделении адресуется задача.</div></li></ul></li>
<li>
<div>Выделите нужную роль исполнителя, нажмите <strong>Выбрать</strong>.</div> <div>Выделите нужную роль исполнителя, нажмите <strong>Выбрать</strong>.</div>
</li><li> </li>
<li>
<div>Также можно воспользоваться двойным щелчком мыши.</div> <div>Также можно воспользоваться двойным щелчком мыши.</div>
</li><li> </li>
<li>
<div>При необходимости выберите объект адресации. Нажмите <strong>ОК</strong>.</div></li></ul><h3>См. также: </h3> <div>При необходимости выберите объект адресации. Нажмите <strong>ОК</strong>.</div></li></ul><h3>См. также: </h3>
<ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html>
@@ -168,7 +168,7 @@
&НаКлиенте &НаКлиенте
Процедура УстановитьТекстИнструкцииПоПодключениюУслуги() Процедура УстановитьТекстИнструкцииПоПодключениюУслуги()
ШаблонИнструкции = НСтр("ru = 'Для подключения услуги отправки SMS необходимо заключить договор с провайдером <a href = ""%1"">%2</a>. ШаблонИнструкции = НСтр("ru = 'Для подключения услуги отправки SMS заключите договор с провайдером <a href = ""%1"">%2</a>.
|Имя отправителя следует заполнять только в случае, если оно предусмотрено договором. |Имя отправителя следует заполнять только в случае, если оно предусмотрено договором.
|По вопросам оплаты услуги и проблемам авторизации следует обращаться к провайдеру услуги.'"); |По вопросам оплаты услуги и проблемам авторизации следует обращаться к провайдеру услуги.'");
@@ -802,8 +802,8 @@
Если ПроверкаУдаления Тогда Если ПроверкаУдаления Тогда
ТекстСообщения = ТекстСообщения + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстСообщения = ТекстСообщения + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для удаления всех унаследованных прав следует НСтр("ru = 'Для удаления всех унаследованных прав
|снять флажок ""%1"".'"), |снимите флажок ""%1"".'"),
Элементы.НаследоватьПраваРодителей.Заголовок); Элементы.НаследоватьПраваРодителей.Заголовок);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -1029,11 +1029,11 @@
Если ОписаниеСтрокиПриложения.ЭтоНачальнаяВыгрузка Тогда Если ОписаниеСтрокиПриложения.ЭтоНачальнаяВыгрузка Тогда
ТекстЧасть1 = НСтр("ru = 'Перед выгрузкой данных для сопоставления необходимо завершить настройку синхронизации.'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка()); ТекстЧасть1 = НСтр("ru = 'Перед выгрузкой данных для сопоставления завершите настройку синхронизации.'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка());
Иначе Иначе
ТекстЧасть1 = НСтр("ru = 'Перед запуском синхронизации данных необходимо завершить ее настройку.'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка()); ТекстЧасть1 = НСтр("ru = 'Перед запуском синхронизации данных завершите ее настройку.'", ОбщегоНазначенияКлиент.КодОсновногоЯзыка());
КонецЕсли; КонецЕсли;
@@ -64,7 +64,7 @@
Процедура Отправить(Команда) Процедура Отправить(Команда)
Если СтрДлина(ТекстСообщения) = 0 Тогда Если СтрДлина(ТекстСообщения) = 0 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Необходимо ввести текст сообщения'")); ПоказатьПредупреждение(, НСтр("ru = 'Введите текст сообщения'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -301,7 +301,7 @@
КонецЕсли; КонецЕсли;
Если Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Адрес, Истина) Тогда Если Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Адрес, Истина) Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Необходимо ввести корректный адрес электронной почты.'")); ПоказатьПредупреждение(, НСтр("ru = 'Введите корректный адрес электронной почты.'"));
Отказ = Истина; Отказ = Истина;
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -461,14 +461,14 @@
Если ПочтовыеАдресаПолучателей.Количество() = 0 Тогда Если ПочтовыеАдресаПолучателей.Количество() = 0 Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю( ОбщегоНазначенияКлиент.СообщитьПользователю(
НСтр("ru = 'Необходимо заполнить получателя письма'"), , "ПочтовыеАдресаПолучателей"); НСтр("ru = 'Заполните получателя письма'"), , "ПочтовыеАдресаПолучателей");
Результат = Ложь; Результат = Ложь;
КонецЕсли; КонецЕсли;
Для каждого ПолучательПочты Из ПочтовыеАдресаПолучателей Цикл Для каждого ПолучательПочты Из ПочтовыеАдресаПолучателей Цикл
Адрес = ПочтовыйАдресИзПредставления(ПолучательПочты.Представление); Адрес = ПочтовыйАдресИзПредставления(ПолучательПочты.Представление);
Если ПустаяСтрока(Адрес) Тогда Если ПустаяСтрока(Адрес) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю( ОбщегоНазначенияКлиент.СообщитьПользователю(
НСтр("ru = 'Необходимо заполнить получателя письма'"),, "ПочтовыеАдресаПолучателей[" + Формат(ПочтовыеАдресаПолучателей.Индекс(ПолучательПочты), "ЧГ=0") + "].Представление"); НСтр("ru = 'Заполните получателя письма'"),, "ПочтовыеАдресаПолучателей[" + Формат(ПочтовыеАдресаПолучателей.Индекс(ПолучательПочты), "ЧГ=0") + "].Представление");
Результат = Ложь; Результат = Ложь;
ИначеЕсли Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Адрес, Ложь) Тогда ИначеЕсли Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Адрес, Ложь) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю( ОбщегоНазначенияКлиент.СообщитьПользователю(
@@ -378,6 +378,17 @@
УправлениеПечатьюКлиент.РаспечататьТабличныеДокументы(ТабличныеДокументы, ОбъектыПечати, УправлениеПечатьюКлиент.РаспечататьТабличныеДокументы(ТабличныеДокументы, ОбъектыПечати,
ТабличныеДокументы.Количество() > 1, ?(НастройкиПечатныхФорм.Количество() > 1, Копий, 1)); ТабличныеДокументы.Количество() > 1, ?(НастройкиПечатныхФорм.Количество() > 1, Копий, 1));
// СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов") Тогда
СписокПечати = Новый СписокЗначений;
Для Каждого ПечатнаяФорма Из НастройкиПечатныхФорм Цикл
СписокПечати.Добавить(ПечатнаяФорма.ИмяМакета, ПечатнаяФорма.Название);
КонецЦикла;
МодульУчетОригиналовПервичныхДокументовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УчетОригиналовПервичныхДокументовКлиент");
МодульУчетОригиналовПервичныхДокументовКлиент.ЗаписатьСостоянияОригиналовПослеПечати(ОбъектыПечати, СписокПечати);
КонецЕсли;
// Конец СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
Оповестить("ТабличныеДокументыНапечатаны", ТабличныеДокументы, ОбъектыПечати); Оповестить("ТабличныеДокументыНапечатаны", ТабличныеДокументы, ОбъектыПечати);
КонецПроцедуры КонецПроцедуры
@@ -1531,18 +1542,6 @@
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
// СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов") Тогда
ПечатныеФормы = НастройкиПечатныхФорм.Выгрузить(,"ИмяМакета, Название");
СписокПечати = Новый СписокЗначений;
Для Каждого ПечатнаяФорма Из ПечатныеФормы Цикл
СписокПечати.Добавить(ПечатнаяФорма.ИмяМакета, ПечатнаяФорма.Название);
КонецЦикла;
МодульУчетОригиналовПервичныхДокументовВызовСервера = ОбщегоНазначения.ОбщийМодуль("УчетОригиналовПервичныхДокументовВызовСервера");
МодульУчетОригиналовПервичныхДокументовВызовСервера.ЗаписатьСостоянияОригиналовПослеПечати(ОбъектыПечати, СписокПечати);
КонецЕсли;
// Конец СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
Возврат ТабличныеДокументы; Возврат ТабличныеДокументы;
КонецФункции КонецФункции
@@ -5,7 +5,7 @@
<id>1</id> <id>1</id>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Для входа в программу необходимо сменить пароль на новый.</value> <value>Для входа в программу смените пароль на новый.</value>
</title> </title>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
@@ -54,7 +54,7 @@
Иначе Иначе
КлючНазначенияФормы = "УстановкаПароляПриВходеВПрограмму"; КлючНазначенияФормы = "УстановкаПароляПриВходеВПрограмму";
Элементы.ПояснениеПриВходе.Заголовок = Элементы.ПояснениеПриВходе.Заголовок =
НСтр("ru = 'Для входа в программу нужно установить пароль.'") НСтр("ru = 'Для входа в программу установите пароль.'")
КонецЕсли; КонецЕсли;
Иначе Иначе
Если Не ДополнительныеПараметры.ЭтоТекущийПользовательИБ Если Не ДополнительныеПараметры.ЭтоТекущийПользовательИБ
@@ -120,7 +120,7 @@
Если Элементы.ПапкаДляСохраненияФайлов.Видимость Тогда Если Элементы.ПапкаДляСохраненияФайлов.Видимость Тогда
Если ВариантСохранения = "СохранитьВПапку" И ПустаяСтрока(ВыбраннаяПапка) Тогда Если ВариантСохранения = "СохранитьВПапку" И ПустаяСтрока(ВыбраннаяПапка) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Необходимо указать папку.'"),,"ВыбраннаяПапка"); ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Укажите папку.'"),,"ВыбраннаяПапка");
Возврат; Возврат;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -134,7 +134,7 @@
КонецЦикла; КонецЦикла;
Если ФорматыСохранения.Количество() = 0 Тогда Если ФорматыСохранения.Количество() = 0 Тогда
ПоказатьПредупреждение(,НСтр("ru = 'Необходимо указать как минимум один из предложенных форматов.'")); ПоказатьПредупреждение(,НСтр("ru = 'Укажите как минимум один из предложенных форматов.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -13,7 +13,7 @@
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Отказ = Истина; Отказ = Истина;
ВызватьИсключение НСтр("ru = 'Операция не доступна в мобильном клиенте, необходимо использовать тонкий клиент.'"); ВызватьИсключение НСтр("ru = 'Операция не доступна в мобильном клиенте, используйте тонкий клиент.'");
КонецЕсли; КонецЕсли;
ТабличныеДокументыДляСравнения = ПолучитьИзВременногоХранилища(Параметры.АдресТабличныхДокументов); ТабличныеДокументыДляСравнения = ПолучитьИзВременногоХранилища(Параметры.АдресТабличныхДокументов);
File diff suppressed because it is too large. Load diff
@@ -5,16 +5,16 @@
<ul><li><strong>Простой</strong> - можно только менять уже имеющиеся параметры, с помощью флажков добавлять или убирать их; <ul><li><strong>Простой</strong> - можно только менять уже имеющиеся параметры, с помощью флажков добавлять или убирать их;
</li> </li>
<li><strong>Расширенный</strong> - можно управлять настройками: добавлять параметры, менять поля, структуру отчета. После того, как настройки в расширенном режиме закончены и сохранены, в простом режиме появляется возможность включать и отключать их с помощью флажка.</li></ul><p>Окно настроек в зависимости от сложности отчета состоит из нескольких вкладок:</p> <li><strong>Расширенный</strong> - можно управлять настройками: добавлять параметры, менять поля, структуру отчета. После того, как настройки в расширенном режиме закончены и сохранены, в простом режиме появляется возможность включать и отключать их с помощью флажка.</li></ul><p>Окно настроек в зависимости от сложности отчета состоит из нескольких вкладок:</p>
<ul><li><a href="#1">Отборы</a> - вводятся условия для отборов значений в отчете; <ul><li><a href="#1">Фильтры</a> - вводятся условия для отборов значений в отчете;
</li> </li>
<li><a href="#2">Поля и сортировки</a>- с помощью флажков можно добавлять в отчет поля или убирать их. Можно добавлять поля для сортировки отчета, убирать их или отключать; <li><a href="#2">Поля и сортировки</a>- с помощью флажков можно добавлять в отчет поля или убирать их. Можно добавлять поля для сортировки отчета, убирать их или отключать;
</li> </li>
<li><a href="#4">Оформление</a> - управление оформлением отчета; <li><a href="#4">Оформление</a> - управление оформлением отчета;
</li> </li>
<li><a href="#5">Структура</a> - управление структурой отчета.</li></ul><h3><a name="1">Отборы</a></h3> <li><a href="#5">Структура</a> - управление структурой отчета.</li></ul><h3><a name="1">Фильтры</a></h3>
<ul><li>При формировании отчетов могут использоваться различные параметры и отборы. <ul><li>При формировании отчетов могут использоваться различные параметры и фильтры.
</li> </li>
<li>На вкладке можно менять параметры отборов. С помощью флажка отбор по параметру (например, <strong>Период</strong>) можно сделать активным или отключить. <li>На вкладке можно менять параметры фильтров (отборов). С помощью флажка отбор по параметру (например, <strong>Период</strong>) можно сделать активным или отключить.
</li> </li>
<li>В <strong>Простом</strong> режиме можно в каждом поле с помощью соответствующей команды контекстного меню по правой кнопке мыши <strong>Изменить условия отбора</strong>. <li>В <strong>Простом</strong> режиме можно в каждом поле с помощью соответствующей команды контекстного меню по правой кнопке мыши <strong>Изменить условия отбора</strong>.
</li> </li>
@@ -24,9 +24,9 @@
</li> </li>
<li>В режиме <strong>Расширенный</strong> можно перейти к настройке всех предусмотренных параметров отчета. <li>В режиме <strong>Расширенный</strong> можно перейти к настройке всех предусмотренных параметров отчета.
</li> </li>
<li>С помощью соответствующей кнопки можно <strong>Добавить отбор</strong>. <li>С помощью соответствующей кнопки можно <strong>Добавить фильтр</strong>.
</li> </li>
<li>Для изменения настроек отборов отчета применяется таблица, состоящая из колонок: <li>Для изменения настроек фильтров (отборов) отчета применяется таблица, состоящая из колонок:
<ul><li><strong>Поле</strong> - перечисление полей, по которым производится отбор; <ul><li><strong>Поле</strong> - перечисление полей, по которым производится отбор;
</li> </li>
<li><strong>Условие</strong> - выбор операции для отбора по каждому полю; <li><strong>Условие</strong> - выбор операции для отбора по каждому полю;
@@ -38,11 +38,11 @@
<li><strong>Значение</strong> - можно указать одно или несколько значений каждого поля для отбора в зависимости от операции. <li><strong>Значение</strong> - можно указать одно или несколько значений каждого поля для отбора в зависимости от операции.
<ul><li>Для ввода значения можно дважды щелкнуть мышью по полю. <ul><li>Для ввода значения можно дважды щелкнуть мышью по полю.
</li> </li>
<li>Введите значение параметра с помощью кнопки <img src="StdPicture.InputFieldSelect"></img> <strong>Выбрать</strong>. Включите флажки рядом с параметрами, по которым необходимо произвести отбор. Можно задействовать все параметры для отбора или часть, включая или выключая флажки. <li>Введите значение параметра с помощью кнопки<img src="StdPicture.InputFieldSelect"></img><strong>Выбрать</strong>. Включите флажки рядом с параметрами, по которым необходимо произвести отбор. Можно задействовать все параметры для отбора или часть, включая или выключая флажки.
</li> </li>
<li>Для выбора нескольких значений предусмотрена кнопка <strong>Подбор</strong>. Откройте список, выберите несколько значений из списка. Включите флажки рядом с нужными для отбора параметрами. Введите значения параметров для отбора или выберите из списка.</li></ul></li> <li>Для выбора нескольких значений предусмотрена кнопка <strong>Подбор</strong>. Откройте список, выберите несколько значений из списка. Включите флажки рядом с нужными для отбора параметрами. Введите значения параметров для отбора или выберите из списка.</li></ul></li>
<li><img src="CommonPicture.БыстрыйДоступ"></img> <strong>Размещение</strong> - видимость параметра или отбора в окне отчета. Для смены видимости отбора с помощью двойного щелчка мышью можно выбрать одно из нескольких значений: <li><img src="CommonPicture.БыстрыйДоступ"></img> <strong>Размещение</strong> - видимость параметра или фильтра в окне отчета. Для смены видимости фильтра с помощью двойного щелчка мышью можно выбрать одно из нескольких значений:
<ul><li><img src="CommonPicture.БыстрыйДоступ"></img> <strong>В шапке отчета</strong> - параметр или отбор выводится в шапке отчета и в шапке настроек отчета; <ul><li><img src="CommonPicture.БыстрыйДоступ"></img> <strong>В шапке отчета</strong> - параметр или фильтр выводится в шапке отчета и в шапке настроек отчета;
</li> </li>
<li><img src="CommonPicture.БыстрыйДоступСФлажком"></img> <strong>Только флажок в шапке отчета</strong> - в шапке отчета и шапке настроек отчета выводится только флажок отбора. С помощью флажка можно только включить или отключить этот отбор. При таком размещении рекомендуется задать полностью понятный заголовок, описывающий значение отбора, поскольку значение отбора не выводится. Применимо только для отборов; <li><img src="CommonPicture.БыстрыйДоступСФлажком"></img> <strong>Только флажок в шапке отчета</strong> - в шапке отчета и шапке настроек отчета выводится только флажок отбора. С помощью флажка можно только включить или отключить этот отбор. При таком размещении рекомендуется задать полностью понятный заголовок, описывающий значение отбора, поскольку значение отбора не выводится. Применимо только для отборов;
</li> </li>
@@ -52,7 +52,7 @@
</li> </li>
<li><img src="CommonPicture.СкрытаяНастройкаОтчета"></img> <strong>Не показывать </strong>- параметр или отбор выводится только в расширенном режиме настроек отчета.</li></ul></li> <li><img src="CommonPicture.СкрытаяНастройкаОтчета"></img> <strong>Не показывать </strong>- параметр или отбор выводится только в расширенном режиме настроек отчета.</li></ul></li>
<li><strong>Заголовок</strong> - можно ввести свой заголовок для отбора.</li></ul></li> <li><strong>Заголовок</strong> - можно ввести свой заголовок для отбора.</li></ul></li>
<li>Отборы можно группировать. Для этого выделите несколько условий для отбора, выполните команду <strong>Сгруппировать отборы</strong> контекстного меню по правой кнопке мыши или меню <strong>Еще</strong>. Объединить отборы можно в группы <strong>И</strong>, <strong>Или</strong>, <strong>Не</strong>. Для отмены группировки выполните команду <strong>Разгруппировать</strong>. <li>Отборы можно группировать. Для этого выделите несколько условий для отбора, выполните команду <b>Сгруппировать</b> контекстного меню по правой кнопке мыши или меню <strong>Еще</strong>. Объединить отборы можно в группы <strong>И</strong>, <strong>Или</strong>, <strong>Не</strong>. Для отмены группировки выполните команду <strong>Разгруппировать</strong>.
</li> </li>
<li>Подробнее об отчетах и операциях отборов см. книгу 1С:Предприятие 8.3 Руководство пользователя.</li></ul><h3><a name="2">Поля</a> и сортировки</h3> <li>Подробнее об отчетах и операциях отборов см. книгу 1С:Предприятие 8.3 Руководство пользователя.</li></ul><h3><a name="2">Поля</a> и сортировки</h3>
<ul><li>Вкладка <strong>Поля и сортировки</strong> состоит из двух частей: <ul><li>Вкладка <strong>Поля и сортировки</strong> состоит из двух частей:
@@ -97,6 +97,6 @@
<h3>Изменение условий отборов</h3> <h3>Изменение условий отборов</h3>
<ul><li> <ul><li>
<div>С помощью кнопки <img src="CommonPicture.Отборы"></img> можно <a href="SettingsStorage.ХранилищеВариантовОтчетов.Form.УсловияОтборовОтчета/Help">просмотреть</a> и при необходимости <strong>Изменить условия отборов</strong> по каждому полю. </div></li></ul><h3>Получение данных отчета</h3> <div>С помощью кнопки <img src="CommonPicture.Отборы"></img> можно <a href="SettingsStorage.ХранилищеВариантовОтчетов.Form.УсловияОтборовОтчета/Help">просмотреть</a> и при необходимости <strong>Изменить условия отборов</strong> по каждому полю. </div></li></ul><h3>Получение данных отчета</h3>
<ul><li>Укажите нужные параметры, нажмите кнопку <strong>Закрыть и сформировать</strong>. Последние настройки будут сохранены автоматически. Если были применены ошибочные настройки, их можно не только изменить, но и сбросить с помощью команд формы отчета. </li></ul><h3 style="font-size: 13.4399995803833px;">Изменение варианта отчета</h3> <ul><li>Укажите нужные параметры, нажмите кнопку <strong>Закрыть и сформировать</strong>. Последние настройки будут сохранены автоматически. Если были применены ошибочные настройки, их можно не только изменить, но и сбросить с помощью команд <a href="CommonForm.ФормаОтчета/Help">формы отчета</a>. </li></ul><h3 style="font-size: 13.4399995803833px;">Изменение варианта отчета</h3>
<ul><li>Нажмите <strong>Еще - Настройки для технического специалиста</strong>. Можно добавить поля, изменить параметры и настройки отчета. </li> <ul><li>Нажмите <strong>Еще - Настройки для технического специалиста</strong>. Можно добавить поля, изменить параметры и настройки отчета. </li>
<li>Внесенные изменения можно сохранить в другой вариант отчета.</li></ul></div></body></html> <li>Внесенные изменения можно сохранить в другой вариант отчета.</li></ul></div></body></html>
@@ -3580,7 +3580,8 @@
Для Каждого ЭлементНастройки Из ВыбранныеПоляУзлаНастроек.Элементы Цикл Для Каждого ЭлементНастройки Из ВыбранныеПоляУзлаНастроек.Элементы Цикл
Если ТипЗнч(ЭлементНастройки) = Тип("ГруппаВыбранныхПолейКомпоновкиДанных") Тогда Если ТипЗнч(ЭлементНастройки) = Тип("ГруппаВыбранныхПолейКомпоновкиДанных") Тогда
НайденноеПоле = НайтиВыбранноеПоле(ЭлементНастройки, Поле); НайденноеПоле = НайтиВыбранноеПоле(ЭлементНастройки, Поле);
ИначеЕсли ЭлементНастройки.Поле = Поле Тогда ИначеЕсли ТипЗнч(ЭлементНастройки) = Тип("ВыбранноеПолеКомпоновкиДанных")
И ЭлементНастройки.Поле = Поле Тогда
НайденноеПоле = Поле; НайденноеПоле = Поле;
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -734,20 +734,16 @@
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:Button"> <items xsi:type="form:Button">
<name>Сохранить</name> <name>СохранитьОтчет</name>
<id>51</id> <id>1101</id>
<title>
<key>ru</key>
<value>Сохранить...</value>
</title>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>СохранитьРасширеннаяПодсказка</name> <name>СохранитьОтчетРасширеннаяПодсказка</name>
<id>141</id> <id>1102</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -755,15 +751,12 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
</extInfo> </extInfo>
</extendedTooltip> </extendedTooltip>
<commandName>Form.StandardCommand.Save</commandName> <commandName>Form.Command.СохранитьОтчет</commandName>
<buttonImportance>Normal</buttonImportance> <buttonImportance>Normal</buttonImportance>
<representation>Picture</representation> <representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea> <placementArea>UserCmds</placementArea>
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.Скачать</picture>
</picture>
<representationInContextMenu>Auto</representationInContextMenu> <representationInContextMenu>Auto</representationInContextMenu>
<locationInCommandBar>InCommandBarAndInAdditionalSubmenu</locationInCommandBar> <locationInCommandBar>InCommandBarAndInAdditionalSubmenu</locationInCommandBar>
</items> </items>
@@ -2373,16 +2366,16 @@
<locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar>
</items> </items>
<items xsi:type="form:Button"> <items xsi:type="form:Button">
<name>СохранитьЕще</name> <name>СохранитьОтчетЕще</name>
<id>752</id> <id>1103</id>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<extendedTooltip> <extendedTooltip>
<name>СохранитьЕщеРасширеннаяПодсказка</name> <name>СохранитьОтчетЕщеРасширеннаяПодсказка</name>
<id>753</id> <id>1104</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -2390,15 +2383,12 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
</extInfo> </extInfo>
</extendedTooltip> </extendedTooltip>
<commandName>Form.StandardCommand.Save</commandName> <commandName>Form.Command.СохранитьОтчет</commandName>
<buttonImportance>Normal</buttonImportance> <buttonImportance>Normal</buttonImportance>
<representation>Auto</representation> <representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea> <placementArea>UserCmds</placementArea>
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.Скачать</picture>
</picture>
<representationInContextMenu>Auto</representationInContextMenu> <representationInContextMenu>Auto</representationInContextMenu>
<locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar>
</items> </items>
@@ -6838,6 +6828,7 @@
<verticalScroll>UseIfNecessary</verticalScroll> <verticalScroll>UseIfNecessary</verticalScroll>
<showTitle>auto</showTitle> <showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton> <showCloseButton>true</showCloseButton>
<conversationsRepresentation>Show</conversationsRepresentation>
<attributes> <attributes>
<name>Отчет</name> <name>Отчет</name>
<id>1</id> <id>1</id>
@@ -7494,6 +7485,19 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ВыводитьЗаголовкиНастроек</name>
<id>17</id>
<valueType>
<types>Boolean</types>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands> <formCommands>
<name>ВсеНастройки</name> <name>ВсеНастройки</name>
<title> <title>
@@ -8661,6 +8665,33 @@
<currentRowUse>Auto</currentRowUse> <currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse> <selectedRowsUse>Auto</selectedRowsUse>
</formCommands> </formCommands>
<formCommands>
<name>СохранитьОтчет</name>
<title>
<key>ru</key>
<value>Сохранить...</value>
</title>
<id>56</id>
<toolTip>
<key>ru</key>
<value>Сохранить результат отчета в файл</value>
</toolTip>
<use>
<common>true</common>
</use>
<shortcut>Ctrl+S</shortcut>
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.Скачать</picture>
</picture>
<action xsi:type="form:FormCommandHandlerContainer">
<handler>
<name>СохранитьОтчет</name>
</handler>
</action>
<representation>Picture</representation>
<currentRowUse>Auto</currentRowUse>
<selectedRowsUse>Auto</selectedRowsUse>
</formCommands>
<parameters> <parameters>
<name>Ссылка</name> <name>Ссылка</name>
<valueType> <valueType>
@@ -95,7 +95,7 @@
ПостоянныеКоманды.Добавить(Команда.Имя); ПостоянныеКоманды.Добавить(Команда.Имя);
КонецЦикла; КонецЦикла;
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
УстановитьВидимостьДоступность(); УстановитьВидимостьДоступность();
КонецЕсли; КонецЕсли;
@@ -269,7 +269,7 @@
Процедура ПередЗагрузкойВариантаНаСервере(НовыеНастройкиКД) Процедура ПередЗагрузкойВариантаНаСервере(НовыеНастройкиКД)
// Ничего не делать если отчет не на СКД и никаких настроек не загружено. // Ничего не делать если отчет не на СКД и никаких настроек не загружено.
Если НовыеНастройкиКД = Неопределено Если НовыеНастройкиКД = Неопределено
Или Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Или Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -277,11 +277,7 @@
Если РежимРасшифровки Тогда Если РежимРасшифровки Тогда
ДополнительныеСвойства = НовыеНастройкиКД.ДополнительныеСвойства; ДополнительныеСвойства = НовыеНастройкиКД.ДополнительныеСвойства;
Если ДополнительныеСвойства.Свойство("КлючВарианта") Если ЗначениеЗаполнено(КлючТекущегоВарианта) Тогда
И ЗначениеЗаполнено(ДополнительныеСвойства.КлючВарианта)
И ЗначениеЗаполнено(КлючТекущегоВарианта)
И ДополнительныеСвойства.КлючВарианта <> КлючТекущегоВарианта Тогда
ДополнительныеСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта); ДополнительныеСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -307,7 +303,7 @@
&НаСервере &НаСервере
Процедура ПриЗагрузкеВариантаНаСервере(НовыеНастройкиКД) Процедура ПриЗагрузкеВариантаНаСервере(НовыеНастройкиКД)
// Ничего не делать если отчет не на СКД и никаких настроек не загружено. // Ничего не делать если отчет не на СКД и никаких настроек не загружено.
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта)
И НовыеНастройкиКД = Неопределено Тогда И НовыеНастройкиКД = Неопределено Тогда
Возврат; Возврат;
@@ -362,7 +358,7 @@
&НаСервере &НаСервере
Процедура ПриЗагрузкеПользовательскихНастроекНаСервере(НовыеПользовательскиеНастройкиКД) Процедура ПриЗагрузкеПользовательскихНастроекНаСервере(НовыеПользовательскиеНастройкиКД)
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -374,21 +370,24 @@
&НаСервере &НаСервере
Процедура ПриОбновленииСоставаПользовательскихНастроекНаСервере(СтандартнаяОбработка) Процедура ПриОбновленииСоставаПользовательскихНастроекНаСервере(СтандартнаяОбработка)
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда КлючХраненияЗначения = КлючХраненияЗначенияВРамкахВариантаОтчета(НастройкиОтчета.ПолноеИмя, КлючТекущегоВарианта);
ВосстановитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки);
Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
ВосстановитьСостояниеОпцииВыводитьЗаголовкиНастроек(КлючХраненияЗначения, ВыводитьЗаголовкиНастроек, РежимРасшифровки);
ПараметрыОбновления = Новый Структура("ИмяСобытия", "ПриОбновленииСоставаПользовательскихНастроекНаСервере"); ПараметрыОбновления = Новый Структура("ИмяСобытия", "ПриОбновленииСоставаПользовательскихНастроекНаСервере");
ОбновитьЭлементыФормыНастроекНаСервере(ПараметрыОбновления); ОбновитьЭлементыФормыНастроекНаСервере(ПараметрыОбновления);
ВосстановитьВыбранныйУровеньГруппировок();
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты) Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -435,13 +434,15 @@
&НаСервере &НаСервере
Процедура ПриСохраненииДанныхВНастройкахНаСервере(Настройки) Процедура ПриСохраненииДанныхВНастройкахНаСервере(Настройки)
СохранитьВыбранныйУровеньГруппировок(); КлючХраненияЗначения = КлючХраненияЗначенияВРамкахВариантаОтчета(НастройкиОтчета.ПолноеИмя, КлючТекущегоВарианта);
СохранитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки);
СохранитьСостояниеОпцииВыводитьЗаголовкиНастроек(КлючХраненияЗначения, ВыводитьЗаголовкиНастроек, РежимРасшифровки);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
Процедура ПриСохраненииВариантаНаСервере(НастройкиКД) Процедура ПриСохраненииВариантаНаСервере(НастройкиКД)
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки();
@@ -455,7 +456,7 @@
&НаСервере &НаСервере
Процедура ПриСохраненииПользовательскихНастроекНаСервере(ПользовательскиеНастройкиКД) Процедура ПриСохраненииПользовательскихНастроекНаСервере(ПользовательскиеНастройкиКД)
Если Не ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ВариантыОтчетов.ПриСохраненииПользовательскихНастроекНаСервере(ЭтотОбъект, ПользовательскиеНастройкиКД); ВариантыОтчетов.ПриСохраненииПользовательскихНастроекНаСервере(ЭтотОбъект, ПользовательскиеНастройкиКД);
@@ -790,6 +791,7 @@
ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета); ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета);
ПараметрыФормы.Вставить("КомпоновщикНастроек", Отчет.КомпоновщикНастроек); ПараметрыФормы.Вставить("КомпоновщикНастроек", Отчет.КомпоновщикНастроек);
ПараметрыФормы.Вставить("КлючТекущегоВарианта", КлючТекущегоВарианта); ПараметрыФормы.Вставить("КлючТекущегоВарианта", КлючТекущегоВарианта);
ПараметрыФормы.Вставить("ВыводитьЗаголовкиНастроек", ВыводитьЗаголовкиНастроек);
Обработчик = Новый ОписаниеОповещения("ПослеИзмененияСоставаБыстрыхНастроек", ЭтотОбъект); Обработчик = Новый ОписаниеОповещения("ПослеИзмененияСоставаБыстрыхНастроек", ЭтотОбъект);
@@ -891,6 +893,20 @@
ВариантыОтчетовКлиент.ПоделитьсяПользовательскимиНастройками(ОписаниеНастроек); ВариантыОтчетовКлиент.ПоделитьсяПользовательскимиНастройками(ОписаниеНастроек);
КонецПроцедуры КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// Обработчики команд сохранения результата отчета.
&НаКлиенте
Процедура СохранитьОтчет(Команда)
ТекстПредложения = НСтр("ru = 'Для сохранения результата отчета в файл рекомендуется
|установить расширение для работы с файлами.'");
Обработчик = Новый ОписаниеОповещения("ПослеУстановкиРасширенияРаботыСФайлами", ЭтотОбъект);
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Обработчик, ТекстПредложения);
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Обработчики команд контекстного меню табличного документа - результат отчета. // Обработчики команд контекстного меню табличного документа - результат отчета.
@@ -2853,6 +2869,10 @@
&НаКлиенте &НаКлиенте
Процедура УточнитьСвойстваФильтра(Фильтр, Поиск) Процедура УточнитьСвойстваФильтра(Фильтр, Поиск)
Если ТипЗнч(Фильтр) <> Тип("ЭлементОтбораКомпоновкиДанных") Тогда
Возврат;
КонецЕсли;
Значения = ОтчетыКлиентСервер.ЗначенияСписком(Фильтр.ПравоеЗначение); Значения = ОтчетыКлиентСервер.ЗначенияСписком(Фильтр.ПравоеЗначение);
Если Значения.НайтиПоЗначению(Поиск.ПравоеЗначение) = Неопределено Тогда Если Значения.НайтиПоЗначению(Поиск.ПравоеЗначение) = Неопределено Тогда
@@ -2912,12 +2932,7 @@
КонецЕсли; КонецЕсли;
ОчиститьМенюУровнейГруппировок(); ОчиститьМенюУровнейГруппировок();
ЗаполнитьМенюУровнейГруппировок(ИндексСтруктурыОтчета);
Если ИндексСтруктурыОтчета <> Неопределено
И ИндексСтруктурыОтчета.Количество() > 0 Тогда
ЗаполнитьМенюУровнейГруппировок(ИндексСтруктурыОтчета);
КонецЕсли;
УстановитьДоступностьМенюУровнейГруппировок(); УстановитьДоступностьМенюУровнейГруппировок();
@@ -2971,7 +2986,14 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
КоличествоРазделов = ИндексСтруктурыОтчета[0].КоличествоРазделов; Если ИндексСтруктурыОтчета = Неопределено
Или ИндексСтруктурыОтчета.Количество() = 0 Тогда
ИндексСтруктурыОтчета = ВариантыОтчетовСлужебный.НовыйИндексСтруктурыОтчета();
КоличествоРазделов = 999;
Иначе
КоличествоРазделов = ИндексСтруктурыОтчета[0].КоличествоРазделов;
КонецЕсли;
Если КоличествоРазделов = 1 Тогда Если КоличествоРазделов = 1 Тогда
СвойстваМеню = СвойстваМенюУровнейГруппировокПростогоОтчета(ИндексСтруктурыОтчета); СвойстваМеню = СвойстваМенюУровнейГруппировокПростогоОтчета(ИндексСтруктурыОтчета);
@@ -3231,29 +3253,43 @@
КонецЦикла; КонецЦикла;
ПодключитьОбработчикОжидания("СохранитьВыбранныйУровеньГруппировокОтложено", 0.1, Истина);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаКлиенте
Процедура СохранитьВыбранныйУровеньГруппировок() Процедура СохранитьВыбранныйУровеньГруппировокОтложено()
Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта) Тогда
КлючХраненияЗначения = КлючХраненияЗначенияВРамкахВариантаОтчета(НастройкиОтчета.ПолноеИмя, КлючТекущегоВарианта);
СохранитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки);
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура СохранитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки)
Если РежимРасшифровки Тогда Если РежимРасшифровки Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить( ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить(
КлючОбъектаВыбранногоУровняГруппировок(), "ВыбранныйУровеньГруппировок", ВыбранныйУровеньГруппировок); КлючХраненияЗначения, "ВыбранныйУровеньГруппировок", ВыбранныйУровеньГруппировок);
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервереБезКонтекста
Процедура ВосстановитьВыбранныйУровеньГруппировок() Процедура ВосстановитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки)
Если РежимРасшифровки Тогда Если РежимРасшифровки Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
СохраненноеЗначение = ОбщегоНазначения.ХранилищеНастроекДанныхФормЗагрузить( СохраненноеЗначение = ОбщегоНазначения.ХранилищеНастроекДанныхФормЗагрузить(
КлючОбъектаВыбранногоУровняГруппировок(), "ВыбранныйУровеньГруппировок"); КлючХраненияЗначения, "ВыбранныйУровеньГруппировок");
Если ЗначениеЗаполнено(СохраненноеЗначение) Тогда Если ЗначениеЗаполнено(СохраненноеЗначение) Тогда
ВыбранныйУровеньГруппировок = СохраненноеЗначение; ВыбранныйУровеньГруппировок = СохраненноеЗначение;
@@ -3280,16 +3316,10 @@
КонецЦикла; КонецЦикла;
ПодключитьОбработчикОжидания("СохранитьВыбранныйУровеньГруппировокОтложено", 0.1, Истина);
КонецПроцедуры КонецПроцедуры
&НаСервере
Функция КлючОбъектаВыбранногоУровняГруппировок()
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
"%1/%2", НастройкиОтчета.ПолноеИмя, КлючТекущегоВарианта);
КонецФункции
#КонецОбласти #КонецОбласти
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@@ -3298,7 +3328,7 @@
&НаСервере &НаСервере
Процедура УстановитьВидимостьДоступность(ПриСохраненииВарианта = Ложь) Процедура УстановитьВидимостьДоступность(ПриСохраненииВарианта = Ложь)
ПоказыватьКомандыВыбораВариантов = ПоказыватьКомандыВыбораВариантов =
ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта)
И НастройкиОтчета.РазрешеноВыбиратьВарианты; И НастройкиОтчета.РазрешеноВыбиратьВарианты;
Если Не ПриСохраненииВарианта Тогда Если Не ПриСохраненииВарианта Тогда
@@ -3411,7 +3441,7 @@
&НаСервере &НаСервере
Процедура ПроверитьДоступностьОбменаНастройкамиВарианта(МетаданныеОтчета) Процедура ПроверитьДоступностьОбменаНастройкамиВарианта(МетаданныеОтчета)
ОбменНастройкамиВариантаДоступен = ВариантыОтчетовСлужебный.РежимВариантаОтчета(КлючТекущегоВарианта) ОбменНастройкамиВариантаДоступен = ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(КлючТекущегоВарианта)
И ВариантыОтчетов.ОтчетПодключенКХранилищу(МетаданныеОтчета); И ВариантыОтчетов.ОтчетПодключенКХранилищу(МетаданныеОтчета);
Элементы.ГруппаОбменНастройкамиЕще.Видимость = ОбменНастройкамиВариантаДоступен; Элементы.ГруппаОбменНастройкамиЕще.Видимость = ОбменНастройкамиВариантаДоступен;
@@ -3433,7 +3463,9 @@
КлючОбъекта, "", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); КлючОбъекта, "", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки);
КонецЕсли; КонецЕсли;
СохранитьВыбранныйУровеньГруппировок(); КлючХраненияЗначения = КлючХраненияЗначенияВРамкахВариантаОтчета(НастройкиОтчета.ПолноеИмя, КлючТекущегоВарианта);
СохранитьВыбранныйУровеньГруппировок(КлючХраненияЗначения, ВыбранныйУровеньГруппировок, РежимРасшифровки);
СохранитьСостояниеОпцииВыводитьЗаголовкиНастроек(КлючХраненияЗначения, ВыводитьЗаголовкиНастроек, РежимРасшифровки);
РежимРасшифровки = Ложь; РежимРасшифровки = Ложь;
ВариантМодифицирован = Ложь; ВариантМодифицирован = Ложь;
@@ -4210,7 +4242,10 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Результат.ВариантМодифицирован Тогда Если Результат.ВариантМодифицирован
Или Результат.ВыводитьЗаголовкиНастроек <> ВыводитьЗаголовкиНастроек Тогда
ВыводитьЗаголовкиНастроек = Результат.ВыводитьЗаголовкиНастроек;
ОбновитьЭлементыФормыНастроек(Результат); ОбновитьЭлементыФормыНастроек(Результат);
КонецЕсли; КонецЕсли;
@@ -4221,4 +4256,187 @@
Возврат 999; Возврат 999;
КонецФункции КонецФункции
&НаКлиентеНаСервереБезКонтекста
Функция КлючХраненияЗначенияВРамкахВариантаОтчета(ПолноеИмяОтчета, КлючВарианта)
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
"%1/%2", ПолноеИмяОтчета, КлючВарианта);
КонецФункции
#Область ВыводЗаголовковНастроек
&НаСервереБезКонтекста
Процедура СохранитьСостояниеОпцииВыводитьЗаголовкиНастроек(КлючХраненияЗначения, ВыводитьЗаголовкиНастроек, РежимРасшифровки)
Если РежимРасшифровки Тогда
Возврат;
КонецЕсли;
ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить(
КлючХраненияЗначения, "ВыводитьЗаголовкиНастроек", ВыводитьЗаголовкиНастроек);
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ВосстановитьСостояниеОпцииВыводитьЗаголовкиНастроек(КлючХраненияЗначения, ВыводитьЗаголовкиНастроек, РежимРасшифровки)
Если РежимРасшифровки Тогда
Возврат;
КонецЕсли;
СохраненноеЗначение = ОбщегоНазначения.ХранилищеНастроекДанныхФормЗагрузить(
КлючХраненияЗначения, "ВыводитьЗаголовкиНастроек");
ВыводитьЗаголовкиНастроек = (СохраненноеЗначение = Истина);
КонецПроцедуры
#КонецОбласти
#Область СохранениеРезультатаОтчета
&НаКлиенте
Процедура ПослеУстановкиРасширенияРаботыСФайлами(РасширениеПодключено, ДополнительныеПараметры) Экспорт
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
Диалог.Фильтр = ДоступныеФорматыСохраненияОтчета(НастройкиОтчета);
Диалог.МножественныйВыбор = Ложь;
Диалог.Заголовок = НСтр("ru = 'Сохранение результата отчета'");
Обработчик = Новый ОписаниеОповещения("ПослеВыбораИмениФайла", ЭтотОбъект);
ФайловаяСистемаКлиент.ПоказатьДиалогВыбора(Обработчик, Диалог);
КонецПроцедуры
&НаКлиенте
Процедура ПослеВыбораИмениФайла(Результат, ДополнительныеПараметры) Экспорт
Если ТипЗнч(Результат) = Тип("Массив")
И Результат.Количество() > 0 Тогда
ПолноеИмяФайлаОтчета = Результат[0];
ИначеЕсли ТипЗнч(Результат) = Тип("Строка") Тогда
ПолноеИмяФайлаОтчета = Результат;
Иначе
Возврат;
КонецЕсли;
Обработчик = Новый ОписаниеОповещения("ПослеСохраненияРезультатаОтчета", ЭтотОбъект, ПолноеИмяФайлаОтчета);
ФорматыСохранения = ФорматыСохраненияОтчета(ПолноеИмяФайлаОтчета);
СвойстваРезультата = НастройкиОтчета.СвойстваРезультата; // см. ВариантыОтчетовСлужебный.СвойстваРезультатаОтчета
РезультатОтчета = РезультатОтчетаДляСохранения(ОтчетТабличныйДокумент, СвойстваРезультата.Заголовки);
РезультатОтчета.НачатьЗапись(Обработчик, ПолноеИмяФайлаОтчета, ФорматыСохранения);
КонецПроцедуры
&НаКлиенте
Процедура ПослеСохраненияРезультатаОтчета(Результат, ПолноеИмяФайлаОтчета) Экспорт
Если Результат <> Истина Тогда
Возврат;
КонецЕсли;
Обработчик = Новый ОписаниеОповещения("ПриВыбореИмениФайлаОтчета", ЭтотОбъект, ПолноеИмяФайлаОтчета);
ПоказатьОповещениеПользователя(НСтр("ru = 'Отчет сохранен в файл'"), Обработчик, ПолноеИмяФайлаОтчета);
КонецПроцедуры
&НаКлиенте
Процедура ПриВыбореИмениФайлаОтчета(ПолноеИмяФайлаОтчета) Экспорт
ФайловаяСистемаКлиент.ОткрытьФайл(ПолноеИмяФайлаОтчета);
КонецПроцедуры
&НаКлиенте
Функция ФорматыСохраненияОтчета(Знач ПолноеИмяФайлаОтчета)
ОписаниеПолногоИмениФайла = СтрРазделить(ПолноеИмяФайлаОтчета, ПолучитьРазделительПути());
ИмяФайлаОтчета = ОписаниеПолногоИмениФайла[ОписаниеПолногоИмениФайла.ВГраница()];
ОписаниеИмениФайла = СтрРазделить(ИмяФайлаОтчета, ".");
РасширениеФайлаОтчета = ОписаниеИмениФайла[ОписаниеИмениФайла.ВГраница()];
ИндексФорматовСохраненияОтчета = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(
НастройкиОтчета, "ИндексФорматовСохраненияОтчета", Новый Соответствие);
Возврат ИндексФорматовСохраненияОтчета[РасширениеФайлаОтчета];
КонецФункции
&НаСервереБезКонтекста
Функция ДоступныеФорматыСохраненияОтчета(НастройкиОтчета)
ДоступныеФорматы = Новый Массив;
ФорматыСохранения = СтандартныеПодсистемыСервер.НастройкиФорматовСохраненияТабличногоДокумента();
ФорматСохраненияTXT = ФорматыСохранения.Найти(ТипФайлаТабличногоДокумента.TXT, "ТипФайлаТабличногоДокумента");
ФорматСохраненияANSITXT = ФорматыСохранения.Найти(ТипФайлаТабличногоДокумента.ANSITXT, "ТипФайлаТабличногоДокумента");
Если ФорматСохраненияTXT <> Неопределено
И ФорматСохраненияANSITXT <> Неопределено Тогда
ФорматыСохранения.Удалить(ФорматСохраненияANSITXT);
КонецЕсли;
ИндексФорматовСохраненияОтчета = Новый Соответствие;
ТекущийФорматСохранения = Новый Массив;
Для Каждого ФорматСохранения Из ФорматыСохранения Цикл
РасширениеФорматаСохранения = "*." + ФорматСохранения.Расширение;
ПредставлениеФорматаСохранения = СтрЗаменить(
ФорматСохранения.Представление,
"." + ФорматСохранения.Расширение,
РасширениеФорматаСохранения);
ТекущийФорматСохранения.Добавить(ПредставлениеФорматаСохранения);
ТекущийФорматСохранения.Добавить(РасширениеФорматаСохранения);
ДоступныеФорматы.Добавить(СтрСоединить(ТекущийФорматСохранения, "|"));
ТекущийФорматСохранения.Очистить();
ИндексФорматовСохраненияОтчета.Вставить(ФорматСохранения.Расширение, ФорматСохранения.ТипФайлаТабличногоДокумента);
КонецЦикла;
НастройкиОтчета.Вставить("ИндексФорматовСохраненияОтчета", ИндексФорматовСохраненияОтчета);
Возврат СтрСоединить(ДоступныеФорматы, "|");
КонецФункции
&НаСервереБезКонтекста
Функция РезультатОтчетаДляСохранения(ОтчетТабличныйДокумент, Заголовки)
РезультатОтчета = Новый ТабличныйДокумент;
РезультатОтчета.Вывести(ОтчетТабличныйДокумент);
Для Каждого ИндексЗаголовка Из Заголовки Цикл
СвойстваЗаголовка = ИндексЗаголовка.Значение;
Если Не СвойстваЗаголовка.ПолеСортируется Тогда
Продолжить;
КонецЕсли;
Область = РезультатОтчета.Область(ИндексЗаголовка.Ключ);
Область.Картинка = Неопределено;
КонецЦикла;
Возврат РезультатОтчета;
КонецФункции
#КонецОбласти
#КонецОбласти #КонецОбласти
@@ -163,7 +163,7 @@
ВызватьИсключение; ВызватьИсключение;
#Иначе #Иначе
ВызватьИсключение КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) + Символы.ПС + Символы.ПС ВызватьИсключение КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) + Символы.ПС + Символы.ПС
+ СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'В случае ошибки о несоответствии версии компоненты ""comcntr"" следует зарегистрировать ее на компьютере %1 + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'В случае ошибки о несоответствии версии компоненты ""comcntr"" зарегистрируйте ее на компьютере %1
|для учетной записи ОС Windows, от имени которой выполняется 1С:Предприятие. Например: |для учетной записи ОС Windows, от имени которой выполняется 1С:Предприятие. Например:
|regsvr32.exe ""%2\comcntr.dll""'"), ИмяКомпьютера(), КаталогПрограммы()); |regsvr32.exe ""%2\comcntr.dll""'"), ИмяКомпьютера(), КаталогПрограммы());
#КонецЕсли #КонецЕсли
@@ -2273,11 +2273,11 @@
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Невозможно выполнить операцию администрирования кластера серверов по причине: не существует файл %1 НСтр("ru = 'Невозможно выполнить операцию администрирования кластера серверов по причине: не существует файл %1
| |
|Для администрирования кластера через сервер администрирования (ras) требуется установить на данном |Для администрирования кластера через сервер администрирования (ras) установите на данном
|компьютере клиент сервера администрирования (rac). |компьютере клиент сервера администрирования (rac).
|Для его установки: |Для его установки:
|- Для компьютеров с ОС Windows требуется переустановить платформу, установив компонент ""Сервер 1С:Предприятия""; |- Для компьютеров с ОС Windows переустановите платформу, установив компонент ""Сервер 1С:Предприятия"";
|- Для компьютеров с ОС Linux требуется установить пакет 1c-enterprise83-server*.'"), |- Для компьютеров с ОС Linux установите пакет 1c-enterprise83-server*.'"),
ФайлКлиента.ПолноеИмя); ФайлКлиента.ПолноеИмя);
КонецЕсли; КонецЕсли;
@@ -1308,11 +1308,11 @@
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Невозможно выполнить операцию администрирования кластера серверов по причине: не существует файл %1. НСтр("ru = 'Невозможно выполнить операцию администрирования кластера серверов по причине: не существует файл %1.
| |
|Для администрирования кластера через сервер администрирования (ras) требуется установить на данном |Для администрирования кластера через сервер администрирования (ras) установите на данном
|компьютере клиент сервера администрирования (rac). |компьютере клиент сервера администрирования (rac).
|Для его установки: |Для его установки:
|- Для компьютеров с ОС Windows требуется переустановить платформу, установив компонент ""Администрирование сервера 1С:Предприятия""; |- Для компьютеров с ОС Windows переустановите платформу, установив компонент ""Администрирование сервера 1С:Предприятия"";
|- Для компьютеров с ОС Linux требуется установить пакет 1c-enterprise83-server*.'"), |- Для компьютеров с ОС Linux установите пакет 1c-enterprise83-server*.'"),
ФайлКлиента.ПолноеИмя); ФайлКлиента.ПолноеИмя);
КонецЕсли; КонецЕсли;
@@ -123,7 +123,7 @@
// Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы, // Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы,
// следует вызвать в фоновом задании. // следует вызвать в фоновом задании.
// Т.к. при использовании веб-сервиса фирмы "1С" предоставляющего через Интернет сведения об // Т.к. при использовании веб-сервиса фирмы "1С" предоставляющего через Интернет сведения об
// адресах РФ в формате ФИАС, всегда доступны адресные сведения по всем регионам РФ, // адресах РФ в формате адресного классификатора, всегда доступны адресные сведения по всем регионам РФ,
// то возвращает общее количество субъектов РФ. // то возвращает общее количество субъектов РФ.
// //
// Возвращаемое значение: // Возвращаемое значение:
@@ -175,7 +175,7 @@
// Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы, // Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы,
// функцию следует вызвать в фоновом задании. // функцию следует вызвать в фоновом задании.
// При использовании веб-сервиса фирмы "1С" предоставляющего через Интернет сведения об // При использовании веб-сервиса фирмы "1С" предоставляющего через Интернет сведения об
// адресах РФ в формате ФИАС, всегда возвращает Истина, если подключена интернет-поддержка пользователей. // адресах РФ в формате адресного классификатора, всегда возвращает Истина, если подключена интернет-поддержка пользователей.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Булево - Истина, если адресный классификатор содержит сведения хотя бы по одному региону // Булево - Истина, если адресный классификатор содержит сведения хотя бы по одному региону
@@ -224,7 +224,7 @@
// ** Текст - Строка - текст ошибки. // ** Текст - Строка - текст ошибки.
// ** Подсказка - Строка - текст возможного исправления ошибки. // ** Подсказка - Строка - текст возможного исправления ошибки.
// * Варианты - Массив - устарело. Содержит описание найденных вариантов в виде массива структур с полями: // * Варианты - Массив - устарело. Содержит описание найденных вариантов в виде массива структур с полями:
// ** Идентификатор - УникальныйИдентификатор - уникальный идентификационный код адресного объекта ФИАС. // ** Идентификатор - УникальныйИдентификатор - уникальный идентификационный код адресного объекта.
// ** Индекс - Число - почтовый индекс адресного объекта. // ** Индекс - Число - почтовый индекс адресного объекта.
// ** КодКЛАДР - Число - код КЛАДР ближайшего объекта. // ** КодКЛАДР - Число - код КЛАДР ближайшего объекта.
// ** OKATO - Число - код общероссийского классификатора объектов административно-территориального деления. // ** OKATO - Число - код общероссийского классификатора объектов административно-территориального деления.
@@ -304,7 +304,7 @@
// Возвращает коды адрес (ОКТМО, ОКАТО, налоговых инспекций ФНС и др.) и // Возвращает коды адрес (ОКТМО, ОКАТО, налоговых инспекций ФНС и др.) и
// уникальные идентификационные коды адресного объекта и дома. // уникальные идентификационные коды адресного объекта и дома.
// Кода не будут заполнены, если адрес не соответствует ФИАС или содержит адресные поля без идентификаторов. // Кода не будут заполнены, если адрес не соответствует адресному классификатору или содержит адресные поля без идентификаторов.
// При получении кодов через веб-сервиса выполнение функции может занимать 20 секунд. // При получении кодов через веб-сервиса выполнение функции может занимать 20 секунд.
// Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы, // Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы,
// функцию следует вызвать в фоновом задании. // функцию следует вызвать в фоновом задании.
@@ -312,14 +312,15 @@
// Параметры: // Параметры:
// Адрес - Строка - адрес во внутреннем формате JSON или XML, соответствующий структуре XDTO-пакета Адрес. // Адрес - Строка - адрес во внутреннем формате JSON или XML, соответствующий структуре XDTO-пакета Адрес.
// Источник - Строка - источник получения кодов адреса: // Источник - Строка - источник получения кодов адреса:
// "Сервис1С" - коды будут получены через веб-сервис "1С" предоставляющий сведения об адресах РФ в формате ФИАС; // "Сервис1С" - коды будут получены через веб-сервис "1С" предоставляющий сведения об адресах РФ в формате
// адресного классификатора;
// "ЗагруженныеДанные" - сначала будет попытка определить коды по загруженным данным адресного классификатора, // "ЗагруженныеДанные" - сначала будет попытка определить коды по загруженным данным адресного классификатора,
// а затем, если коды не были определены, то они будут получены через веб-сервис "1С". // а затем, если коды не были определены, то они будут получены через веб-сервис "1С".
// Если параметр не указан, то определение кодов будет аналогично параметру ЗагруженныеДанные. // Если параметр не указан, то определение кодов будет аналогично параметру ЗагруженныеДанные.
// Возвращаемое значение: // Возвращаемое значение:
// Структура - коды адреса. Если адрес не существует, то поля структуры содержат пустые значения: // Структура - коды адреса. Если адрес не существует, то поля структуры содержат пустые значения:
// * Идентификатор - Строка - уникальный идентификационный код адресного объекта ФИАС. // * Идентификатор - Строка - уникальный идентификационный код адресного объекта.
// * ИдентификаторДома - Строка - уникальный идентификационный код дома(здания) адресного объекта ФИАС. // * ИдентификаторДома - Строка - уникальный идентификационный код дома(здания) адресного объекта.
// * КодКЛАДР - Строка - код классификатор адресов России (КЛАДР). // * КодКЛАДР - Строка - код классификатор адресов России (КЛАДР).
// * КодИФНСФЛ - Строка - код инспекции ФНС, обслуживающей физических лиц. // * КодИФНСФЛ - Строка - код инспекции ФНС, обслуживающей физических лиц.
// * КодИФНСЮЛ - Строка - код инспекции ФНС, обслуживающей юридические лица. // * КодИФНСЮЛ - Строка - код инспекции ФНС, обслуживающей юридические лица.
@@ -363,14 +364,14 @@
// * РегионТипПолный - Строка - полное наименование типа региона. Например: "область". // * РегионТипПолный - Строка - полное наименование типа региона. Например: "область".
// * РегионТипКраткий - Строка - краткое наименование типа региона. Например: "обл". // * РегионТипКраткий - Строка - краткое наименование типа региона. Например: "обл".
// * ИдентификаторРегиона- УникальныйИдентификатор // * ИдентификаторРегиона- УникальныйИдентификатор
// - Неопределено - идентификационный код ФИАС региона. // - Неопределено - идентификационный код региона.
// * МуниципальныйРайон - Строка - текстовое представление муниципального района для адреса по муниципальному делению. // * МуниципальныйРайон - Строка - текстовое представление муниципального района для адреса по муниципальному делению.
// * МуниципальныйРайонТипПолный - Строка - полное наименование типа муниципального района по муниципальному // * МуниципальныйРайонТипПолный - Строка - полное наименование типа муниципального района по муниципальному
// делению. Например: "городской округ". // делению. Например: "городской округ".
// * МуниципальныйРайонТипКраткий - Строка - краткое наименование типа муниципального района для адреса по // * МуниципальныйРайонТипКраткий - Строка - краткое наименование типа муниципального района для адреса по
// муниципальному делению. Например: "мун.р-н". // муниципальному делению. Например: "мун.р-н".
// * ИдентификаторМуниципальногоРайона- УникальныйИдентификатор // * ИдентификаторМуниципальногоРайона- УникальныйИдентификатор
// - Неопределено - идентификационный код ФИАС муниципального район. // - Неопределено - идентификационный код муниципального район.
// * КодМуниципальногоРайона - Строка - код муниципального района: 1- муниципальный район; 2- городской округ; // * КодМуниципальногоРайона - Строка - код муниципального района: 1- муниципальный район; 2- городской округ;
// 3 - внутригородская территория города федерального значения; 4 - муниципальный округ. // 3 - внутригородская территория города федерального значения; 4 - муниципальный округ.
// Если не удалось определить код, то возвращается пустая строка. // Если не удалось определить код, то возвращается пустая строка.
@@ -380,19 +381,19 @@
// * ПоселениеТипКраткий - Строка - краткое наименование типа муниципального района для адреса по муниципальному // * ПоселениеТипКраткий - Строка - краткое наименование типа муниципального района для адреса по муниципальному
// делению. Например: "с. п.". // делению. Например: "с. п.".
// * ИдентификаторПоселения- УникальныйИдентификатор // * ИдентификаторПоселения- УникальныйИдентификатор
// - Неопределено - идентификационный код ФИАС поселения. // - Неопределено - идентификационный код поселения.
// * КодПоселения - Строка - код поселения: 1 - городское поселение; 2 - сельское поселение; 3- межселенная // * КодПоселения - Строка - код поселения: 1 - городское поселение; 2 - сельское поселение; 3- межселенная
// территория в составе муниципального района; 4 - внутригородской район городского округа; // территория в составе муниципального района; 4 - внутригородской район городского округа;
// * НаселенныйПункт - Строка - текстовое представление населенного пункта. // * НаселенныйПункт - Строка - текстовое представление населенного пункта.
// * НаселенныйПунктТипПолный - Строка - полное наименование типа населенного пункта. Например: "деревня". // * НаселенныйПунктТипПолный - Строка - полное наименование типа населенного пункта. Например: "деревня".
// * НаселенныйПунктТипКраткий - Строка - краткое наименование типа населенного пункта. Например: "д". // * НаселенныйПунктТипКраткий - Строка - краткое наименование типа населенного пункта. Например: "д".
// * ИдентификаторНаселенногоПункта- УникальныйИдентификатор // * ИдентификаторНаселенногоПункта- УникальныйИдентификатор
// - Неопределено - идентификационный код ФИАС населенного пункта. // - Неопределено - идентификационный код населенного пункта.
// * Территория - Строка - текстовое представление территории. В терминах ФИАС элемент планировочной структуры. // * Территория - Строка - текстовое представление территории (элемент планировочной структуры).
// * ТерриторияТипПолный - Строка - полное наименование типа территории. Например: "Гаражно-строительный кооп.". // * ТерриторияТипПолный - Строка - полное наименование типа территории. Например: "Гаражно-строительный кооп.".
// * ТерриторияТипКраткий - Строка - краткое наименование типа территории. Например: "гск". // * ТерриторияТипКраткий - Строка - краткое наименование типа территории. Например: "гск".
// * ИдентификаторТерритории- УникальныйИдентификатор // * ИдентификаторТерритории- УникальныйИдентификатор
// - Неопределено - идентификационный код ФИАС территории. // - Неопределено - идентификационный код территории.
// * ПочтовыйИндекс - Число - почтовый индекс. // * ПочтовыйИндекс - Число - почтовый индекс.
// * OKATO - Строка - код общероссийского классификатора объектов административно-территориального деления. // * OKATO - Строка - код общероссийского классификатора объектов административно-территориального деления.
// * КодКЛАДР - Строка - код классификатор адресов России (КЛАДР). // * КодКЛАДР - Строка - код классификатор адресов России (КЛАДР).
@@ -415,7 +416,7 @@
#Область УстаревшиеПроцедурыИФункции #Область УстаревшиеПроцедурыИФункции
// Возвращает идентификационный код дома и адресного объекта с помощью веб-сервиса фирмы 1С предоставляющего // Возвращает идентификационный код дома и адресного объекта с помощью веб-сервиса фирмы 1С предоставляющего
// сведения об адресах РФ в формате ФИАС. Для получения идентификаторов требуется подключение // сведения об адресах РФ в формате адресного классификатора. Для получения идентификаторов требуется подключение
// к Интернет-поддержке пользователей и наличие постоянного соединения с интернетом, // к Интернет-поддержке пользователей и наличие постоянного соединения с интернетом,
// т.к. адресные сведения, загруженные в программу, не используются. // т.к. адресные сведения, загруженные в программу, не используются.
// //
@@ -314,7 +314,7 @@
Функция МуниципальныеРайоны() Экспорт Функция МуниципальныеРайоны() Экспорт
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Результат = Новый Соответствие; Результат = Новый Соответствие;
Результат.Вставить("Г.О.", "Городской округ"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("Г.О.", "Городской округ"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("М.Р-Н", "муниципальный район"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("М.Р-Н", "муниципальный район"); // @Non-NLS-1, @Non-NLS-2
@@ -330,7 +330,7 @@
Функция Поселения() Экспорт Функция Поселения() Экспорт
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Результат = Новый Соответствие; Результат = Новый Соответствие;
Результат.Вставить("Г.П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("Г.П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("Г. П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("Г. П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2
@@ -325,7 +325,7 @@
КонецФункции КонецФункции
// Проверка адрес на соответствие ФИАС // Проверка адрес на соответствие адресному классификатору
// //
// Параметры: // Параметры:
// Адреса - Соответствие из КлючИЗначение: // Адреса - Соответствие из КлючИЗначение:
@@ -351,7 +351,7 @@
// //
// Параметры: // Параметры:
// Родитель - УникальныйИдентификатор - родительский объект. // Родитель - УникальныйИдентификатор - родительский объект.
// Уровень - Число - уровень данных для выбора (по ФИАС от 1 до 7) // Уровень - Число - уровень данных для выбора
// ТипАдреса - Строка - варианты: Муниципальный, Административно-территориальный // ТипАдреса - Строка - варианты: Муниципальный, Административно-территориальный
// ДополнительныеПараметры - Структура - описание настроек поиска: // ДополнительныеПараметры - Структура - описание настроек поиска:
// * ФорматАдреса - Строка - тип используемого классификатора. // * ФорматАдреса - Строка - тип используемого классификатора.
@@ -476,7 +476,7 @@
// //
// Параметры: // Параметры:
// Родитель - УникальныйИдентификатор - родительский адресный объект. // Родитель - УникальныйИдентификатор - родительский адресный объект.
// Уровень - Число - уровень данных для выбора (по ФИАС от 1 до 7). // Уровень - Число - уровень данных для выбора.
// ТипАдреса - Строка -Варианты: Муниципальный, Административно-территориальный. // ТипАдреса - Строка -Варианты: Муниципальный, Административно-территориальный.
// СтрокаПоиска - Строка - если указана, то будут отобраны адресные сведения совпадающей со строкой. // СтрокаПоиска - Строка - если указана, то будут отобраны адресные сведения совпадающей со строкой.
// //
@@ -2006,7 +2006,7 @@
Процедура ОбработатьНовыеДанные(Знач Дескриптор, Знач ПутьКФайлу) Экспорт Процедура ОбработатьНовыеДанные(Знач Дескриптор, Знач ПутьКФайлу) Экспорт
Если Дескриптор.DataType = "ФИАС30" Тогда Если Дескриптор.DataType = "ФИАС30" Тогда
ОбработатьФИАС(Дескриптор, ПутьКФайлу); ОбработатьАдресныйКлассификатор(Дескриптор, ПутьКФайлу);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -4615,25 +4615,25 @@
Архив.ИзвлечьВсе(КаталогФайлов, РежимВосстановленияПутейФайловZIP.НеВосстанавливать); Архив.ИзвлечьВсе(КаталогФайлов, РежимВосстановленияПутейФайловZIP.НеВосстанавливать);
ФайловаяСистема.УдалитьВременныйФайл(ПолноеИмяФайла); ФайловаяСистема.УдалитьВременныйФайл(ПолноеИмяФайла);
ФайлыСтарогоФИАС = НайтиФайлы(КаталогФайлов, "*EXTRAINFO.FI"); ФайлыСтарогоАдресногоКлассификатора = НайтиФайлы(КаталогФайлов, "*EXTRAINFO.FI");
ФайлыНовогоФИАС = НайтиФайлы(КаталогФайлов, "*EXTRAACT.FI"); ФайлыНовогоАдресногоКлассификатора = НайтиФайлы(КаталогФайлов, "*EXTRAACT.FI");
Если ФайлыНовогоФИАС.Количество() = 0 Тогда Если ФайлыНовогоАдресногоКлассификатора.Количество() = 0 Тогда
Если ФайлыСтарогоФИАС.Количество() > 0 Тогда Если ФайлыСтарогоАдресногоКлассификатора.Количество() > 0 Тогда
ТекстПричины = НСтр("ru = 'Не допускается загрузка адресных сведений без поддержки муниципальных адресов.'"); ТекстПричины = НСтр("ru = 'Не допускается загрузка адресных сведений без поддержки муниципальных адресов.'");
Иначе Иначе
ТекстПричины = НСтр("ru = 'Файл не содержит адресных сведений ФИАС'"); ТекстПричины = НСтр("ru = 'Файл не содержит адресных сведений'");
КонецЕсли; КонецЕсли;
ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,
,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось загрузить адресные сведения из файла: %1 ,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось загрузить адресные сведения из файла: %1
|по причине: %2 |по причине: %2
|Необходимо использовать адресные сведения расположенные по адресу https://its.1c.ru/download/fias2'"), ПолноеИмяФайла, ТекстПричины)); |Используйте адресные сведения, расположенные по адресу https://its.1c.ru/download/fias2'"), ПолноеИмяФайла, ТекстПричины));
ВызватьИсключение ТекстПричины; ВызватьИсключение ТекстПричины;
КонецЕсли; КонецЕсли;
@@ -4796,7 +4796,7 @@
КонецФункции КонецФункции
// Проверка адрес на соответствие ФИАС // Проверка адрес на соответствие адресного классификатора
// //
// Параметры: // Параметры:
// Адреса - Соответствие из КлючИЗначение: // Адреса - Соответствие из КлючИЗначение:
@@ -5709,7 +5709,7 @@
Если КакиеУровниПроверять["Distict"] <> Неопределено И АдресСтрока["Наименование" + КакиеУровниПроверять["Distict"]] = NULL Тогда Если КакиеУровниПроверять["Distict"] <> Неопределено И АдресСтрока["Наименование" + КакиеУровниПроверять["Distict"]] = NULL Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СвРайМО/Район", ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СвРайМО/Район",
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Район ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Район ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.District, Адрес.DistrictType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.District, Адрес.DistrictType)));
Продолжить; Продолжить;
@@ -5718,7 +5718,7 @@
Если НЕ ДанныеУровняКорректные("Area", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Area", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Субъект РФ'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Субъект РФ'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Субъект РФ ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Субъект РФ ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес["Area"], Адрес["AreaType"], Истина))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес["Area"], Адрес["AreaType"], Истина)));
Продолжить; Продолжить;
@@ -5727,7 +5727,7 @@
Если НЕ ДанныеУровняКорректные("MunDistrict", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("MunDistrict", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Муниципальный район'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Муниципальный район'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Муниципальный район ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Муниципальный район ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.MunDistrict, Адрес.MunDistrictType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.MunDistrict, Адрес.MunDistrictType)));
Продолжить; Продолжить;
@@ -5736,7 +5736,7 @@
Если НЕ ДанныеУровняКорректные("Distict", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Distict", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Район'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Район'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Район ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Район ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.District, Адрес.DistrictType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.District, Адрес.DistrictType)));
Продолжить; Продолжить;
@@ -5745,7 +5745,7 @@
Если НЕ ДанныеУровняКорректные("Settlement", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Settlement", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Поселение'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Поселение'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Поселение ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Поселение ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Settlement, Адрес.SettlementType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Settlement, Адрес.SettlementType)));
Продолжить; Продолжить;
@@ -5754,7 +5754,7 @@
Если НЕ ДанныеУровняКорректные("City", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("City", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Город'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Город'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Город ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Город ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.City, Адрес.CityType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.City, Адрес.CityType)));
Продолжить; Продолжить;
@@ -5763,7 +5763,7 @@
Если НЕ ДанныеУровняКорректные("Territory", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Territory", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Территория'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Территория'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Территория ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Территория ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Territory, Адрес.TerritoryType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Territory, Адрес.TerritoryType)));
Продолжить; Продолжить;
@@ -5772,7 +5772,7 @@
Если НЕ ДанныеУровняКорректные("Locality", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Locality", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Населенный пункт'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Населенный пункт'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Населенный пункт ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Населенный пункт ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Locality, Адрес.LocalityType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Locality, Адрес.LocalityType)));
Продолжить; Продолжить;
@@ -5781,7 +5781,7 @@
Если НЕ ДанныеУровняКорректные("Street", АдресСтрока, КакиеУровниПроверять) Тогда Если НЕ ДанныеУровняКорректные("Street", АдресСтрока, КакиеУровниПроверять) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Улица'"), ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, НСтр("ru = 'Улица'"),
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Улица ""%1"" отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Улица ""%1"" отсутствует в адресном классификаторе'"),
СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Street, Адрес.StreetType))); СоединитьНаименованиеИТипАдресногоОбъекта(Адрес.Street, Адрес.StreetType)));
Продолжить; Продолжить;
@@ -5977,7 +5977,7 @@
КонецЕсли; КонецЕсли;
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПолеСОшибкой, ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПолеСОшибкой,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 отсутствует в ФИАС%2'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 отсутствует в адресном классификаторе%2'"),
ПредставлениеДома, ТекстПодсказки)); ПредставлениеДома, ТекстПодсказки));
Результат.АдресКорректный = Ложь; Результат.АдресКорректный = Ложь;
@@ -6038,7 +6038,7 @@
КонецЦикла; КонецЦикла;
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Дом", ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Дом",
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Земельный участок %1 отсутствует в ФИАС'"), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Земельный участок %1 отсутствует в адресном классификаторе'"),
Участок)); Участок));
Результат.АдресКорректный = Ложь; Результат.АдресКорректный = Ложь;
@@ -6681,7 +6681,7 @@
КонецЕсли; КонецЕсли;
Иначе Иначе
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ТипМуниципальногоРайона, "м.р-н") = 0 Тогда Если СтрСравнить(ТипМуниципальногоРайона, "м.р-н") = 0 Тогда
КодМуниципальногоРайона = "1"; КодМуниципальногоРайона = "1";
ИначеЕсли СтрСравнить(ТипМуниципальногоРайона, "г.о.") = 0 Тогда ИначеЕсли СтрСравнить(ТипМуниципальногоРайона, "г.о.") = 0 Тогда
@@ -6702,7 +6702,7 @@
Функция КодПоселения(Знач ТипПоселения) Функция КодПоселения(Знач ТипПоселения)
КодПоселения = ""; КодПоселения = "";
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ТипПоселения, "г. п.") = 0 Или СтрСравнить(ТипПоселения, "г.п.") = 0 Тогда // @Non-NLS-2 Если СтрСравнить(ТипПоселения, "г. п.") = 0 Или СтрСравнить(ТипПоселения, "г.п.") = 0 Тогда // @Non-NLS-2
КодПоселения = "1"; КодПоселения = "1";
ИначеЕсли СтрСравнить(ТипПоселения, "с.п.") = 0 Тогда ИначеЕсли СтрСравнить(ТипПоселения, "с.п.") = 0 Тогда
@@ -6914,7 +6914,7 @@
СписокЭлементовДляПроверки = СписокДляПроверки.Item; // СписокXDTO СписокЭлементовДляПроверки = СписокДляПроверки.Item; // СписокXDTO
ПроверяемыйАдрес = СписокЭлементовДляПроверки.Добавить(Сервис.ФабрикаXDTO.Создать(ТипЭлементаСписка)); ПроверяемыйАдрес = СписокЭлементовДляПроверки.Добавить(Сервис.ФабрикаXDTO.Создать(ТипЭлементаСписка));
ПроверяемыйАдрес.Levels = УровниКлассификатораФИАС(); ПроверяемыйАдрес.Levels = УровниКлассификатора();
Если ЭтоКонтактнаяИнформацияВXML(АдресДляПроверки) Тогда Если ЭтоКонтактнаяИнформацияВXML(АдресДляПроверки) Тогда
АдресXDTO = ОбщегоНазначения.ОбъектXDTOИзСтрокиXML(АдресДляПроверки, Сервис.ФабрикаXDTO); АдресXDTO = ОбщегоНазначения.ОбъектXDTOИзСтрокиXML(АдресДляПроверки, Сервис.ФабрикаXDTO);
ПроверяемыйАдрес.Address = АдресXDTO.Состав.Состав; ПроверяемыйАдрес.Address = АдресXDTO.Состав.Состав;
@@ -7423,7 +7423,7 @@
#КонецОбласти #КонецОбласти
#Область ПреобразованиеТиповДанныхФИАС #Область ПреобразованиеТиповДанныхАдресногоКлассификатора
// Преобразует ДвоичныеДанные в УникальныйИдентификатор. // Преобразует ДвоичныеДанные в УникальныйИдентификатор.
// Выполняет обратное действие для функции УникальныйИдентификаторВДвоичныеДанные. // Выполняет обратное действие для функции УникальныйИдентификаторВДвоичныеДанные.
@@ -7591,12 +7591,12 @@
КонецФункции КонецФункции
// Набор уровней для запросов ФИАС. // Набор уровней для запросов адресного классификатора.
// //
// Возвращаемое значение: // Возвращаемое значение:
// ФиксированныйМассив - набор числовых уровней. // ФиксированныйМассив - набор числовых уровней.
// //
Функция УровниКлассификатораФИАС() Функция УровниКлассификатора()
Уровни = Новый Массив; Уровни = Новый Массив;
Уровни.Добавить(1); Уровни.Добавить(1);
@@ -7672,7 +7672,7 @@
// * Сокращение - Строка - наименование субъекта по классификатору. Например "Обл". // * Сокращение - Строка - наименование субъекта по классификатору. Например "Обл".
// * ПочтовыйИндекс - Число - индекс региона. Если 0 - то неопределено. // * ПочтовыйИндекс - Число - индекс региона. Если 0 - то неопределено.
// * ПочтовыйИндекс - Число - индекс региона. Если 0 - то неопределено. // * ПочтовыйИндекс - Число - индекс региона. Если 0 - то неопределено.
// * Идентификатор - УникальныйИдентификатор - идентификатор ФИАС. // * Идентификатор - УникальныйИдентификатор - идентификатор адресного объекта.
// //
Функция СведенияОСубъектахРФ() Функция СведенияОСубъектахРФ()
Возврат РегистрыСведений.АдресныеОбъекты.КлассификаторСубъектовРФ(); Возврат РегистрыСведений.АдресныеОбъекты.КлассификаторСубъектовРФ();
@@ -8462,7 +8462,7 @@
// //
Функция ИсправлениеСокращений(Сокращение) Функция ИсправлениеСокращений(Сокращение)
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(Сокращение, "г. п.") = 0 Тогда Если СтрСравнить(Сокращение, "г. п.") = 0 Тогда
Возврат "г.п."; Возврат "г.п.";
КонецЕсли; КонецЕсли;
@@ -9380,6 +9380,8 @@
КонтактнаяИнформация = СтрокуJSONВСтруктуру(Значение); КонтактнаяИнформация = СтрокуJSONВСтруктуру(Значение);
ЗаполнитьЗначенияСвойств(Результат, КонтактнаяИнформация); ЗаполнитьЗначенияСвойств(Результат, КонтактнаяИнформация);
УстановкаТипаКузбассКемеровскойОбласти(Результат);
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
@@ -9906,7 +9908,7 @@
Результат = Новый Массив; Результат = Новый Массив;
// Код, Наименование, Тип, Порядок, КодФИАС // Код, Наименование, Тип, Порядок, КодАдресногоКлассификатора
// Тип: 1 - владение, 2 - здание, 3 - помещение. // Тип: 1 - владение, 2 - здание, 3 - помещение.
Результат.Добавить(СтрокаОбъектаАдресации("1010", "Дом", 1, 1, 2)); // не локализуется Результат.Добавить(СтрокаОбъектаАдресации("1010", "Дом", 1, 1, 2)); // не локализуется
@@ -9952,25 +9954,25 @@
// Наименование - Строка // Наименование - Строка
// Тип - Число // Тип - Число
// Порядок - Число // Порядок - Число
// КодФИАС - Число // КодАдресногоКлассификатора - Число
// Возвращаемое значение: // Возвращаемое значение:
// Структура: // Структура:
// * Ключ - Строка // * Ключ - Строка
// * Сокращение - Строка // * Сокращение - Строка
// * КодФИАС - Число // * КодАдресногоКлассификатора - Число
// * Порядок - Число // * Порядок - Число
// * Тип - Число // * Тип - Число
// * Наименование - Строка // * Наименование - Строка
// * Код - Строка // * Код - Строка
// //
Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодФИАС = 0) Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодАдресногоКлассификатора = 0)
СтруктураОбъектаАдресации = Новый Структура; СтруктураОбъектаАдресации = Новый Структура;
СтруктураОбъектаАдресации.Вставить("Код", Код); СтруктураОбъектаАдресации.Вставить("Код", Код);
СтруктураОбъектаАдресации.Вставить("Наименование", Наименование); СтруктураОбъектаАдресации.Вставить("Наименование", Наименование);
СтруктураОбъектаАдресации.Вставить("Тип", Тип); СтруктураОбъектаАдресации.Вставить("Тип", Тип);
СтруктураОбъектаАдресации.Вставить("Порядок", Порядок); СтруктураОбъектаАдресации.Вставить("Порядок", Порядок);
СтруктураОбъектаАдресации.Вставить("КодФИАС", КодФИАС); СтруктураОбъектаАдресации.Вставить("КодАдресногоКлассификатора", КодАдресногоКлассификатора);
СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование)); СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование));
СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование)); СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование));
Возврат СтруктураОбъектаАдресации; Возврат СтруктураОбъектаАдресации;
@@ -10563,7 +10565,7 @@
КонецПроцедуры КонецПроцедуры
Функция ПараметрыФИАС() Функция ПараметрыАдресногоКлассификатора()
Возврат Новый Структура("Версия, Регион"); Возврат Новый Структура("Версия, Регион");
@@ -10571,7 +10573,7 @@
Функция ПараметрыВерсииИзФайла(Знач Дескриптор) Функция ПараметрыВерсииИзФайла(Знач Дескриптор)
ПараметрыВерсии = ПараметрыФИАС(); ПараметрыВерсии = ПараметрыАдресногоКлассификатора();
ОписаниеТипаЧисло = Новый ОписаниеТипов("Число"); ОписаниеТипаЧисло = Новый ОписаниеТипов("Число");
Для Каждого Характеристика Из Дескриптор.Properties.Property Цикл Для Каждого Характеристика Из Дескриптор.Properties.Property Цикл
@@ -10586,10 +10588,10 @@
КонецФункции КонецФункции
Функция ОписаниеПоследнейЗагрузкиФИАС(Знач КодРегиона) Функция ОписаниеПоследнейЗагрузкиАдресногоКлассификатора(Знач КодРегиона)
ОписаниеТипаЧисло = Новый ОписаниеТипов("Число"); ОписаниеТипаЧисло = Новый ОписаниеТипов("Число");
Результат = ПараметрыФИАС(); Результат = ПараметрыАдресногоКлассификатора();
Запрос = Новый Запрос(); Запрос = Новый Запрос();
Запрос.УстановитьПараметр("КодСубъектаРФ", КодРегиона); Запрос.УстановитьПараметр("КодСубъектаРФ", КодРегиона);
@@ -10623,7 +10625,7 @@
Возврат Истина; Возврат Истина;
КонецЕсли; КонецЕсли;
ПараметрыТекущихДанных = ОписаниеПоследнейЗагрузкиФИАС(ПараметрыНовыхДанных.Регион); ПараметрыТекущихДанных = ОписаниеПоследнейЗагрузкиАдресногоКлассификатора(ПараметрыНовыхДанных.Регион);
Если ПараметрыТекущихДанных.Версия = Неопределено Если ПараметрыТекущихДанных.Версия = Неопределено
ИЛИ ПараметрыНовыхДанных.Версия > ПараметрыТекущихДанных.Версия Тогда ИЛИ ПараметрыНовыхДанных.Версия > ПараметрыТекущихДанных.Версия Тогда
Возврат Истина; Возврат Истина;
@@ -10633,7 +10635,7 @@
КонецФункции КонецФункции
Процедура ОбработатьФИАС(Знач Дескриптор, Знач ПутьКФайлу) Процедура ОбработатьАдресныйКлассификатор(Знач Дескриптор, Знач ПутьКФайлу)
КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ПолучитьИмяВременногоФайла()); КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ПолучитьИмяВременногоФайла());
@@ -10673,8 +10675,18 @@
КонецПроцедуры КонецПроцедуры
Процедура УстановкаТипаКузбассКемеровскойОбласти(КонтактнаяИнформацияПоПолям) Экспорт
// АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(КонтактнаяИнформацияПоПолям.area, "Кемеровская область - Кузбасс") = 0 Тогда
КонтактнаяИнформацияПоПолям.area = "Кемеровская область -";
КонтактнаяИнформацияПоПолям.areaType= "Кузбасс";
КонецЕсли;
// АПК: 1297-вкл
КонецПроцедуры
Функция НаименованиеРегионаБезТипа(Наименование) Функция НаименованиеРегионаБезТипа(Наименование)
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Возврат СтрНачинаетсяС(ВРег(Наименование), ВРег("Ханты-Мансийский Автономный округ - Югра")); // @Non-NLS-1 Возврат СтрНачинаетсяС(ВРег(Наименование), ВРег("Ханты-Мансийский Автономный округ - Югра")); // @Non-NLS-1
// АПК: 1297-вкл // АПК: 1297-вкл
КонецФункции КонецФункции
@@ -5871,7 +5871,7 @@
ПоказыватьЛичныеВариантыОтчетовДругихАвторов = Пользователи.ЭтоПолноправныйПользователь(); ПоказыватьЛичныеВариантыОтчетовДругихАвторов = Пользователи.ЭтоПолноправныйПользователь();
Если ПараметрыПоиска.Свойство("ТолькоЛичные") Тогда Если ПараметрыПоиска.Свойство("ТолькоЛичные") Тогда
ПоказыватьЛичныеВариантыОтчетовДругихАвторов = ПоказыватьЛичныеВариантыОтчетовДругихАвторов И ПараметрыПоиска.ТолькоЛичные; ПоказыватьЛичныеВариантыОтчетовДругихАвторов = ПоказыватьЛичныеВариантыОтчетовДругихАвторов И Не ПараметрыПоиска.ТолькоЛичные;
КонецЕсли; КонецЕсли;
Запрос = Новый Запрос; Запрос = Новый Запрос;
@@ -6385,8 +6385,11 @@
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений.Представления КАК ПредставленияИзРасширений | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений.Представления КАК ПредставленияИзРасширений
| ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзРасширений.Ссылка | ПО ВариантыОтчетов.ПредопределенныйВариант = ПредставленияИзРасширений.Ссылка
| И (ПредставленияИзРасширений.КодЯзыка = &КодЯзыка) | И (ПредставленияИзРасширений.КодЯзыка = &КодЯзыка)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК ГруппыТекущегоПользователя
| ПО ГруппыТекущегоПользователя.Пользователь = &ТекущийПользователь
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей
| ПО СоставыГруппПользователей.Пользователь = &ТекущийПользователь | ПО СоставыГруппПользователей.ГруппаПользователей = ГруппыТекущегоПользователя.ГруппаПользователей
| И &ПоказыватьЛичныеВариантыОтчетовДругихАвторов
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиВариантовОтчетов КАК ДоступныеВариантыОтчетов | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиВариантовОтчетов КАК ДоступныеВариантыОтчетов
| ПО ДоступныеВариантыОтчетов.Вариант = ВариантыОтчетов.Ссылка | ПО ДоступныеВариантыОтчетов.Вариант = ВариантыОтчетов.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыОтчетов КАК ПользовательскиеВариантыОтчетов | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыОтчетов КАК ПользовательскиеВариантыОтчетов
@@ -6410,7 +6413,7 @@
| И (&ПоказыватьЛичныеВариантыОтчетовДругихАвторов | И (&ПоказыватьЛичныеВариантыОтчетовДругихАвторов
| ИЛИ НЕ ВариантыОтчетов.ТолькоДляАвтора | ИЛИ НЕ ВариантыОтчетов.ТолькоДляАвтора
| ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь) | ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь)
| И ЕСТЬNULL(ДоступныеВариантыОтчетов.Пользователь, НЕОПРЕДЕЛЕНО) В (СоставыГруппПользователей.ГруппаПользователей, НЕОПРЕДЕЛЕНО) | И ЕСТЬNULL(ДоступныеВариантыОтчетов.Пользователь, НЕОПРЕДЕЛЕНО) В (СоставыГруппПользователей.Пользователь, &ТекущийПользователь, НЕОПРЕДЕЛЕНО)
| И ЕСТЬNULL(ДоступныеВариантыОтчетов.Видимость, ИСТИНА) | И ЕСТЬNULL(ДоступныеВариантыОтчетов.Видимость, ИСТИНА)
| И (&ЕстьОтборПоКонтексту | И (&ЕстьОтборПоКонтексту
| И (ПользовательскиеВариантыОтчетов.Ссылка ЕСТЬ NULL | И (ПользовательскиеВариантыОтчетов.Ссылка ЕСТЬ NULL
@@ -7348,7 +7351,7 @@
// Возвращает текст сообщения о том, что данные отчета еще обновляются. // Возвращает текст сообщения о том, что данные отчета еще обновляются.
Функция СообщениеДанныеЕщеОбновляются() Экспорт Функция СообщениеДанныеЕщеОбновляются() Экспорт
Возврат НСтр("ru = 'Отчет может содержать некорректные данные, так как не завершен переход на новую версию программы. Если отчет долгое время недоступен, необходимо обратиться к администратору.'"); Возврат НСтр("ru = 'Отчет может содержать некорректные данные, так как не завершен переход на новую версию программы. Если отчет долгое время недоступен, обратитесь к администратору.'");
КонецФункции КонецФункции
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@@ -183,7 +183,7 @@
Процедура ОткрытьДиалогРазмещенияВариантовВРазделах(Варианты, Владелец = Неопределено) Экспорт Процедура ОткрытьДиалогРазмещенияВариантовВРазделах(Варианты, Владелец = Неопределено) Экспорт
Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() < 1 Тогда Если ТипЗнч(Варианты) <> Тип("Массив") Или Варианты.Количество() < 1 Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов, которые необходимо разместить в разделах.'")); ПоказатьПредупреждение(, НСтр("ru = 'Выберите варианты отчетов для размещения в разделах.'"));
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -48,7 +48,7 @@
НастройкиОтчета = Форма.НастройкиОтчета; // см. ВариантыОтчетов.НастройкиФормыОтчета НастройкиОтчета = Форма.НастройкиОтчета; // см. ВариантыОтчетов.НастройкиФормыОтчета
Если Не РежимВариантаОтчета(Форма.КлючТекущегоВарианта) Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(Форма.КлючТекущегоВарианта)
Или Не НастройкиОтчета.РазрешеноИзменятьВарианты Тогда Или Не НастройкиОтчета.РазрешеноИзменятьВарианты Тогда
Возврат; Возврат;
@@ -102,13 +102,6 @@
КонецПроцедуры КонецПроцедуры
Функция РежимВариантаОтчета(КлючВарианта) Экспорт
Возврат ТипЗнч(КлючВарианта) = Тип("Строка")
И Не ПустаяСтрока(КлючВарианта);
КонецФункции
#Область ПредставлениеНастроекКомпоновкиДанных #Область ПредставлениеНастроекКомпоновкиДанных
Функция ПредставлениеЭлементовСтруктуры(ЭлементыСтруктуры) Экспорт Функция ПредставлениеЭлементовСтруктуры(ЭлементыСтруктуры) Экспорт
@@ -1247,7 +1240,7 @@
#Область Конструкторы #Область Конструкторы
Функция НовыйИндексСтруктурыОтчета() Функция НовыйИндексСтруктурыОтчета() Экспорт
ОписаниеЧисла = Новый ОписаниеТипов("Число"); ОписаниеЧисла = Новый ОписаниеТипов("Число");
ОписаниеСтроки = Новый ОписаниеТипов("Строка"); ОписаниеСтроки = Новый ОписаниеТипов("Строка");
@@ -1786,7 +1779,7 @@
Функция ДанныеЭлементаРасшифровки(Форма, Расшифровка) Экспорт Функция ДанныеЭлементаРасшифровки(Форма, Расшифровка) Экспорт
Если Не РежимВариантаОтчета(Форма.КлючТекущегоВарианта) Если Не ВариантыОтчетовСлужебныйКлиентСервер.РежимВариантаОтчета(Форма.КлючТекущегоВарианта)
Или Не Форма.НастройкиОтчета.РазрешеноИзменятьВарианты Или Не Форма.НастройкиОтчета.РазрешеноИзменятьВарианты
Или Не ТипЗнч(Расшифровка) = Тип("ИдентификаторРасшифровкиКомпоновкиДанных") Тогда Или Не ТипЗнч(Расшифровка) = Тип("ИдентификаторРасшифровкиКомпоновкиДанных") Тогда
@@ -798,7 +798,7 @@
ЭлементСортировки.ТипУпорядочивания = ТипСортировкиРаздела(Команда); ЭлементСортировки.ТипУпорядочивания = ТипСортировкиРаздела(Команда);
ЭлементСортировки.Использование = Истина; ЭлементСортировки.Использование = Истина;
ОповеститьОЗавершенииКонтекстнойНастройки(Форма, ДействиеКоманды(Команда)); ОповеститьОЗавершенииКонтекстнойНастройки(Форма, ДействиеКоманды(Команда), Ложь);
КонецПроцедуры КонецПроцедуры
@@ -1408,73 +1408,33 @@
Если ЭлементыСтруктуры = Неопределено Тогда Если ЭлементыСтруктуры = Неопределено Тогда
УдалитьЭлементыСортировки(Настройки.Порядок.Элементы); Настройки.ОчиститьПорядокЭлемента(Настройки);
ЭлементыСтруктуры = Настройки.Структура;
Если СвойстваЗаголовка.КоличествоРазделов = 1 Тогда
СброситьСортировку(Настройки, СвойстваЗаголовка, Настройки.Структура);
Иначе
Раздел = Настройки.ПолучитьОбъектПоИдентификатору(СвойстваЗаголовка.ИдентификаторРаздела);
Если ТипЗнч(Раздел) = Тип("ГруппировкаКомпоновкиДанных") Тогда
УдалитьЭлементыСортировки(Раздел.Порядок.Элементы);
СброситьСортировку(Настройки, СвойстваЗаголовка, Раздел.Структура);
ИначеЕсли ТипЗнч(Раздел) = Тип("ТаблицаКомпоновкиДанных") Тогда
СброситьСортировку(Настройки, СвойстваЗаголовка, Раздел.Строки);
СброситьСортировку(Настройки, СвойстваЗаголовка, Раздел.Колонки);
КонецЕсли;
КонецЕсли;
Иначе
Для Каждого Элемент Из ЭлементыСтруктуры Цикл
ТипЭлемента = ТипЗнч(Элемент);
Если ТипЭлемента = Тип("ТаблицаКомпоновкиДанных") Тогда
СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Строки);
СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Колонки);
ИначеЕсли ТипЭлемента = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда
СброситьСортировку(Настройки.Настройки, СвойстваЗаголовка);
ИначеЕсли ТипЭлемента = Тип("ГруппировкаКомпоновкиДанных")
Или ТипЭлемента = Тип("ГруппировкаТаблицыКомпоновкиДанных") Тогда
УдалитьЭлементыСортировки(Элемент.Порядок.Элементы);
СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Структура);
КонецЕсли;
КонецЦикла;
КонецЕсли; КонецЕсли;
КонецПроцедуры Для Каждого Элемент Из ЭлементыСтруктуры Цикл
Процедура УдалитьЭлементыСортировки(ЭлементыСортировки) Настройки.ОчиститьПорядокЭлемента(Элемент);
Индекс = ЭлементыСортировки.Количество() - 1; ТипЭлемента = ТипЗнч(Элемент);
Пока Индекс >= 0 Цикл Если ТипЭлемента = Тип("ТаблицаКомпоновкиДанных") Тогда
Элемент = ЭлементыСортировки[Индекс]; СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Строки);
СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Колонки);
ИначеЕсли ТипЭлемента = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда
СброситьСортировку(Настройки.Настройки, СвойстваЗаголовка);
ИначеЕсли ТипЭлемента = Тип("ГруппировкаКомпоновкиДанных")
Или ТипЭлемента = Тип("ГруппировкаТаблицыКомпоновкиДанных") Тогда
СброситьСортировку(Настройки, СвойстваЗаголовка, Элемент.Структура);
Если ТипЗнч(Элемент) <> Тип("АвтоЭлементПорядкаКомпоновкиДанных") Тогда
ЭлементыСортировки.Удалить(Элемент);
КонецЕсли; КонецЕсли;
Индекс = Индекс - 1;
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
@@ -3164,7 +3124,7 @@
// Возвращаемое значение: // Возвращаемое значение:
// КомпоновщикНастроекКомпоновкиДанных // КомпоновщикНастроекКомпоновкиДанных
// //
Функция КомпоновщикНастроекОтчета(Форма) Функция КомпоновщикНастроекОтчета(Форма, РазвернутьАвтоПоля = Истина)
Если СтрЗаканчиваетсяНа(Форма.ИмяФормы, "КонтекстнаяНастройкаОтчета") Если СтрЗаканчиваетсяНа(Форма.ИмяФормы, "КонтекстнаяНастройкаОтчета")
Или СтрЗаканчиваетсяНа(Форма.ИмяФормы, "КонтекстнаяНастройкаОтчета") Тогда Или СтрЗаканчиваетсяНа(Форма.ИмяФормы, "КонтекстнаяНастройкаОтчета") Тогда
@@ -3180,7 +3140,9 @@
КонецЕсли; КонецЕсли;
КомпоновщикНастроек.РазвернутьАвтоПоля(); Если РазвернутьАвтоПоля Тогда
КомпоновщикНастроек.РазвернутьАвтоПоля();
КонецЕсли;
Возврат КомпоновщикНастроек; Возврат КомпоновщикНастроек;
@@ -3194,9 +3156,9 @@
// Возвращаемое значение: // Возвращаемое значение:
// НастройкиКомпоновкиДанных // НастройкиКомпоновкиДанных
// //
Функция ИспользуемыеНастройки(Форма, ИдентификаторНастроек = Неопределено) Функция ИспользуемыеНастройки(Форма, ИдентификаторНастроек = Неопределено, РазвернутьАвтоПоля = Истина)
КомпоновщикНастроек = КомпоновщикНастроекОтчета(Форма); КомпоновщикНастроек = КомпоновщикНастроекОтчета(Форма, РазвернутьАвтоПоля);
ИспользуемыеНастройки = КомпоновщикНастроек.Настройки; ИспользуемыеНастройки = КомпоновщикНастроек.Настройки;
Если ТипЗнч(ИдентификаторНастроек) <> Тип("ИдентификаторКомпоновкиДанных") Тогда Если ТипЗнч(ИдентификаторНастроек) <> Тип("ИдентификаторКомпоновкиДанных") Тогда
@@ -3326,13 +3288,13 @@
КонецФункции КонецФункции
Процедура ОповеститьОЗавершенииКонтекстнойНастройки(Форма, Действие) Процедура ОповеститьОЗавершенииКонтекстнойНастройки(Форма, Действие, РазвернутьАвтоПоля = Истина)
ЭтоФормОтчета = СтрЗаканчиваетсяНа(Форма.ИмяФормы, "Форма") ЭтоФормОтчета = СтрЗаканчиваетсяНа(Форма.ИмяФормы, "Форма")
Или СтрЗаканчиваетсяНа(Форма.ИмяФормы, "ФормаОтчета"); Или СтрЗаканчиваетсяНа(Форма.ИмяФормы, "ФормаОтчета");
ИспользуемыеНастройки = ИспользуемыеНастройки(Форма); ИспользуемыеНастройки = ИспользуемыеНастройки(Форма, Неопределено, РазвернутьАвтоПоля);
КомпоновщикНастроек = КомпоновщикНастроекОтчета(Форма); КомпоновщикНастроек = КомпоновщикНастроекОтчета(Форма, РазвернутьАвтоПоля);
КомпоновщикНастроек.ЗагрузитьНастройки(ИспользуемыеНастройки); КомпоновщикНастроек.ЗагрузитьНастройки(ИспользуемыеНастройки);
ИдентификаторВладельца = ?(ЭтоФормОтчета, Форма.УникальныйИдентификатор, Форма.ВладелецФормы.УникальныйИдентификатор); ИдентификаторВладельца = ?(ЭтоФормОтчета, Форма.УникальныйИдентификатор, Форма.ВладелецФормы.УникальныйИдентификатор);
@@ -145,6 +145,13 @@
КонецФункции КонецФункции
Функция РежимВариантаОтчета(КлючВарианта) Экспорт
Возврат ТипЗнч(КлючВарианта) = Тип("Строка")
И Не ПустаяСтрока(КлючВарианта);
КонецФункции
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@@ -398,7 +398,7 @@
// ПоказыватьПроигнорированные - Булево - признак необходимости учета проигнорированных. // ПоказыватьПроигнорированные - Булево - признак необходимости учета проигнорированных.
// УзелИнформационнойБазы - ПланОбменаСсылка - отбор по конкретному узлу. // УзелИнформационнойБазы - ПланОбменаСсылка - отбор по конкретному узлу.
// Период - СтандартныйПериод - отбор по периоду. // Период - СтандартныйПериод - отбор по периоду.
// СтрокаПоиска - Строка - отбор по в комментарию. // СтрокаПоиска - Строка - отбор по комментарию.
// //
Функция КоличествоКоллизийИлиНепринятых(УзлыОбмена, ЭтоКоличествоКоллизий, Функция КоличествоКоллизийИлиНепринятых(УзлыОбмена, ЭтоКоличествоКоллизий,
ПоказыватьПроигнорированные, Период, СтрокаПоиска) Экспорт ПоказыватьПроигнорированные, Период, СтрокаПоиска) Экспорт
@@ -1653,7 +1653,7 @@
// Возвращает структуру, содержащую версию объекта и дополнительную информацию. // Возвращает структуру, содержащую версию объекта и дополнительную информацию.
// //
// Параметры: // Параметры:
// Ссылка - ЛюбаяСсылка - ссылка версионируемый объект; // Ссылка - ЛюбаяСсылка - версионируемый объект;
// НомерВерсии - Число - номер версии объекта. // НомерВерсии - Число - номер версии объекта.
// //
// Возвращаемое значение: // Возвращаемое значение:
@@ -91,9 +91,16 @@
Результат.Вставить("Версия", Информация.Реквизиты.Версия); Результат.Вставить("Версия", Информация.Реквизиты.Версия);
Если ИскатьКомпонентуПоследнейВерсии Тогда Если ИскатьКомпонентуПоследнейВерсии Тогда
// Версия внешней компоненты больше, чем версия макета. ЧастиВерсии = СтрРазделить(Результат.Версия, ".");
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Результат.Версия, Если ЧастиВерсии.Количество() = 4 Тогда
Результат.КомпонентаПоследнейВерсии.Версия) > 0 Тогда // Версия внешней компоненты больше, чем версия макета.
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Результат.Версия,
Результат.КомпонентаПоследнейВерсии.Версия) > 0 Тогда
Результат.КомпонентаПоследнейВерсии = Новый Структура("Идентификатор, Версия, Местоположение",
Контекст.Идентификатор, Результат.Версия, Информация.Местоположение);
КонецЕсли;
Иначе
// Если номер версии компоненты не соответствует шаблону, используется компонента из справочника.
Результат.КомпонентаПоследнейВерсии = Новый Структура("Идентификатор, Версия, Местоположение", Результат.КомпонентаПоследнейВерсии = Новый Структура("Идентификатор, Версия, Местоположение",
Контекст.Идентификатор, Результат.Версия, Информация.Местоположение); Контекст.Идентификатор, Результат.Версия, Информация.Местоположение);
КонецЕсли; КонецЕсли;
@@ -133,7 +133,7 @@
КонецЕсли; КонецЕсли;
Оповещение = Новый ОписаниеОповещения("ВызватьОнлайнПоддержкуПослеУстановкиРасширения", ЭтотОбъект); Оповещение = Новый ОписаниеОповещения("ВызватьОнлайнПоддержкуПослеУстановкиРасширения", ЭтотОбъект);
ТекстСообщения = НСтр("ru = 'Для запуска приложения необходимо установить расширение для работы с 1С:Предприятием.'"); ТекстСообщения = НСтр("ru = 'Для запуска приложения установите расширение для работы с 1С:Предприятием.'");
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение, ТекстСообщения, Ложь); ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение, ТекстСообщения, Ложь);
КонецПроцедуры КонецПроцедуры
@@ -2417,7 +2417,7 @@
Параметры.ПутьККонфигурации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Параметры.ПутьККонфигурации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
"File=""%1"";", Параметры.КаталогКопии1CD); "File=""%1"";", Параметры.КаталогКопии1CD);
Иначе Иначе
Результат.Кратко = НСтр("ru = 'Для выгрузки модулей необходимо закрыть конфигуратор.'"); Результат.Кратко = НСтр("ru = 'Для выгрузки модулей закройте конфигуратор.'");
Возврат Результат; Возврат Результат;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -245,8 +245,8 @@
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Дополнительный отчет или обработка %1 был загружен из сервиса и не может быть отключен из автономного рабочего места. НСтр("ru = 'Дополнительный отчет или обработка %1 был загружен из сервиса и не может быть отключен из автономного рабочего места.
|Для удаления дополнительного отчета или обработки необходимо выполнить операцию отключения в |Для удаления дополнительного отчета или обработки выполните операцию отключения в
|приложении сервиса и провести синхронизацию данных автономного рабочего места с сервисом.'"), |приложении сервиса и проведите синхронизацию данных автономного рабочего места с сервисом.'"),
Источник.Наименование); Источник.Наименование);
КонецЕсли; КонецЕсли;
@@ -484,7 +484,7 @@
НовоеЗначение.Вставить(РазделениеДанныхМассив[0], МассивЗначенийРазделителей); НовоеЗначение.Вставить(РазделениеДанныхМассив[0], МассивЗначенийРазделителей);
Иначе Иначе
ЗначенияОтбора = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ЗначениеИзСписка.Значение, Символы.ПС); ЗначенияОтбора = СтрРазделить(ЗначениеИзСписка.Значение, Символы.ПС, Ложь);
Для Каждого ЗначениеОтбора Из ЗначенияОтбора Цикл Для Каждого ЗначениеОтбора Из ЗначенияОтбора Цикл
НовоеЗначение.Добавить(ЗначениеОтбора); НовоеЗначение.Добавить(ЗначениеОтбора);
КонецЦикла; КонецЦикла;
@@ -516,9 +516,10 @@
// Не формируем представление отбора, если его значение соответствует значению отбора по умолчанию. // Не формируем представление отбора, если его значение соответствует значению отбора по умолчанию.
Если ОтборЖурналаРегистрацииПоУмолчанию <> Неопределено Тогда Если ОтборЖурналаРегистрацииПоУмолчанию <> Неопределено Тогда
СписокОграниченийПоУмолчанию = ""; СписокОграниченийПоУмолчанию = "";
Если ОтборЖурналаРегистрацииПоУмолчанию.Свойство(ИмяОграничения, СписокОграниченийПоУмолчанию) Если ОтборЖурналаРегистрацииПоУмолчанию.Свойство(ИмяОграничения, СписокОграниченийПоУмолчанию) Тогда
И ОбщегоНазначенияКлиентСервер.СпискиЗначенийИдентичны(СписокОграниченийПоУмолчанию, СписокОграничений) Тогда Если СписокОграниченийПоУмолчанию.Количество() = СписокОграничений.Количество() Тогда
Возврат; Возврат;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -848,7 +848,7 @@
Дело.Владелец = Раздел; Дело.Владелец = Раздел;
Дело.Представление = НСтр("ru = 'Согласия на обработку ПДн'"); Дело.Представление = НСтр("ru = 'Согласия на обработку ПДн'");
Дело.Количество = ИстекшиеСогласия.Количество(); Дело.Количество = ИстекшиеСогласия.Количество();
Дело.Подсказка = НСтр("ru = 'Истекли согласия на обработку персональных данных (ПДн). Необходимо прекратить обработку ПДн или запросить у субъекта продление согласия на обработку.'"); Дело.Подсказка = НСтр("ru = 'Истекли согласия на обработку персональных данных (ПДн). Прекратите обработку ПДн или запросите у субъекта продление согласия на обработку.'");
Дело.ПараметрыФормы = Новый Структура("ИстекшиеСогласия", ИстекшиеСогласия); Дело.ПараметрыФормы = Новый Структура("ИстекшиеСогласия", ИстекшиеСогласия);
Дело.Форма = "ЖурналДокументов.СогласияНаОбработкуПерсональныхДанных.Форма.ФормаСписка"; Дело.Форма = "ЖурналДокументов.СогласияНаОбработкуПерсональныхДанных.Форма.ФормаСписка";
КонецЦикла; КонецЦикла;
@@ -781,6 +781,9 @@
Подписки.ПриЗагрузкеКлассификатора = Истина; Подписки.ПриЗагрузкеКлассификатора = Истина;
Подписки.ПриОбработкеОбластиДанных = Истина; Подписки.ПриОбработкеОбластиДанных = Истина;
// ЭлектроннаяПодпись
Подписки.ПриОпределенииИспользуемыхВерсийВнешнихКомпонент = Истина;
КонецПроцедуры КонецПроцедуры
#Область БазоваяФункциональность #Область БазоваяФункциональность
@@ -881,6 +884,20 @@
#КонецОбласти #КонецОбласти
#Область ЭлектроннаяПодпись
// См. ПолучениеВнешнихКомпонентВМоделиСервисаПереопределяемый.ПриОпределенииИспользуемыхВерсийВнешнихКомпонент.
Процедура ПриОпределенииИспользуемыхВерсийВнешнихКомпонент(Идентификаторы) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда
МодульЭлектроннаяПодписьСлужебный = ОбщегоНазначения.ОбщийМодуль("ЭлектроннаяПодписьСлужебный");
МодульЭлектроннаяПодписьСлужебный.ПриОпределенииИспользуемыхВерсийВнешнихКомпонент(Идентификаторы);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти
@@ -68,7 +68,7 @@
// * Идентификатор - Строка // * Идентификатор - Строка
// * Представление - Строка // * Представление - Строка
// * ТипЗначения - ОписаниеТипов // * ТипЗначения - ОписаниеТипов
// * ИмяКартинки - Строка // * Картинка - Строка
// * Порядок - Число // * Порядок - Число
// //
Функция ТаблицаПолей() Экспорт Функция ТаблицаПолей() Экспорт
@@ -1993,6 +1993,7 @@
|ГДЕ |ГДЕ
| &Условие | &Условие
| И ИмяТаблицы.Дата > &ДатаНачалаПроверки | И ИмяТаблицы.Дата > &ДатаНачалаПроверки
| И НЕ ИмяТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ИмяТаблицы.Ссылка";
@@ -2007,6 +2008,7 @@
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ИмяТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| И НЕ ИмяТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ИмяТаблицы.Ссылка";
@@ -3049,6 +3051,7 @@
| &ОбъектМетаданных КАК ИмяТаблицы | &ОбъектМетаданных КАК ИмяТаблицы
|ГДЕ |ГДЕ
| &Условие | &Условие
| И НЕ ИмяТаблицы.ПометкаУдаления
| |
|УПОРЯДОЧИТЬ ПО |УПОРЯДОЧИТЬ ПО
| ИмяТаблицы.Ссылка"; | ИмяТаблицы.Ссылка";
@@ -4183,7 +4186,7 @@
УточнениеПроблемы = УточнениеПроблемы + ?(ЗначениеЗаполнено(УточнениеПроблемы), Символы.ПС, "") + ПользовательскоеСообщение.Текст; УточнениеПроблемы = УточнениеПроблемы + ?(ЗначениеЗаполнено(УточнениеПроблемы), Символы.ПС, "") + ПользовательскоеСообщение.Текст;
КонецЦикла; КонецЦикла;
Возврат ?(ПустаяСтрока(УточнениеПроблемы), НСтр("ru = 'Для подробной информации необходимо открыть форму объекта.'"), УточнениеПроблемы); Возврат ?(ПустаяСтрока(УточнениеПроблемы), НСтр("ru = 'Для подробной информации откройте форму объекта.'"), УточнениеПроблемы);
КонецФункции КонецФункции
@@ -108,7 +108,7 @@
Процедура ПриОбработкеКоманды(ФормаОтчета, Команда, Результат) Экспорт Процедура ПриОбработкеКоманды(ФормаОтчета, Команда, Результат) Экспорт
Если ФормаОтчета.НастройкиОтчета.ПолноеИмя = "Отчет.РезультатыПроверкиУчета" Тогда Если ФормаОтчета.НастройкиОтчета.ПолноеИмя = "Отчет.РезультатыПроверкиУчета" Тогда
ТекстНеуспешногоДействия = НСтр("ru = 'Необходимо выбрать строку с проблемным объектом.'"); ТекстНеуспешногоДействия = НСтр("ru = 'Выберите строку с проблемным объектом.'");
Расшифровка = ФормаОтчета.ОтчетТабличныйДокумент.ТекущаяОбласть.Расшифровка; Расшифровка = ФормаОтчета.ОтчетТабличныйДокумент.ТекущаяОбласть.Расшифровка;
Если Команда.Имя = "КонтрольВеденияУчетаИсторияИзмененийОбъекта" Тогда Если Команда.Имя = "КонтрольВеденияУчетаИсторияИзмененийОбъекта" Тогда
Результат = КонтрольВеденияУчетаВызовСервера.ДанныеДляИсторииИзмененийОбъекта(ФормаОтчета.ОтчетДанныеРасшифровки, ФормаОтчета.ОтчетТабличныйДокумент, Расшифровка); Результат = КонтрольВеденияУчетаВызовСервера.ДанныеДляИсторииИзмененийОбъекта(ФормаОтчета.ОтчетДанныеРасшифровки, ФормаОтчета.ОтчетТабличныйДокумент, Расшифровка);
@@ -689,7 +689,7 @@
Для каждого ОбъектМетаданныхСЭлементами Из ОбъектыСПредопределеннымиЭлементами Цикл Для каждого ОбъектМетаданныхСЭлементами Из ОбъектыСПредопределеннымиЭлементами Цикл
ЛокализуемыеРеквизитыОбъекта = МультиязычныеРеквизитыОбъекта(ОбъектМетаданныхСЭлементами); ЛокализуемыеРеквизитыОбъекта = НаименованияЛокализуемыхРеквизитовОбъектаВШапке(ОбъектМетаданныхСЭлементами);
Отборы = Новый Массив; Отборы = Новый Массив;
Для каждого РеквизитОбъекта Из ЛокализуемыеРеквизитыОбъекта Цикл Для каждого РеквизитОбъекта Из ЛокализуемыеРеквизитыОбъекта Цикл
@@ -1365,6 +1365,34 @@
КонецФункции КонецФункции
Функция НаименованияЛокализуемыхРеквизитовОбъектаВШапке(ОбъектМетаданных, Префикс = "")
СписокРеквизитовОбъекта = Новый Соответствие;
Если МультиязычныеСтрокиВРеквизитах(ОбъектМетаданных) Тогда
ДлинаСуффиксаЯзыка = ДлинаСуффиксаЯзыка();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 0
| *
|ИЗ
| &ИмяТаблицы КАК ДанныеИсточника";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяТаблицы", ОбъектМетаданных.ПолноеИмя());
РезультатЗапроса = Запрос.Выполнить();
Для каждого Колонка Из РезультатЗапроса.Колонки Цикл
Если СтрЗаканчиваетсяНа(Колонка.Имя, "Язык1") Или СтрЗаканчиваетсяНа(Колонка.Имя, "Язык2") Тогда
СписокРеквизитовОбъекта.Вставить(Префикс + Лев(Колонка.Имя, СтрДлина(Колонка.Имя) - ДлинаСуффиксаЯзыка), Истина);
КонецЕсли;
КонецЦикла;
КонецЕсли;
Возврат СписокРеквизитовОбъекта;
КонецФункции
Функция ДлинаСуффиксаЯзыка() Функция ДлинаСуффиксаЯзыка()
Возврат СтрДлина("Язык1"); Возврат СтрДлина("Язык1");
@@ -187,12 +187,12 @@
// то способ отображения должен быть иерархический или в виде дерева. // то способ отображения должен быть иерархический или в виде дерева.
ОтображениеСписком = ЭлементСписок.Отображение = ОтображениеТаблицы.Список; ОтображениеСписком = ЭлементСписок.Отображение = ОтображениеТаблицы.Список;
Если Информация.ЕстьРодитель И ОтображениеСписком И Не СписокСодержитОтборПоРодителю(НастройкиКомпоновкиДанных) Тогда Если Информация.ЕстьРодитель И ОтображениеСписком И Не СписокСодержитОтборПоРодителю(НастройкиКомпоновкиДанных) Тогда
Возврат НСтр("ru = 'Для изменения порядка элементов необходимо установить режим просмотра ""Дерево"" или ""Иерархический список"".'"); Возврат НСтр("ru = 'Для изменения порядка элементов установите режим просмотра ""Дерево"" или ""Иерархический список"".'");
КонецЕсли; КонецЕсли;
// Для подчиненных справочников должен быть установлен отбор по владельцу. // Для подчиненных справочников должен быть установлен отбор по владельцу.
Если Информация.ЕстьВладелец И Не СписокСодержитОтборПоВладельцу(НастройкиКомпоновкиДанных) Тогда Если Информация.ЕстьВладелец И Не СписокСодержитОтборПоВладельцу(НастройкиКомпоновкиДанных) Тогда
Возврат НСтр("ru = 'Для изменения порядка элементов необходимо установить отбор по полю ""Владелец"".'"); Возврат НСтр("ru = 'Для изменения порядка элементов установите отбор по полю ""Владелец"".'");
КонецЕсли; КонецЕсли;
// Проверка признака "Использование" у реквизита РеквизитДопУпорядочивания по отношению к перемещаемому элементу. // Проверка признака "Использование" у реквизита РеквизитДопУпорядочивания по отношению к перемещаемому элементу.
@@ -362,7 +362,7 @@
РеквизитДопУпорядочивания = НастройкиКомпоновкиДанных.Порядок.ДоступныеПоляПорядка.НайтиПоле(Новый ПолеКомпоновкиДанных("РеквизитДопУпорядочивания")); РеквизитДопУпорядочивания = НастройкиКомпоновкиДанных.Порядок.ДоступныеПоляПорядка.НайтиПоле(Новый ПолеКомпоновкиДанных("РеквизитДопУпорядочивания"));
Если Не СортировкаПравильная Тогда Если Не СортировкаПравильная Тогда
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для перемещения элементов необходимо настроить сортировку Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для перемещения элементов настройте сортировку
|в списке по полю ""%1"" (по возрастанию)'"), РеквизитДопУпорядочивания.Заголовок); |в списке по полю ""%1"" (по возрастанию)'"), РеквизитДопУпорядочивания.Заголовок);
КонецЕсли; КонецЕсли;
@@ -1856,6 +1856,10 @@
ПровестиГенерациюКодаНомераПриНеобходимости(ДанныеДляЗаписиВИБ); ПровестиГенерациюКодаНомераПриНеобходимости(ДанныеДляЗаписиВИБ);
КонецЕсли; КонецЕсли;
Если УдалятьСозданныеПоКлючевымСвойствам Тогда
ДанныеДляЗаписиВИБ.ДополнительныеСвойства.Вставить("УдалятьСозданныеПоКлючевымСвойствам");
КонецЕсли;
Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена И Не ПравилоКонвертации.ЭтоРегистр Тогда Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена И Не ПравилоКонвертации.ЭтоРегистр Тогда
ПолучениеЭлемента = ПолучениеЭлементаДанных.Авто; ПолучениеЭлемента = ПолучениеЭлементаДанных.Авто;
ОтправкаНазад = Ложь; ОтправкаНазад = Ложь;
@@ -30,7 +30,7 @@
Если ТребуетсяОбновлениеКонфигурацииУзлаРИБ Тогда Если ТребуетсяОбновлениеКонфигурацииУзлаРИБ Тогда
Пояснение = НСтр("ru = 'Получено обновление программы из ""%1"". Пояснение = НСтр("ru = 'Получено обновление программы из ""%1"".
|Необходимо установить обновление программы, после чего синхронизация данных будет продолжена.'"); |Установите обновление программы, после чего синхронизация данных будет продолжена.'");
Пояснение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Пояснение, СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ГлавныйУзел); Пояснение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Пояснение, СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ГлавныйУзел);
ПоказатьОповещениеПользователя(НСтр("ru = 'Установить обновление'"), "e1cib/app/Обработка.ВыполнениеОбменаДанными", ПоказатьОповещениеПользователя(НСтр("ru = 'Установить обновление'"), "e1cib/app/Обработка.ВыполнениеОбменаДанными",
Пояснение, БиблиотекаКартинок.Предупреждение32); Пояснение, БиблиотекаКартинок.Предупреждение32);
@@ -304,7 +304,7 @@
СообщенияОбОшибках.Вставить(72, НСтр("ru = 'Ошибка при выгрузке данных для узла плана обмена'")); СообщенияОбОшибках.Вставить(72, НСтр("ru = 'Ошибка при выгрузке данных для узла плана обмена'"));
СообщенияОбОшибках.Вставить(73, НСтр("ru = 'Ошибка в обработчике события ПоследовательностьПолейПоиска'")); СообщенияОбОшибках.Вставить(73, НСтр("ru = 'Ошибка в обработчике события ПоследовательностьПолейПоиска'"));
СообщенияОбОшибках.Вставить(74, НСтр("ru = 'Необходимо перезагрузить правила обмена для выгрузки данных.'")); СообщенияОбОшибках.Вставить(74, НСтр("ru = 'Перезагрузите правила обмена для выгрузки данных.'"));
СообщенияОбОшибках.Вставить(75, НСтр("ru = 'Ошибка в обработчике события ПослеЗагрузкиПравилОбмена (конвертация)'")); СообщенияОбОшибках.Вставить(75, НСтр("ru = 'Ошибка в обработчике события ПослеЗагрузкиПравилОбмена (конвертация)'"));
СообщенияОбОшибках.Вставить(76, НСтр("ru = 'Ошибка в обработчике события ПередОтправкойИнформацииОбУдалении (конвертация)'")); СообщенияОбОшибках.Вставить(76, НСтр("ru = 'Ошибка в обработчике события ПередОтправкойИнформацииОбУдалении (конвертация)'"));
@@ -78,6 +78,27 @@
Форма.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Форма.Объект.Наименование + " (%1)", Форма.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Форма.Объект.Наименование + " (%1)",
ПредставлениеПланаОбмена); ПредставлениеПланаОбмена);
Если ОбщегоНазначения.РазделениеВключено() Тогда
ВидимостьНастройкиПодключения = Ложь;
Если Не Форма.Объект.Ссылка.Пустая() Тогда
ВидТранспорта = РегистрыСведений.НастройкиТранспортаОбменаДанными.ВидТранспортаСообщенийОбменаПоУмолчанию(Форма.Объект.Ссылка);
ВидимостьНастройкиПодключения = (ВидТранспорта = Перечисления.ВидыТранспортаСообщенийОбмена.WS
Или ВидТранспорта = Перечисления.ВидыТранспортаСообщенийОбмена.WSПассивныйРежим);
КонецЕсли;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Форма.Элементы,
"ФормаОбщаяКомандаНастройкиПодключения",
"Видимость",
ВидимостьНастройкиПодключения);
КонецЕсли;
КонецПроцедуры КонецПроцедуры
// Процедура-обработчик события "ПриЗаписиНаСервере" для формы узла плана обмена. // Процедура-обработчик события "ПриЗаписиНаСервере" для формы узла плана обмена.
@@ -10669,7 +10690,7 @@
Если ОбщегоНазначения.ЭтоLinuxСервер() Тогда Если ОбщегоНазначения.ЭтоLinuxСервер() Тогда
ВызватьИсключение НСтр("ru = 'Синхронизация данных через прямое подключение на сервере под управлением ОС Linux недоступно. ВызватьИсключение НСтр("ru = 'Синхронизация данных через прямое подключение на сервере под управлением ОС Linux недоступно.
|Для синхронизации данных через прямое подключение требуется использовать ОС Windows.'"); |Для синхронизации данных через прямое подключение используйте ОС Windows.'");
КонецЕсли; КонецЕсли;
@@ -12013,7 +12034,7 @@
// Получение данных необходимо отменить. // Получение данных необходимо отменить.
СтрокаСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СтрокаСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В программе ""%1"" выполняется обновление настроек синхронизации. НСтр("ru = 'В программе ""%1"" выполняется обновление настроек синхронизации.
|Загрузка данных отменена. Необходимо запустить синхронизацию данных повторно.'"), |Загрузка данных отменена. Запустите синхронизацию данных повторно.'"),
Строка(СтруктураНастроек.УзелИнформационнойБазы)); Строка(СтруктураНастроек.УзелИнформационнойБазы));
Отказ = Истина; Отказ = Истина;
КонецЕсли; КонецЕсли;
@@ -14683,7 +14704,7 @@
И СтруктураНастроекОбменаВнешнееСоединение.НастройкаСинхронизацииДанныхЗавершена = Ложь Тогда И СтруктураНастроекОбменаВнешнееСоединение.НастройкаСинхронизацииДанныхЗавершена = Ложь Тогда
СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для продолжения необходимо перейти в программу ""%1"" и завершить в ней настройку синхронизации. НСтр("ru = 'Для продолжения перейдите в программу ""%1"" и завершите в ней настройку синхронизации.
|Выполнение обмена данными отменено.'"), |Выполнение обмена данными отменено.'"),
СтруктураНастроекОбменаВнешнееСоединение.УзелИнформационнойБазыНаименование); СтруктураНастроекОбменаВнешнееСоединение.УзелИнформационнойБазыНаименование);
ЗаписьЖурналаРегистрацииОбменаДанными(СообщениеОбОшибке, СтруктураНастроекОбмена, Истина); ЗаписьЖурналаРегистрацииОбменаДанными(СообщениеОбОшибке, СтруктураНастроекОбмена, Истина);
@@ -14701,7 +14722,7 @@
И СтруктураНастроекОбменаВнешнееСоединение.ПолученоСообщениеДляСопоставленияДанных = Истина Тогда И СтруктураНастроекОбменаВнешнееСоединение.ПолученоСообщениеДляСопоставленияДанных = Истина Тогда
СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для продолжения необходимо перейти в программу ""%1"" и выполнить загрузку сообщения для сопоставления данных. НСтр("ru = 'Для продолжения перейдите в программу ""%1"" и выполните загрузку сообщения для сопоставления данных.
|Выполнение обмена данными отменено.'"), |Выполнение обмена данными отменено.'"),
СтруктураНастроекОбменаВнешнееСоединение.УзелИнформационнойБазыНаименование); СтруктураНастроекОбменаВнешнееСоединение.УзелИнформационнойБазыНаименование);
ЗаписьЖурналаРегистрацииОбменаДанными(СообщениеОбОшибке, СтруктураНастроекОбмена, Истина); ЗаписьЖурналаРегистрацииОбменаДанными(СообщениеОбОшибке, СтруктураНастроекОбмена, Истина);
@@ -15290,7 +15311,7 @@
// //
// Параметры: // Параметры:
// УзелИнформационнойБазы - ПланОбменаСсылка - узел плана обмена, для которого выполняется итерация обмена данными. // УзелИнформационнойБазы - ПланОбменаСсылка - узел плана обмена, для которого выполняется итерация обмена данными.
// ПараметрыОбменаДляУзла - Структура: // ПараметрыОбмена - Структура:
// * ВыполнятьЗагрузку - Булево - флаг необходимости выполнять загрузку данных. // * ВыполнятьЗагрузку - Булево - флаг необходимости выполнять загрузку данных.
// Необязательный, значение по умолчанию Истина. // Необязательный, значение по умолчанию Истина.
// * ВыполнятьВыгрузку - Булево - флаг необходимости выполнять выгрузку данных. // * ВыполнятьВыгрузку - Булево - флаг необходимости выполнять выгрузку данных.
@@ -291,7 +291,7 @@
Если Не ЗначениеЗаполнено(ИдентификаторФайла) Тогда Если Не ЗначениеЗаполнено(ИдентификаторФайла) Тогда
СообщениеОбОшибке = НСтр("ru = 'Не указан идентификатор загружаемого файла. Дальнейшее выполнение метода невозможно. СообщениеОбОшибке = НСтр("ru = 'Не указан идентификатор загружаемого файла. Дальнейшее выполнение метода невозможно.
|Необходимо для загружаемого файла назначить уникальный идентификатор.'"); |Назначьте уникальный идентификатор для загружаемого файла.'");
ВызватьИсключение (СообщениеОбОшибке); ВызватьИсключение (СообщениеОбОшибке);
КонецЕсли; КонецЕсли;
@@ -378,7 +378,7 @@
Иначе Иначе
ШаблонСообщения = НСтр("ru = 'Не найден ни один фрагмент сессии передачи с идентификатором %1. ШаблонСообщения = НСтр("ru = 'Не найден ни один фрагмент сессии передачи с идентификатором %1.
|Необходимо убедиться, что в настройках программы заданы параметры |Убедитесь, что в настройках программы заданы параметры
|""Каталог временных файлов для Linux"" и ""Каталог временных файлов для Windows"".'"); |""Каталог временных файлов для Linux"" и ""Каталог временных файлов для Windows"".'");
СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, Строка( СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, Строка(
ИдентификаторФайла)); ИдентификаторФайла));
@@ -3648,6 +3648,11 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Не ЭтоУдалениеОбъекта
И ЭлементДанных.ДополнительныеСвойства.Свойство("УдалятьСозданныеПоКлючевымСвойствам") Тогда
Возврат;
КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда
МодульДатыЗапретаИзменения = ОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзменения"); МодульДатыЗапретаИзменения = ОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзменения");
@@ -5346,12 +5346,12 @@
// //
Процедура ИзменитьМаксимумВыборки(ТекстЗапроса, ТекущееКоличество, НовоеКоличество) Процедура ИзменитьМаксимумВыборки(ТекстЗапроса, ТекущееКоличество, НовоеКоличество)
ТекстПоиска = "ПЕРВЫЕ " + Формат(ТекущееКоличество, "ЧН=0; ЧГ=0"); ТекстПоиска = "ПЕРВЫЕ " + Формат(ТекущееКоличество, "ЧН=0; ЧГ=0"); // @query-part
Если НовоеКоличество = Неопределено Тогда Если НовоеКоличество = Неопределено Тогда
ТекстЗамены = ""; ТекстЗамены = "";
Иначе Иначе
ТекстЗамены = "ПЕРВЫЕ " + Формат(НовоеКоличество, "ЧН=0; ЧГ=0"); ТекстЗамены = "ПЕРВЫЕ " + Формат(НовоеКоличество, "ЧН=0; ЧГ=0"); // @query-part
КонецЕсли; КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ТекстПоиска, ТекстЗамены); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ТекстПоиска, ТекстЗамены);
@@ -5865,14 +5865,14 @@
| %1 КАК %1 | %1 КАК %1
| ГДЕ | ГДЕ
| %2)"; | %2)";
ШаблонУсловияПоРеквизиту = "Таблица%1.%2 = %3.Ссылка"; ШаблонУсловияПоРеквизиту = "%1.%2 = %3.Ссылка";
РазделительУсловий = РазделительУсловий =
" "
| И "; | И ";
РазделительУсловийПоРеквизитам = РазделительУсловийПоРеквизитам =
" "
| ИЛИ "; | ИЛИ ";
Таблица = ?(ПолноеИмяРегистра <> Неопределено, "Документа", "Объекта"); Таблица = ?(ПолноеИмяРегистра <> Неопределено, "ТаблицаДокумента", "ТаблицаОбъекта");
Условия = Новый Массив; Условия = Новый Массив;
Для Каждого ОписаниеМетаданных Из РеквизитыШапки Цикл Для Каждого ОписаниеМетаданных Из РеквизитыШапки Цикл
@@ -41,7 +41,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы"; Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.1.5.221"; Описание.Версия = "3.1.5.237";
Описание.ИдентификаторИнтернетПоддержки = "SSL"; Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -1012,7 +1012,7 @@
Количество = Число(ПотокиОбновления[1]); Количество = Число(ПотокиОбновления[1]);
Исключение Исключение
ТекстИсключения = НСтр( ТекстИсключения = НСтр(
"ru = 'Параметр запуска программы ""ЧислоПотоковОбновления"" необходимо указать в формате "ru = 'Укажите параметр запуска программы ""ЧислоПотоковОбновления"" в формате
|""ЧислоПотоковОбновления=Х"", где ""Х"" - максимальное количество потоков обновления.'"); |""ЧислоПотоковОбновления=Х"", где ""Х"" - максимальное количество потоков обновления.'");
ВызватьИсключение ТекстИсключения; ВызватьИсключение ТекстИсключения;
КонецПопытки; КонецПопытки;
@@ -6591,18 +6591,15 @@
Процедура ЗаписатьДетальнуюИнформациюОХодеОбновления(ОписаниеОбработчика) Процедура ЗаписатьДетальнуюИнформациюОХодеОбновления(ОписаниеОбработчика)
КопияОписания = ОбщегоНазначения.СкопироватьРекурсивно(ОписаниеОбработчика);
Если КопияОписания.Свойство("Параметры") Тогда
КопияОписания.Удалить("Параметры");
КонецЕсли;
Длительность = ТекущаяУниверсальнаяДатаВМиллисекундах() - ОписаниеОбработчика.ЗначениеНаНачало; Длительность = ТекущаяУниверсальнаяДатаВМиллисекундах() - ОписаниеОбработчика.ЗначениеНаНачало;
ОписаниеОбработчика.Вставить("Выполнен", Ложь); ОписаниеОбработчика.Вставить("Выполнен", Ложь);
ОписаниеОбработчика.Вставить("Длительность", Длительность / 1000); // В секундах ОписаниеОбработчика.Вставить("Длительность", Длительность / 1000); // В секундах
КопияОписания.Вставить("Выполнен", Ложь); КопияОписания = ОбщегоНазначения.СкопироватьРекурсивно(ОписаниеОбработчика);
КопияОписания.Вставить("Длительность", Длительность / 1000); // В секундах Если КопияОписания.Свойство("Параметры") Тогда
КопияОписания.Удалить("Параметры");
КонецЕсли;
ЗаписьЖурналаРегистрации( ЗаписьЖурналаРегистрации(
СобытиеЖурналаРегистрацииПротокол(), СобытиеЖурналаРегистрацииПротокол(),
@@ -46,7 +46,7 @@
Результат.ПоддерживаетсяУстановкаИсправлений = Истина; Результат.ПоддерживаетсяУстановкаИсправлений = Истина;
Результат.ОписаниеОшибки = Результат.ОписаниеОшибки =
НСтр("ru = 'В веб-клиенте доступна только установка исправлений. НСтр("ru = 'В веб-клиенте доступна только установка исправлений.
|Для установки обновления, необходимо установить |Для установки обновления, установите
|полный дистрибутив технологической платформы 1С:Предприятие для Windows.'"); |полный дистрибутив технологической платформы 1С:Предприятие для Windows.'");
#ИначеЕсли МобильныйКлиент Тогда #ИначеЕсли МобильныйКлиент Тогда
@@ -65,7 +65,7 @@
Результат.ПоддерживаетсяУстановкаИсправлений = Истина; Результат.ПоддерживаетсяУстановкаИсправлений = Истина;
Результат.ОписаниеОшибки = Результат.ОписаниеОшибки Результат.ОписаниеОшибки = Результат.ОписаниеОшибки
+ НСтр("ru = 'При подключении через веб-сервер доступна только установка исправлений. + НСтр("ru = 'При подключении через веб-сервер доступна только установка исправлений.
|Для установки обновления, необходимо установить |Для установки обновления, установите
|полный дистрибутив технологической платформы 1С:Предприятие для Windows.'"); |полный дистрибутив технологической платформы 1С:Предприятие для Windows.'");
КонецЕсли; КонецЕсли;
@@ -76,7 +76,7 @@
Результат.ОписаниеОшибки = Результат.ОписаниеОшибки Результат.ОписаниеОшибки = Результат.ОписаниеОшибки
+ НСтр("ru = 'Для установки обновления требуется конфигуратор. + НСтр("ru = 'Для установки обновления требуется конфигуратор.
|Необходимо установить полный дистрибутив технологической платформы 1С:Предприятие для Windows.'"); |Установите полный дистрибутив технологической платформы 1С:Предприятие для Windows.'");
КонецЕсли; КонецЕсли;
#КонецЕсли #КонецЕсли
@@ -8237,7 +8237,7 @@
СравниваемыеКолонки.Добавить("Значение"); СравниваемыеКолонки.Добавить("Значение");
Иначе Иначе
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для коллекции типа %1 необходимо указать имена полей, по которым производится сравнение в ОбщегоНазначения.КоллекцииИдентичны'"), НСтр("ru = 'Для коллекции типа %1 укажите имена полей, по которым производится сравнение в ОбщегоНазначения.КоллекцииИдентичны'"),
ТипКоллекции); ТипКоллекции);
КонецЕсли; КонецЕсли;
Иначе Иначе
@@ -852,24 +852,46 @@
Функция ЭтоМакет(Местоположение) Функция ЭтоМакет(Местоположение)
ШагиПути = СтрРазделить(Местоположение, "."); Если СтрНайти(Местоположение, "/") > 0 Тогда
Если ШагиПути.Количество() < 2 Тогда
Возврат Ложь; Возврат Ложь;
КонецЕсли; КонецЕсли;
Путь = Новый Структура; ШагиПути = СтрРазделить(Местоположение, ".");
Попытка Количество = ШагиПути.Количество();
Для каждого ШагПути Из ШагиПути Цикл
Путь.Вставить(ШагПути); Если Не Количество = 2 И Не Количество = 4 Тогда
КонецЦикла;
Исключение
Возврат Ложь; Возврат Ложь;
КонецПопытки; КонецЕсли;
Если Количество = 2 И Не ВРег(ШагиПути[0]) = "ОБЩИЙМАКЕТ" Тогда
Возврат Ложь;
КонецЕсли;
Если Количество = 4 И Не ВРег(ШагиПути[2]) = "МАКЕТ" Тогда
Возврат Ложь;
КонецЕсли;
Для каждого ШагПути Из ШагиПути Цикл
Если Не ИмяСоответствуетТребованиямИменованияСвойств(ШагПути) Тогда
Возврат Ложь;
КонецЕсли;
КонецЦикла;
Возврат Истина; Возврат Истина;
КонецФункции КонецФункции
Функция ИмяСоответствуетТребованиямИменованияСвойств(Имя)
Буквы = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZ";
Цифры = "1234567890";
Если Имя = "" Или СтрНайти(Буквы + "_", ВРег(Лев(Имя, 1))) = 0 Тогда
Возврат Ложь;
КонецЕсли;
Возврат СтрРазделить(ВРег(Имя), Буквы + Цифры + "_", Ложь).Количество() = 0;
КонецФункции
// Получает из кэша символическое имя внешней компоненты, если она была ранее подключена. // Получает из кэша символическое имя внешней компоненты, если она была ранее подключена.
Функция ПолучитьСимволическоеИмяКомпонентыИзКэша(КлючОбъекта) Функция ПолучитьСимволическоеИмяКомпонентыИзКэша(КлючОбъекта)
@@ -962,7 +984,7 @@
ОбщегоНазначенияСлужебныйКлиент, Контекст); ОбщегоНазначенияСлужебныйКлиент, Контекст);
ТекстВопроса = ТекстВопроса =
НСтр("ru = 'Для завершения перерегистрации компоненты comcntr необходимо перезапустить программу. НСтр("ru = 'Для завершения перерегистрации компоненты comcntr перезапустите программу.
|Перезапустить сейчас?'"); |Перезапустить сейчас?'");
ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет); ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
@@ -1574,13 +1574,11 @@
КонецПроцедуры КонецПроцедуры
Процедура ПерегруппироватьЭлементыФормыНастроек(Форма, Знач УзелИерархииЭлементов, СвойстваЭлементов, ИменаРеквизитов, ВидыСтилизованныхЭлементов) Процедура ПерегруппироватьЭлементыФормыНастроек(Форма, Знач УзелИерархииЭлементов, СвойстваЭлементов, ИменаРеквизитов, ВидыСтилизованныхЭлементов)
ЭтоОсновнаяФорма = (Форма.ТипФормыОтчета = ТипФормыОтчета.Основная);
ОписаниеНастроек = СвойстваЭлементов.Поля.Скопировать(, ОписаниеНастроек = СвойстваЭлементов.Поля.Скопировать(,
"ИндексНастройки, ИдентификаторНастройки, Настройки, ЭлементНастройки, ОписаниеНастройки"); "ИндексНастройки, ИдентификаторНастройки, Настройки, ЭлементНастройки, ОписаниеНастройки");
ЭлементыНастроек = ЭлементыФормыНастроек(Форма, ОписаниеНастроек, ИменаРеквизитов); ЭлементыНастроек = ЭлементыФормыНастроек(Форма, ОписаниеНастроек, ИменаРеквизитов);
УстановитьСвойстваЭлементовФормыНастроек(Форма, ЭлементыНастроек, СвойстваЭлементов, ЭтоОсновнаяФорма); УстановитьСвойстваЭлементовФормыНастроек(Форма, ЭлементыНастроек, СвойстваЭлементов);
Если Форма.ТипФормыОтчета <> ТипФормыОтчета.Настройка Тогда Если Форма.ТипФормыОтчета <> ТипФормыОтчета.Настройка Тогда
ЭлементыНастроек.ЗаполнитьЗначения(Ложь, "ЭтоСписок"); ЭлементыНастроек.ЗаполнитьЗначения(Ложь, "ЭтоСписок");
@@ -1620,7 +1618,7 @@
Группа = ?(ИдентификаторыГрупп.Количество() = 1, УзелИерархииЭлементов, Элементы.Найти(ИмяГруппы)); Группа = ?(ИдентификаторыГрупп.Количество() = 1, УзелИерархииЭлементов, Элементы.Найти(ИмяГруппы));
Если Группа = Неопределено Тогда Если Группа = Неопределено Тогда
Группа = ГруппаЭлементовФормыНастроек(Элементы, УзелИерархииЭлементов, ИмяГруппы, ЭтоОсновнаяФорма); Группа = ГруппаЭлементовФормыНастроек(Форма, УзелИерархииЭлементов, ИмяГруппы);
Группа.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Группа.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Строка %1'"), НомерГруппы); НСтр("ru = 'Строка %1'"), НомерГруппы);
@@ -1634,18 +1632,18 @@
ДополнительныеСвойства = Форма.Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства; ДополнительныеСвойства = Форма.Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства;
ПодготовитьЭлементыФормыНастроекКРаспределению( ПодготовитьЭлементыФормыНастроекКРаспределению(
ЭлементыНастроекГруппы, СвойстваГруппы.Группировка, ЭтоОсновнаяФорма, ДополнительныеСвойства); ЭлементыНастроекГруппы, СвойстваГруппы.Группировка, ЭтоОсновнаяФорма(Форма), ДополнительныеСвойства);
РаспределитьЭлементыФормыНастроек(Форма.Элементы, Группа, ЭлементыНастроекГруппы, ЭтоОсновнаяФорма); РаспределитьЭлементыФормыНастроек(Форма, Группа, ЭлементыНастроекГруппы);
КонецЦикла; КонецЦикла;
ВывестиСтилизованныеЭлементыФормыНастроек(Форма, ЭлементыНастроек, ОписаниеНастроек, ИменаРеквизитов, ВидыСтилизованныхЭлементов); ВывестиСтилизованныеЭлементыФормыНастроек(Форма, ЭлементыНастроек, ОписаниеНастроек, ИменаРеквизитов, ВидыСтилизованныхЭлементов);
ДобавитьОтступКолонок(Форма, ЭлементыНастроек, УзелИерархииЭлементов, ЭтоОсновнаяФорма); ДобавитьОтступКолонок(Форма, ЭлементыНастроек, УзелИерархииЭлементов);
КонецПроцедуры КонецПроцедуры
Процедура ДобавитьОтступКолонок(Форма, ЭлементыНастроек, УзелИерархииЭлементов, ЭтоОсновнаяФорма) Процедура ДобавитьОтступКолонок(Форма, ЭлементыНастроек, УзелИерархииЭлементов)
Если Не ЭтоОсновнаяФорма Тогда Если Не ЭтоОсновнаяФорма(Форма) Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1672,7 +1670,7 @@
Колонка = ПодчиненныеЭлементы[НомерКолонки - 1]; Колонка = ПодчиненныеЭлементы[НомерКолонки - 1];
ИмяГруппы = УзелИерархииЭлементов.Имя + "ПоляКолонки" + НомерКолонки; ИмяГруппы = УзелИерархииЭлементов.Имя + "ПоляКолонки" + НомерКолонки;
ГруппаПолейКолонки = ГруппаЭлементовФормыНастроек(Элементы, УзелИерархииЭлементов, ИмяГруппы, ЭтоОсновнаяФорма); ГруппаПолейКолонки = ГруппаЭлементовФормыНастроек(Форма, УзелИерархииЭлементов, ИмяГруппы);
ГруппаПолейКолонки.Группировка = Колонка.Группировка; ГруппаПолейКолонки.Группировка = Колонка.Группировка;
ГруппаПолейКолонки.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Поля колонки %1'"), НомерКолонки); ГруппаПолейКолонки.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Поля колонки %1'"), НомерКолонки);
@@ -1922,7 +1920,7 @@
// * Группы - Структура // * Группы - Структура
// * Поля - ТаблицаЗначений // * Поля - ТаблицаЗначений
// //
Процедура УстановитьСвойстваЭлементовФормыНастроек(Форма, ЭлементыНастроек, СвойстваЭлементов, ЭтоОсновнаяФорма) Процедура УстановитьСвойстваЭлементовФормыНастроек(Форма, ЭлементыНастроек, СвойстваЭлементов)
КомпоновщикНастроек = Форма.Отчет.КомпоновщикНастроек; КомпоновщикНастроек = Форма.Отчет.КомпоновщикНастроек;
#Область УстановкаСвойствЭлементовИспользование #Область УстановкаСвойствЭлементовИспользование
@@ -2015,7 +2013,7 @@
СвойстваПоля = СвойстваЭлементов.Поля.Найти(Элемент.ИндексНастройки, "ИндексНастройки"); СвойстваПоля = СвойстваЭлементов.Поля.Найти(Элемент.ИндексНастройки, "ИндексНастройки");
ЗаполнитьЗначенияСвойств(Поле, СвойстваПоля,, "ПоложениеЗаголовка"); ЗаполнитьЗначенияСвойств(Поле, СвойстваПоля,, "ПоложениеЗаголовка");
Если ЭтоОсновнаяФорма Тогда Если ЭтоОсновнаяФорма(Форма) И Не Форма.ВыводитьЗаголовкиНастроек Тогда
Если СтрЗаканчиваетсяНа(СвязанноеПоле.Заголовок, ":") Тогда Если СтрЗаканчиваетсяНа(СвязанноеПоле.Заголовок, ":") Тогда
Заголовок = Лев(СвязанноеПоле.Заголовок, СтрДлина(СвязанноеПоле.Заголовок) - 1); Заголовок = Лев(СвязанноеПоле.Заголовок, СтрДлина(СвязанноеПоле.Заголовок) - 1);
Иначе Иначе
@@ -2360,12 +2358,14 @@
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
Процедура РаспределитьЭлементыФормыНастроек(Элементы, Знач Группа, ЭлементыНастроек, ЭтоОсновнаяФорма) Процедура РаспределитьЭлементыФормыНастроек(Форма, Знач Группа, ЭлементыНастроек)
КоличествоКолонок = 0; КоличествоКолонок = 0;
Если ЭлементыНастроек.Количество() > 0 Тогда Если ЭлементыНастроек.Количество() > 0 Тогда
КоличествоКолонок = ЭлементыНастроек[ЭлементыНастроек.Количество() - 1].НомерКолонки; КоличествоКолонок = ЭлементыНастроек[ЭлементыНастроек.Количество() - 1].НомерКолонки;
КонецЕсли; КонецЕсли;
Элементы = Форма.Элементы;
Для НомерКолонки = 1 По КоличествоКолонок Цикл Для НомерКолонки = 1 По КоличествоКолонок Цикл
ПризнакиЭлементов = ЭлементыНастроек.Скопировать(Новый Структура("НомерКолонки", НомерКолонки)); ПризнакиЭлементов = ЭлементыНастроек.Скопировать(Новый Структура("НомерКолонки", НомерКолонки));
ПризнакиЭлементов.Свернуть("ЭтоФлажок, ЭтоСписок, НомерГруппы"); ПризнакиЭлементов.Свернуть("ЭтоФлажок, ЭтоСписок, НомерГруппы");
@@ -2376,7 +2376,7 @@
ИмяКолонки = Группа.Имя + "Колонка" + НомерКолонки; ИмяКолонки = Группа.Имя + "Колонка" + НомерКолонки;
Колонка = ?(КоличествоКолонок = 1, Группа, Элементы.Найти(ИмяКолонки)); Колонка = ?(КоличествоКолонок = 1, Группа, Элементы.Найти(ИмяКолонки));
Если Колонка = Неопределено Тогда Если Колонка = Неопределено Тогда
Колонка = ГруппаЭлементовФормыНастроек(Элементы, Группа, ИмяКолонки, ЭтоОсновнаяФорма); Колонка = ГруппаЭлементовФормыНастроек(Форма, Группа, ИмяКолонки);
Колонка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Колонка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Колонка %1'"), НомерКолонки); НСтр("ru = 'Колонка %1'"), НомерКолонки);
@@ -2390,25 +2390,27 @@
КонецЕсли; КонецЕсли;
Если ТолькоПоляВвода Тогда Если ТолькоПоляВвода Тогда
РаспределитьЭлементыФормыНастроекПоСвойствам(Элементы, Колонка, ЭлементыНастроек, НомерКолонки, ЭтоОсновнаяФорма); РаспределитьЭлементыФормыНастроекПоСвойствам(Форма, Колонка, ЭлементыНастроек, НомерКолонки);
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
НомерСтроки = 0; НомерСтроки = 0;
Для Каждого Признаки Из ПризнакиЭлементов Цикл Для Каждого Признаки Из ПризнакиЭлементов Цикл
НомерСтроки = НомерСтроки + 1; НомерСтроки = НомерСтроки + 1;
Родитель = ИерархияЭлементовФормыНастроек(Элементы, Колонка, Признаки, НомерСтроки, НомерКолонки, ЭтоОсновнаяФорма); Родитель = ИерархияЭлементовФормыНастроек(Форма, Колонка, Признаки, НомерСтроки, НомерКолонки);
РаспределитьЭлементыФормыНастроекПоСвойствам(Элементы, Родитель, ЭлементыНастроек, НомерКолонки, ЭтоОсновнаяФорма, Признаки.НомерГруппы); РаспределитьЭлементыФормыНастроекПоСвойствам(Форма, Родитель, ЭлементыНастроек, НомерКолонки, Признаки.НомерГруппы);
КонецЦикла; КонецЦикла;
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
Процедура РаспределитьЭлементыФормыНастроекПоСвойствам(Элементы, Родитель, ЭлементыНастроек, НомерКолонки, ЭтоОсновнаяФорма, НомерГруппы = Неопределено) Процедура РаспределитьЭлементыФормыНастроекПоСвойствам(Форма, Родитель, ЭлементыНастроек, НомерКолонки, НомерГруппы = Неопределено)
Элементы = Форма.Элементы;
СвойстваНастроек = СтрРазделить("Использование, ВидСравнения, Значение", ", ", Ложь); СвойстваНастроек = СтрРазделить("Использование, ВидСравнения, Значение", ", ", Ложь);
Для Каждого СвойствоНастройки Из СвойстваНастроек Цикл Для Каждого СвойствоНастройки Из СвойстваНастроек Цикл
ИмяГруппы = Родитель.Имя + СвойствоНастройки; ИмяГруппы = Родитель.Имя + СвойствоНастройки;
Группа = ГруппаЭлементовФормыНастроек(Элементы, Родитель, ИмяГруппы, ЭтоОсновнаяФорма); Группа = ГруппаЭлементовФормыНастроек(Форма, Родитель, ИмяГруппы);
Группа.Заголовок = СвойствоНастройки; Группа.Заголовок = СвойствоНастройки;
Группа.Видимость = (СвойствоНастройки <> "ВидСравнения"); Группа.Видимость = (СвойствоНастройки <> "ВидСравнения");
@@ -2425,9 +2427,9 @@
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
Функция ИерархияЭлементовФормыНастроек(Элементы, Родитель, Признаки, НомерСтроки, НомерКолонки, ЭтоОсновнаяФорма) Функция ИерархияЭлементовФормыНастроек(Форма, Родитель, Признаки, НомерСтроки, НомерКолонки)
ИмяСтроки = Родитель.Имя + "Строка" + НомерСтроки; ИмяСтроки = Родитель.Имя + "Строка" + НомерСтроки;
Строка = ГруппаЭлементовФормыНастроек(Элементы, Родитель, ИмяСтроки, ЭтоОсновнаяФорма); Строка = ГруппаЭлементовФормыНастроек(Форма, Родитель, ИмяСтроки);
Строка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Строка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Строка %1.%2'"), НомерКолонки, НомерСтроки); НСтр("ru = 'Строка %1.%2'"), НомерКолонки, НомерСтроки);
@@ -2440,7 +2442,7 @@
КонецЕсли; КонецЕсли;
ИмяКолонки = Строка.Имя + "Колонка1"; ИмяКолонки = Строка.Имя + "Колонка1";
Колонка = ГруппаЭлементовФормыНастроек(Элементы, Строка, ИмяКолонки, ЭтоОсновнаяФорма); Колонка = ГруппаЭлементовФормыНастроек(Форма, Строка, ИмяКолонки);
Колонка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Колонка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Колонка %1.%2.1'"), НомерКолонки, НомерСтроки); НСтр("ru = 'Колонка %1.%2.1'"), НомерКолонки, НомерСтроки);
@@ -2449,7 +2451,9 @@
Возврат Колонка; Возврат Колонка;
КонецФункции КонецФункции
Функция ГруппаЭлементовФормыНастроек(Элементы, Родитель, ИмяГруппы, ЭтоОсновнаяФорма = Ложь) Функция ГруппаЭлементовФормыНастроек(Форма, Родитель, ИмяГруппы)
Элементы = Форма.Элементы;
Группа = Элементы.Найти(ИмяГруппы); Группа = Элементы.Найти(ИмяГруппы);
Если Группа <> Неопределено Тогда Если Группа <> Неопределено Тогда
Возврат Группа; Возврат Группа;
@@ -2461,13 +2465,19 @@
Группа.Отображение = ОтображениеОбычнойГруппы.Нет; Группа.Отображение = ОтображениеОбычнойГруппы.Нет;
Группа.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; Группа.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная;
Если ЭтоОсновнаяФорма Тогда Если ЭтоОсновнаяФорма(Форма) И Не Форма.ВыводитьЗаголовкиНастроек Тогда
Группа.Объединенная = Ложь; Группа.Объединенная = Ложь;
КонецЕсли; КонецЕсли;
Возврат Группа; Возврат Группа;
КонецФункции КонецФункции
Функция ЭтоОсновнаяФорма(Форма)
Возврат (Форма.ТипФормыОтчета = ТипФормыОтчета.Основная);
КонецФункции
// Вывод стилизованных элементов формы настроек. // Вывод стилизованных элементов формы настроек.
Процедура ВывестиСтилизованныеЭлементыФормыНастроек(Форма, ЭлементыНастроек, ОписаниеНастроек, ИменаРеквизитов, ВидыЭлементов) Процедура ВывестиСтилизованныеЭлементыФормыНастроек(Форма, ЭлементыНастроек, ОписаниеНастроек, ИменаРеквизитов, ВидыЭлементов)
@@ -2755,7 +2765,7 @@
Команда.Картинка = КартинкаКнопкиВыбораПериода(); Команда.Картинка = КартинкаКнопкиВыбораПериода();
ИмяГруппыКнопки = СтрЗаменить(ИмяЭлемента, "ВыбратьПериод", "ГруппаВыбратьПериод"); ИмяГруппыКнопки = СтрЗаменить(ИмяЭлемента, "ВыбратьПериод", "ГруппаВыбратьПериод");
ГруппаКнопки = ГруппаЭлементовФормыНастроек(Форма.Элементы, Группа, ИмяГруппыКнопки); ГруппаКнопки = ГруппаЭлементовФормыНастроек(Форма, Группа, ИмяГруппыКнопки);
ГруппаКнопки.ГоризонтальноеПоложениеПодчиненных = ГоризонтальноеПоложениеЭлемента.Центр; ГруппаКнопки.ГоризонтальноеПоложениеПодчиненных = ГоризонтальноеПоложениеЭлемента.Центр;
Кнопка = Форма.Элементы.Найти(ИмяЭлемента); Кнопка = Форма.Элементы.Найти(ИмяЭлемента);
@@ -675,21 +675,30 @@
Виды.Колонки.Добавить("ИмяПодменю", Новый ОписаниеТипов("Строка")); Виды.Колонки.Добавить("ИмяПодменю", Новый ОписаниеТипов("Строка"));
Виды.Колонки.Добавить("Заголовок", Новый ОписаниеТипов("Строка")); Виды.Колонки.Добавить("Заголовок", Новый ОписаниеТипов("Строка"));
Виды.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число")); Виды.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число"));
Виды.Колонки.Добавить("Картинка"); // Картинка, Неопределено. Виды.Колонки.Добавить("Картинка", Новый ОписаниеТипов("Картинка"));
Виды.Колонки.Добавить("Отображение"); // ОтображениеКнопки, Неопределено. Виды.Колонки.Добавить("Отображение", Новый ОписаниеТипов("ОтображениеКнопки"));
Виды.Колонки.Добавить("ВидГруппыФормы"); Виды.Колонки.Добавить("ВидГруппыФормы");
ЗаполнениеОбъектов.ПриОпределенииВидовПодключаемыхКоманд(Виды);
СозданиеНаОсновании.ПриОпределенииВидовПодключаемыхКоманд(Виды);
ИнтеграцияПодсистемБСП.ПриОпределенииВидовПодключаемыхКоманд(Виды);
ПодключаемыеКомандыПереопределяемый.ПриОпределенииВидовПодключаемыхКоманд(Виды);
Для Каждого Вид Из Виды Цикл
Если Не ЗначениеЗаполнено(Вид.ИмяПодменю) Тогда
Вид.ИмяПодменю = "Подменю" + Вид.Имя;
КонецЕсли;
Если Не ЗначениеЗаполнено(Вид.Заголовок) Тогда
Вид.Заголовок = Вид.Имя;
КонецЕсли;
КонецЦикла;
// Вид с пустой группой для команд, которые следует размещать в командной панели. // Вид с пустой группой для команд, которые следует размещать в командной панели.
Вид = Виды.Добавить(); Вид = Виды.Добавить();
Вид.Имя = "КоманднаяПанель"; Вид.Имя = "КоманднаяПанель";
Вид.ИмяПодменю = ""; Вид.ИмяПодменю = "";
Вид.Порядок = 90; Вид.Порядок = 90;
ЗаполнениеОбъектов.ПриОпределенииВидовПодключаемыхКоманд(Виды);
СозданиеНаОсновании.ПриОпределенииВидовПодключаемыхКоманд(Виды);
ИнтеграцияПодсистемБСП.ПриОпределенииВидовПодключаемыхКоманд(Виды);
ПодключаемыеКомандыПереопределяемый.ПриОпределенииВидовПодключаемыхКоманд(Виды);
Виды.Сортировать("Порядок Возр"); Виды.Сортировать("Порядок Возр");
Возврат Виды; Возврат Виды;
@@ -142,7 +142,7 @@
Если ПараметрыВыполнения.ТребуетсяРаботаСФайлами Тогда Если ПараметрыВыполнения.ТребуетсяРаботаСФайлами Тогда
ПараметрыВыполнения.ТребуетсяРаботаСФайлами = Ложь; ПараметрыВыполнения.ТребуетсяРаботаСФайлами = Ложь;
Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеУстановкиРасширенияРаботыСФайлами", ЭтотОбъект, ПараметрыВыполнения); Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеУстановкиРасширенияРаботыСФайлами", ЭтотОбъект, ПараметрыВыполнения);
ТекстСообщения = НСтр("ru = 'Для продолжения необходимо установить расширение для работы с 1С:Предприятием.'"); ТекстСообщения = НСтр("ru = 'Для продолжения установите расширение для работы с 1С:Предприятием.'");
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Обработчик, ТекстСообщения); ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Обработчик, ТекстСообщения);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -184,9 +184,9 @@
Если ИнформацияОДокументах.Непроведенные.Количество() > 0 Тогда Если ИнформацияОДокументах.Непроведенные.Количество() > 0 Тогда
Если ИнформацияОДокументах.ДоступноПравоПроведения Тогда Если ИнформацияОДокументах.ДоступноПравоПроведения Тогда
Если ИнформацияОДокументах.Непроведенные.Количество() = 1 Тогда Если ИнформацияОДокументах.Непроведенные.Количество() = 1 Тогда
ТекстВопроса = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документ. Выполнить проведение документа и продолжить?'"); ТекстВопроса = НСтр("ru = 'Для выполнения команды предварительно проведите документ. Выполнить проведение документа и продолжить?'");
Иначе Иначе
ТекстВопроса = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документы. Выполнить проведение документов и продолжить?'"); ТекстВопроса = НСтр("ru = 'Для выполнения команды предварительно проведите документы. Выполнить проведение документов и продолжить?'");
КонецЕсли; КонецЕсли;
ПараметрыВыполнения.НепроведенныеДокументы = ИнформацияОДокументах.Непроведенные; ПараметрыВыполнения.НепроведенныеДокументы = ИнформацияОДокументах.Непроведенные;
Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеПодтверждениеПроведения", ЭтотОбъект, ПараметрыВыполнения); Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеПодтверждениеПроведения", ЭтотОбъект, ПараметрыВыполнения);
@@ -196,9 +196,9 @@
ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки); ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки);
Иначе Иначе
Если ИнформацияОДокументах.Непроведенные.Количество() = 1 Тогда Если ИнформацияОДокументах.Непроведенные.Количество() = 1 Тогда
ТекстПредупреждения = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документ. Недостаточно прав для проведения документа.'"); ТекстПредупреждения = НСтр("ru = 'Для выполнения команды предварительно проведите документ. Недостаточно прав для проведения документа.'");
Иначе Иначе
ТекстПредупреждения = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документы. Недостаточно прав для проведения документов.'"); ТекстПредупреждения = НСтр("ru = 'Для выполнения команды предварительно проведите документы. Недостаточно прав для проведения документов.'");
КонецЕсли; КонецЕсли;
ПоказатьПредупреждение(, ТекстПредупреждения); ПоказатьПредупреждение(, ТекстПредупреждения);
КонецЕсли; КонецЕсли;
@@ -624,7 +624,7 @@
|найти ни одного пользователя с ролями Полные права и Администратор системы. |найти ни одного пользователя с ролями Полные права и Администратор системы.
| |
|Вероятно, пользователи создавались в конфигураторе. |Вероятно, пользователи создавались в конфигураторе.
|Требуется назначить роли Полные права и Администратор системы хотя бы одному пользователю.'"); |Назначьте роли Полные права и Администратор системы хотя бы одному пользователю.'");
ВызватьИсключение ТекстОшибки; ВызватьИсключение ТекстОшибки;
КонецЕсли; КонецЕсли;
Иначе Иначе
@@ -3218,7 +3218,7 @@
Если ПарольЗадан Или ПроверитьПустойПароль Тогда Если ПарольЗадан Или ПроверитьПустойПароль Тогда
ОбщегоНазначения.СообщитьПользователю( ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Требуется установить пароль.'"),, "СменитьПароль",, Отказ); НСтр("ru = 'Установите пароль.'"),, "СменитьПароль",, Отказ);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -4406,8 +4406,10 @@
Возврат Новый Массив; Возврат Новый Массив;
КонецЕсли; КонецЕсли;
ПользователиИБСПочтой = ПользователиCЭлектроннойПочтойДляВосстановления();
Если ВнешниеПользователи.ИспользоватьВнешнихПользователей() Тогда Если ВнешниеПользователи.ИспользоватьВнешнихПользователей() Тогда
Возврат ПользователиДляВключенияВосстановленияПароляСУчетомВнешнихПользователей(); Возврат ПользователиДляВключенияВосстановленияПароляСУчетомВнешнихПользователей(ПользователиИБСПочтой);
КонецЕсли; КонецЕсли;
МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией");
@@ -4415,7 +4417,8 @@
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
| МАКСИМУМ(ПользователиКонтактнаяИнформация.Ссылка) КАК Ссылка, | МАКСИМУМ(ПользователиКонтактнаяИнформация.Ссылка) КАК Ссылка,
| ПользователиКонтактнаяИнформация.Представление КАК Представление | ПользователиКонтактнаяИнформация.Представление КАК Представление,
| Пользователи.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
|ИЗ |ИЗ
| Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация | Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи
@@ -4426,17 +4429,19 @@
| И Пользователи.Служебный = ЛОЖЬ | И Пользователи.Служебный = ЛОЖЬ
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ПользователиКонтактнаяИнформация.Представление"; | ПользователиКонтактнаяИнформация.Представление,
| Пользователи.ИдентификаторПользователяИБ";
Запрос.УстановитьПараметр("ВидКонтактнойИнформации", Запрос.УстановитьПараметр("ВидКонтактнойИнформации",
МодульУправлениеКонтактнойИнформацией.ВидКонтактнойИнформацииПоИмени("EmailПользователя")); МодульУправлениеКонтактнойИнформацией.ВидКонтактнойИнформацииПоИмени("EmailПользователя"));
РезультатЗапроса = Запрос.Выполнить().Выгрузить(); РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Возврат РезультатЗапроса.ВыгрузитьКолонку("Ссылка");
Возврат СписокПользователейДляОбновления(ПользователиИБСПочтой, РезультатЗапроса);
КонецФункции КонецФункции
Функция ПользователиДляВключенияВосстановленияПароляСУчетомВнешнихПользователей() Функция ПользователиДляВключенияВосстановленияПароляСУчетомВнешнихПользователей(ПользователиИБСПочтой)
ТипыВнешнихПользователей = Метаданные.ОпределяемыеТипы.ВнешнийПользователь.Тип.Типы(); ТипыВнешнихПользователей = Метаданные.ОпределяемыеТипы.ВнешнийПользователь.Тип.Типы();
@@ -4480,7 +4485,8 @@
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() + " ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() + "
|ВЫБРАТЬ РАЗЛИЧНЫЕ |ВЫБРАТЬ РАЗЛИЧНЫЕ
| МАКСИМУМ(Пользователи.Ссылка) КАК Ссылка, | МАКСИМУМ(Пользователи.Ссылка) КАК Ссылка,
| ПользователиКонтактнаяИнформация.Представление КАК Представление | ПользователиКонтактнаяИнформация.Представление КАК Представление,
| Пользователи.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
|ИЗ |ИЗ
| Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация | Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи
@@ -4495,7 +4501,7 @@
| И ВременнаяТаблица.Почта ЕСТЬ NULL | И ВременнаяТаблица.Почта ЕСТЬ NULL
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ПользователиКонтактнаяИнформация.Представление | ПользователиКонтактнаяИнформация.Представление, Пользователи.ИдентификаторПользователяИБ
| |
|ИМЕЮЩИЕ |ИМЕЮЩИЕ
| КОЛИЧЕСТВО(ПользователиКонтактнаяИнформация.Ссылка) = 1"; | КОЛИЧЕСТВО(ПользователиКонтактнаяИнформация.Ссылка) = 1";
@@ -4509,8 +4515,40 @@
РезультатЗапроса = Запрос.Выполнить().Выгрузить(); РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Возврат РезультатЗапроса.ВыгрузитьКолонку("Ссылка"); Возврат СписокПользователейДляОбновления(ПользователиИБСПочтой, РезультатЗапроса);
КонецФункции
Функция СписокПользователейДляОбновления(ПользователиИБСПочтой, РезультатЗапроса)
Если ПользователиИБСПочтой.Количество() = 0 Тогда
Возврат РезультатЗапроса.ВыгрузитьКолонку("Ссылка");
КонецЕсли;
СписокПользователей = Новый Массив;
Для Каждого ПользователяДляОбновления Из РезультатЗапроса Цикл
СведенияОПользователе = ПользователиИБСПочтой[ПользователяДляОбновления.Представление];
Если СведенияОПользователе = Неопределено Тогда
СписокПользователей.Добавить(ПользователяДляОбновления.Ссылка);
Продолжить;
КонецЕсли;
Если СтрСравнить(ПользователяДляОбновления.ИдентификаторПользователяИБ, СведенияОПользователе.УникальныйИдентификатор) = 0 Тогда
Продолжить;
КонецЕсли;
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для пользователя %1 не может быть установлена почта %2 для восстановления пароля, т.к. она используется для пользователя %3(%4)'"),
ПользователяДляОбновления.Ссылка, СведенияОПользователе.АдресЭлектроннойПочты, СведенияОПользователе.Имя, СведенияОПользователе.ПолноеИмя);
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение,
Метаданные.Справочники.Пользователи, ПользователяДляОбновления.Ссылка, ТекстСообщения);
КонецЦикла;
Возврат СписокПользователей;
КонецФункции КонецФункции
@@ -4531,7 +4569,8 @@
ТекстЗапроса = "ВЫБРАТЬ ТекстЗапроса = "ВЫБРАТЬ
| ПользователиКонтактнаяИнформация.Ссылка КАК Ссылка, | ПользователиКонтактнаяИнформация.Ссылка КАК Ссылка,
| ПользователиКонтактнаяИнформация.Представление КАК Представление | ПользователиКонтактнаяИнформация.Представление КАК Представление,
| Пользователи.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
|ПОМЕСТИТЬ ВременнаяТаблица |ПОМЕСТИТЬ ВременнаяТаблица
|ИЗ |ИЗ
| Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация | Справочник.Пользователи.КонтактнаяИнформация КАК ПользователиКонтактнаяИнформация
@@ -4546,7 +4585,8 @@
ШаблонЗапроса = "ВЫБРАТЬ ШаблонЗапроса = "ВЫБРАТЬ
| ВнешниеПользователи.Ссылка КАК Ссылка, | ВнешниеПользователи.Ссылка КАК Ссылка,
| КонтактнаяИнформацияВнешнегоПользователя.Представление | КонтактнаяИнформацияВнешнегоПользователя.Представление,
| ВнешниеПользователи.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
|ИЗ |ИЗ
| Справочник.ВнешниеПользователи КАК ВнешниеПользователи | Справочник.ВнешниеПользователи КАК ВнешниеПользователи
| ЛЕВОЕ СОЕДИНЕНИЕ #КонтактнаяИнформация КАК КонтактнаяИнформацияВнешнегоПользователя | ЛЕВОЕ СОЕДИНЕНИЕ #КонтактнаяИнформация КАК КонтактнаяИнформацияВнешнегоПользователя
@@ -4574,12 +4614,14 @@
ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() + " ТекстЗапроса = ТекстЗапроса + ОбщегоНазначения.РазделительПакетаЗапросов() + "
|ВЫБРАТЬ |ВЫБРАТЬ
| МАКСИМУМ(ВременнаяТаблица.Ссылка) КАК Ссылка | МАКСИМУМ(ВременнаяТаблица.Ссылка) КАК Ссылка,
| ВременнаяТаблица.Представление КАК Представление,
| ВременнаяТаблица.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
|ИЗ |ИЗ
| ВременнаяТаблица КАК ВременнаяТаблица | ВременнаяТаблица КАК ВременнаяТаблица
| |
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ВременнаяТаблица.Представление | ВременнаяТаблица.Представление, ВременнаяТаблица.ИдентификаторПользователяИБ
| |
|ИМЕЮЩИЕ |ИМЕЮЩИЕ
| КОЛИЧЕСТВО(ВременнаяТаблица.Ссылка) = 1 | КОЛИЧЕСТВО(ВременнаяТаблица.Ссылка) = 1
@@ -4594,7 +4636,9 @@
РезультатЗапроса = Запрос.Выполнить().Выгрузить(); РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Возврат РезультатЗапроса.ВыгрузитьКолонку("Ссылка"); ПользователиИБСПочтой = ПользователиCЭлектроннойПочтойДляВосстановления();
Возврат СписокПользователейДляОбновления(ПользователиИБСПочтой, РезультатЗапроса);
КонецФункции КонецФункции
@@ -4679,7 +4723,7 @@
ЗафиксироватьТранзакцию(); ЗафиксироватьТранзакцию();
Исключение Исключение
ОтменитьТранзакцию(); ОтменитьТранзакцию();
// Если не удалось обработать пользователя, повторяем попытку снова. // Если не удалось обработать пользователя, повторяем попытку снова.
ИнформацияОбОшибке = ИнформацияОбОшибке(); ИнформацияОбОшибке = ИнформацияОбОшибке();
@@ -4699,6 +4743,45 @@
КонецФункции КонецФункции
Функция ПользователиCЭлектроннойПочтойДляВосстановления()
ПользователиИБСПочтой = Новый Соответствие;
ПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей();
Для Каждого ПользовательИБ Из ПользователиИБ Цикл
СведенияОПользователе = СведенияОПользователеДляОбновленияПочтыДляВосстановления();
ЗаполнитьЗначенияСвойств(СведенияОПользователе, ПользовательИБ);
Если ЗначениеЗаполнено(СведенияОПользователе.АдресЭлектроннойПочты) Тогда
ПользователиИБСПочтой.Вставить(СведенияОПользователе.АдресЭлектроннойПочты, СведенияОПользователе);
КонецЕсли;
КонецЦикла;
Возврат ПользователиИБСПочтой;
КонецФункции
// Возвращаемое значение:
// Структура:
// * АдресЭлектроннойПочты - Строка
// * УникальныйИдентификатор - Строка
// * Имя - Строка
// * ПолноеИмя - Строка
//
Функция СведенияОПользователеДляОбновленияПочтыДляВосстановления()
Результат = Новый Структура;
Результат.Вставить("АдресЭлектроннойПочты", "");
Результат.Вставить("УникальныйИдентификатор", "");
Результат.Вставить("Имя", "");
Результат.Вставить("ПолноеИмя", "");
Возврат Результат;
КонецФункции
Функция ПоляВосстановленияПаролей() Экспорт Функция ПоляВосстановленияПаролей() Экспорт
Если ПользователиСлужебныйПовтИсп.ВерсияПредприятияПоддерживаетВосстановлениеПаролей() Тогда Если ПользователиСлужебныйПовтИсп.ВерсияПредприятияПоддерживаетВосстановлениеПаролей() Тогда
@@ -354,8 +354,8 @@
Если РодительЭлемента <> Неопределено Тогда Если РодительЭлемента <> Неопределено Тогда
ТекстПредупреждения = ТекстПредупреждения =
НСтр("ru = 'Для просмотра данной настройки необходимо открыть ""%1"" НСтр("ru = 'Для просмотра данной настройки откройте ""%1""
|и затем перейти к форме ""%2"".'"); |и затем перейдите к форме ""%2"".'");
ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстПредупреждения, ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстПредупреждения,
РодительЭлемента.Настройка, ЭлементДереваЗначений.ТекущиеДанные.Настройка); РодительЭлемента.Настройка, ЭлементДереваЗначений.ТекущиеДанные.Настройка);
ПоказатьПредупреждение(,ТекстПредупреждения); ПоказатьПредупреждение(,ТекстПредупреждения);
@@ -104,8 +104,8 @@
// Если в адресе отсутствуют коды и в программу не загружены адресные объекты адреса, // Если в адресе отсутствуют коды и в программу не загружены адресные объекты адреса,
// Получение кодов может инициировать http запрос к веб-сервису 1С orgaddress. // Получение кодов может инициировать http запрос к веб-сервису 1С orgaddress.
// * НаименованиеВключаетСокращение - Булево - если Истина, то поля содержат сокращения в наименованиях адресных объектов. // * НаименованиеВключаетСокращение - Булево - если Истина, то поля содержат сокращения в наименованиях адресных объектов.
// * ПроверитьАдрес - Булево - если Истина, то адрес будет проверен на соответствие ФИАС. По умолчанию, Ложь. // * ПроверитьАдрес - Булево - если Истина, то адрес будет проверен на соответствие адресному классификатору. По
// Если в программу не загружены проверяемые адресные объекты, // умолчанию, Ложь. Если в программу не загружены проверяемые адресные объекты,
// то проверка адреса может инициировать http запрос к веб-сервису 1С orgaddress. // то проверка адреса может инициировать http запрос к веб-сервису 1С orgaddress.
// * ПолноеНаименованиеСокращений - Булево - устаревший параметр. Следует использовать свойства свойства // * ПолноеНаименованиеСокращений - Булево - устаревший параметр. Следует использовать свойства свойства
// возвращаемого значения с постфиксами ТипПолный и ТипКраткий. По умолчанию, Ложь. // возвращаемого значения с постфиксами ТипПолный и ТипКраткий. По умолчанию, Ложь.
@@ -136,8 +136,8 @@
// Если в адресе отсутствуют коды и в программу не загружены адресные объекты адреса, // Если в адресе отсутствуют коды и в программу не загружены адресные объекты адреса,
// Получение кодов может инициировать http запрос к веб-сервису 1С orgaddress. // Получение кодов может инициировать http запрос к веб-сервису 1С orgaddress.
// * НаименованиеВключаетСокращение - Булево - если Истина, то поля содержат сокращениям в наименованиях адресных объектов. // * НаименованиеВключаетСокращение - Булево - если Истина, то поля содержат сокращениям в наименованиях адресных объектов.
// * ПроверитьАдрес - Булево - если Истина, то адрес будет проверен на соответствие ФИАС. По умолчанию Ложь. // * ПроверитьАдрес - Булево - если Истина, то адрес будет проверен на соответствие адресному классификатору. По
// Если в программу не загружены проверяемые адресные объекты, // умолчанию Ложь. Если в программу не загружены проверяемые адресные объекты,
// то проверка адреса может инициировать http запрос к веб-сервису 1С orgaddress. // то проверка адреса может инициировать http запрос к веб-сервису 1С orgaddress.
// * ПолноеНаименованиеСокращений - Булево - устаревший параметр. Следует использовать свойства свойства // * ПолноеНаименованиеСокращений - Булево - устаревший параметр. Следует использовать свойства свойства
// возвращаемого значения с постфиксами ТипПолный и ТипКраткий. По умолчанию, Ложь. // возвращаемого значения с постфиксами ТипПолный и ТипКраткий. По умолчанию, Ложь.
@@ -396,7 +396,7 @@
// ПараметрыПроверки - Структура // ПараметрыПроверки - Структура
// - СправочникСсылка.ВидыКонтактнойИнформации - флаги проверки адреса: // - СправочникСсылка.ВидыКонтактнойИнформации - флаги проверки адреса:
// ТолькоНациональныйАдрес - Булево - адрес должен быть только российским. По умолчанию Истина. // ТолькоНациональныйАдрес - Булево - адрес должен быть только российским. По умолчанию Истина.
// ФорматАдреса - Строка - устарело. По какому классификатору проверять: "КЛАДР" или "ФИАС". По умолчанию "КЛАДР". // ФорматАдреса - Строка - устарело. По какому классификатору проверять.
// Возвращаемое значение: // Возвращаемое значение:
// Структура - содержит структуру с полями: // Структура - содержит структуру с полями:
// * Результат - Строка - результат проверки: "Корректный", "НеПроверен", "СодержитОшибки". // * Результат - Строка - результат проверки: "Корректный", "НеПроверен", "СодержитОшибки".
@@ -406,7 +406,7 @@
Возврат УправлениеКонтактнойИнформациейСлужебный.ПроверитьАдрес(Адрес, ПараметрыПроверки); Возврат УправлениеКонтактнойИнформациейСлужебный.ПроверитьАдрес(Адрес, ПараметрыПроверки);
КонецФункции КонецФункции
// Проверяет адреса на соответствие ФИАС и для устаревших адресов возвращает актуальные варианты. // Проверяет адреса на соответствие адресному классификатору и для устаревших адресов возвращает актуальные варианты.
// Если адресные сведения региона адреса не загружены в программу, то проверка адреса будет // Если адресные сведения региона адреса не загружены в программу, то проверка адреса будет
// выполнена через веб-сервис orgaddress и может занимать до 120 секунд. // выполнена через веб-сервис orgaddress и может занимать до 120 секунд.
// Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы, // Поэтому для исключения зависаний пользовательского интерфейса, например при открытии формы,
@@ -431,7 +431,8 @@
// * Ключ - Число - уникальный идентификатор адреса; // * Ключ - Число - уникальный идентификатор адреса;
// * Значение - Структура: // * Значение - Структура:
// * АдресПроверен - Булево - признак, что адрес был проверен в классификаторе или через веб-сервис. // * АдресПроверен - Булево - признак, что адрес был проверен в классификаторе или через веб-сервис.
// * АдресКорректный - Булево - признак, что адрес соответствует ФИАС. Устаревшие адреса считаются некорректными. // * АдресКорректный - Булево - признак, что адрес соответствует адресному классификатору. Устаревшие адреса
// считаются некорректными.
// * Ошибки - Массив из Строка - список ошибок в адресе. // * Ошибки - Массив из Строка - список ошибок в адресе.
// * АктуальныеАдреса - Массив из Структура - где: // * АктуальныеАдреса - Массив из Структура - где:
// Если адрес устарел, то содержит варианты актуального адреса в виде полей адреса, где: // Если адрес устарел, то содержит варианты актуального адреса в виде полей адреса, где:
@@ -924,7 +925,7 @@
КонецФункции КонецФункции
// Устарела. Следует использовать РаботаСАдресами.СведенияОбАдресе. // Устарела. Следует использовать РаботаСАдресами.СведенияОбАдресе.
// Преобразует адреса нового формата XML ФИАС в адрес формата КЛАДР. // Преобразует адреса формата XML в адрес формата КЛАДР.
// //
// Параметры: // Параметры:
// Данные - Строка - строка XML соответствующая XDTO пакету Адрес. // Данные - Строка - строка XML соответствующая XDTO пакету Адрес.
@@ -1022,7 +1023,7 @@
Проверка.ИдентификаторГруппы = "КонтактнаяИнформация"; Проверка.ИдентификаторГруппы = "КонтактнаяИнформация";
Проверка.Наименование = НСтр("ru = 'Выявление устаревших адресов контактной информации'"); Проверка.Наименование = НСтр("ru = 'Выявление устаревших адресов контактной информации'");
Проверка.Причины = НСтр("ru = 'Переподчинение адресных объектов (улиц, населенных пунктов), их переименование или упразднение влечет за собой внесение изменений в Проверка.Причины = НСтр("ru = 'Переподчинение адресных объектов (улиц, населенных пунктов), их переименование или упразднение влечет за собой внесение изменений в
|Федеральную информационную адресную систему (ФИАС). После этого ранее введенные адреса перестают проходить проверку на соответствие ФИАС.'"); |Государственном адресном реестре (ГАР). После этого ранее введенные адреса перестают проходить проверку на соответствие адресному классификатору.'");
Проверка.Рекомендация = НСтр("ru = 'Для автоматической замены устаревших адресов на актуальные нажать ссылку ниже. Проверка.Рекомендация = НСтр("ru = 'Для автоматической замены устаревших адресов на актуальные нажать ссылку ниже.
|При этом следует оставлять без изменений юридически значимые адреса (адрес ЕГРЮЛ, место регистрации, рождения и др.). |При этом следует оставлять без изменений юридически значимые адреса (адрес ЕГРЮЛ, место регистрации, рождения и др.).
| |
@@ -1036,11 +1037,11 @@
Проверка = Проверки.Добавить(); Проверка = Проверки.Добавить();
Проверка.ИдентификаторГруппы = "КонтактнаяИнформация"; Проверка.ИдентификаторГруппы = "КонтактнаяИнформация";
Проверка.Наименование = НСтр("ru = 'Проверка адресов на соответствие ФИАС.'"); Проверка.Наименование = НСтр("ru = 'Проверка адресов на соответствие адресному классификатору.'");
Проверка.Причины = НСтр("ru = 'Адрес контактной информации введен некорректно, устарел, был некорректно загружен из других источников или еще не внесен в Федеральную информационную адресную систему.'"); Проверка.Причины = НСтр("ru = 'Адрес контактной информации введен некорректно, устарел, был некорректно загружен из других источников или еще не внесен в Федеральную информационную адресную систему.'");
Рекомендация = НСтр("ru = 'В зависимости от ситуации следует выбрать один из вариантов: Рекомендация = НСтр("ru = 'В зависимости от ситуации следует выбрать один из вариантов:
|• Убедиться, что адрес введен корректно, проверив адрес на сайте ФИАС: https://fias.nalog.ru/ExtendedSearch |• Убедиться, что адрес введен корректно, проверив адрес на сайте ФНС России: https://fias.nalog.ru/ExtendedSearch
|О некорректных или неполных адресных сведениях на сайте ФИАС рекомендуется сообщать в органы местного самоуправления или в службу технической поддержки online-сервисов ФНС России. |О некорректных или неполных адресных сведениях на сайте ФНС России рекомендуется сообщать в органы местного самоуправления или в службу технической поддержки online-сервисов ФНС России.
|• Если адрес устарел вследствие переименования, переподчинения или упразднения адресных объектов (улиц, населенных пунктов), то введите актуальный адрес. |• Если адрес устарел вследствие переименования, переподчинения или упразднения адресных объектов (улиц, населенных пунктов), то введите актуальный адрес.
| |
|Если адресный классификатор загружен в программу, то: |Если адресный классификатор загружен в программу, то:
@@ -1053,8 +1054,8 @@
Проверка.Рекомендация = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Рекомендация, Проверка.Рекомендация = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Рекомендация,
НавигационнаяСсылкаЗагрузкиАдресногоКлассификатора); НавигационнаяСсылкаЗагрузкиАдресногоКлассификатора);
Проверка.Идентификатор = "РаботаСАдресами.ПроверитьАдресаНаСоответствиеФИАС"; Проверка.Идентификатор = "РаботаСАдресами.ПроверитьАдресаНаСоответствиеАдресномуКлассификатору";
Проверка.ОбработчикПроверки = "РаботаСАдресами.ПроверитьАдресаНаСоответствиеФИАС"; Проверка.ОбработчикПроверки = "РаботаСАдресами.ПроверитьАдресаНаСоответствиеАдресномуКлассификатору";
Проверка.КонтекстПроверокВеденияУчета = "_КонтактнаяИнформация"; Проверка.КонтекстПроверокВеденияУчета = "_КонтактнаяИнформация";
Проверка.Отключена = Истина; Проверка.Отключена = Истина;
@@ -1403,7 +1404,7 @@
// * Наименование - Строка // * Наименование - Строка
// * Тип - Строка // * Тип - Строка
// * Порядок - Строка // * Порядок - Строка
// * КодФИАС - Строка // * КодАдресногоКлассификатора - Строка
// * Сокращение - Строка // * Сокращение - Строка
// * Ключ - Строка // * Ключ - Строка
// //
@@ -1411,7 +1412,7 @@
Результат = Новый Массив; Результат = Новый Массив;
// Код, Наименование, Тип, Порядок, КодФИАС // Код, Наименование, Тип, Порядок, КодАдресногоКлассификатора
// Тип: 1 - владение, 2 - здание, 3 - помещение. // Тип: 1 - владение, 2 - здание, 3 - помещение.
Результат.Добавить(СтрокаОбъектаАдресации("1010", "Дом", 1, 1, 2)); // Тип владения не локализуется Результат.Добавить(СтрокаОбъектаАдресации("1010", "Дом", 1, 1, 2)); // Тип владения не локализуется
@@ -1457,14 +1458,14 @@
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодФИАС = 0) Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодАдресногоКлассификатора = 0)
СтруктураОбъектаАдресации = Новый Структура; СтруктураОбъектаАдресации = Новый Структура;
СтруктураОбъектаАдресации.Вставить("Код", Код); СтруктураОбъектаАдресации.Вставить("Код", Код);
СтруктураОбъектаАдресации.Вставить("Наименование", Наименование); СтруктураОбъектаАдресации.Вставить("Наименование", Наименование);
СтруктураОбъектаАдресации.Вставить("Тип", Тип); СтруктураОбъектаАдресации.Вставить("Тип", Тип);
СтруктураОбъектаАдресации.Вставить("Порядок", Порядок); СтруктураОбъектаАдресации.Вставить("Порядок", Порядок);
СтруктураОбъектаАдресации.Вставить("КодФИАС", КодФИАС); СтруктураОбъектаАдресации.Вставить("КодАдресногоКлассификатора", КодАдресногоКлассификатора);
СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование)); СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование));
СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование)); СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование));
Возврат СтруктураОбъектаАдресации; Возврат СтруктураОбъектаАдресации;
@@ -2639,7 +2640,7 @@
Возврат КодМуниципальногоРайона; Возврат КодМуниципальногоРайона;
КонецЕсли; КонецЕсли;
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ТипМуниципальногоРайона, "м.р-н") = 0 Тогда Если СтрСравнить(ТипМуниципальногоРайона, "м.р-н") = 0 Тогда
КодМуниципальногоРайона = "1"; КодМуниципальногоРайона = "1";
ИначеЕсли СтрСравнить(ТипМуниципальногоРайона, "г.о.") = 0 Тогда ИначеЕсли СтрСравнить(ТипМуниципальногоРайона, "г.о.") = 0 Тогда
@@ -2672,7 +2673,7 @@
КодПоселения = ""; КодПоселения = "";
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ТипПоселения, "г.п.") = 0 Или СтрСравнить(ТипПоселения, "г. п.") = 0 Тогда Если СтрСравнить(ТипПоселения, "г.п.") = 0 Или СтрСравнить(ТипПоселения, "г. п.") = 0 Тогда
КодПоселения = "1"; КодПоселения = "1";
ИначеЕсли СтрСравнить(ТипПоселения, "с.п.") = 0 Тогда ИначеЕсли СтрСравнить(ТипПоселения, "с.п.") = 0 Тогда
@@ -2789,8 +2790,6 @@
СоответствиеПолей.Вставить("Дом", "houseNumber"); СоответствиеПолей.Вставить("Дом", "houseNumber");
СоответствиеПолей.Вставить("ТипДома", "houseType"); СоответствиеПолей.Вставить("ТипДома", "houseType");
ОписаниеКонтактнойИнформации.AddressType = РаботаСАдресамиКлиентСервер.АдминистративноТерриториальныйАдрес();
Для каждого ПолеКонтактнойИнформации Из КонтактнаяИнформация Цикл Для каждого ПолеКонтактнойИнформации Из КонтактнаяИнформация Цикл
ИмяПоля = СоответствиеПолей.Получить(ПолеКонтактнойИнформации.Ключ); ИмяПоля = СоответствиеПолей.Получить(ПолеКонтактнойИнформации.Ключ);
Если ИмяПоля <> Неопределено Тогда Если ИмяПоля <> Неопределено Тогда
@@ -2798,6 +2797,15 @@
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
Если КонтактнаяИнформация.Свойство("ТипАдреса") И РаботаСАдресамиКлиентСервер.ЭтоМуниципальныйАдрес(КонтактнаяИнформация.ТипАдреса) Тогда
ОписаниеКонтактнойИнформации.AddressType = РаботаСАдресамиКлиентСервер.МуниципальныйАдрес();
Если КонтактнаяИнформация.Свойство("МуниципальноеПредставление") И ЗначениеЗаполнено(КонтактнаяИнформация.МуниципальноеПредставление) Тогда
ОписаниеКонтактнойИнформации.value = КонтактнаяИнформация.МуниципальноеПредставление;
КонецЕсли;
Иначе
ОписаниеКонтактнойИнформации.AddressType = РаботаСАдресамиКлиентСервер.АдминистративноТерриториальныйАдрес();
КонецЕсли;
Если КонтактнаяИнформация.Свойство("Здание") Если КонтактнаяИнформация.Свойство("Здание")
И ТипЗнч(КонтактнаяИнформация.Здание) = Тип("Структура") И ТипЗнч(КонтактнаяИнформация.Здание) = Тип("Структура")
И КонтактнаяИнформация.Здание.Свойство("Номер") Тогда И КонтактнаяИнформация.Здание.Свойство("Номер") Тогда
@@ -2839,6 +2847,11 @@
КонецЕсли; КонецЕсли;
Если ПустаяСтрока(ОписаниеКонтактнойИнформации.value) Тогда
ОписаниеКонтактнойИнформации.value = РаботаСАдресамиКлиентСервер.ПредставлениеАдреса(ОписаниеКонтактнойИнформации, Ложь,
ОписаниеКонтактнойИнформации.AddressType);
КонецЕсли;
Возврат ОписаниеКонтактнойИнформации; Возврат ОписаниеКонтактнойИнформации;
КонецФункции КонецФункции
@@ -3932,13 +3945,13 @@
КонецПроцедуры КонецПроцедуры
// Проверка адресов на соответствие ФИАС. // Проверка адресов на соответствие адресному классификатору.
// //
// Параметры: // Параметры:
// Проверка - СправочникСсылка.ПравилаПроверкиУчета - исполняемая проверка; // Проверка - СправочникСсылка.ПравилаПроверкиУчета - исполняемая проверка;
// ПараметрыПроверки - см. КонтрольВеденияУчета.ОписаниеПроблемы.ПараметрыПроверки // ПараметрыПроверки - см. КонтрольВеденияУчета.ОписаниеПроблемы.ПараметрыПроверки
// //
Процедура ПроверитьАдресаНаСоответствиеФИАС(Проверка, ПараметрыПроверки) Экспорт Процедура ПроверитьАдресаНаСоответствиеАдресномуКлассификатору(Проверка, ПараметрыПроверки) Экспорт
Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
Возврат; Возврат;
@@ -4064,10 +4077,10 @@
Если ПроверенныйАдрес.Ошибки.Количество() > 0 Тогда Если ПроверенныйАдрес.Ошибки.Количество() > 0 Тогда
УточнениеПроблемы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( УточнениеПроблемы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = '%1 ""%2"" не соответствует ФИАС, по причине: %3'"), Строка(ОписаниеАдреса.Вид), ОписаниеАдреса.Представление, ПроверенныйАдрес.Ошибки[0].Текст); НСтр("ru = '%1 ""%2"" не соответствует адресному классификатору, по причине: %3'"), Строка(ОписаниеАдреса.Вид), ОписаниеАдреса.Представление, ПроверенныйАдрес.Ошибки[0].Текст);
Иначе Иначе
УточнениеПроблемы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( УточнениеПроблемы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = '%1 ""%2"" не соответствует ФИАС'"), Строка(ОписаниеАдреса.Вид), ОписаниеАдреса.Представление); НСтр("ru = '%1 ""%2"" не соответствует адресному классификатору'"), Строка(ОписаниеАдреса.Вид), ОписаниеАдреса.Представление);
КонецЕсли; КонецЕсли;
Проблема = МодульКонтрольВеденияУчета.ОписаниеПроблемы(ОписаниеАдреса.Ссылка, ПараметрыПроверки); Проблема = МодульКонтрольВеденияУчета.ОписаниеПроблемы(ОписаниеАдреса.Ссылка, ПараметрыПроверки);
@@ -251,7 +251,7 @@
// //
// Параметры: // Параметры:
// ТипКИ - ПеречислениеСсылка.ТипыКонтактнойИнформации - тип контактной информации. // ТипКИ - ПеречислениеСсылка.ТипыКонтактнойИнформации - тип контактной информации.
// ФорматАдреса - Строка - тип возвращаемой структуры в зависимости от формата адреса: "КЛАДР" или "ФИАС". // ФорматАдреса - Строка - тип возвращаемой структуры в зависимости от формата адреса.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Структура - пустая структура контактной информации, ключи - имена полей, значения поля. // Структура - пустая структура контактной информации, ключи - имена полей, значения поля.
@@ -614,7 +614,7 @@
Сокращения = Новый Соответствие; Сокращения = Новый Соответствие;
// АПК:1036-выкл Данные из ФИАС (сокращения) // АПК:1036-выкл Данные из адресного классификатора (сокращения)
Сокращения.Вставить("ВЛАДЕНИЕ", "влд."); Сокращения.Вставить("ВЛАДЕНИЕ", "влд.");
Сокращения.Вставить("ГАРАЖ", "г-ж"); Сокращения.Вставить("ГАРАЖ", "г-ж");
Сокращения.Вставить("ДОМ", "д."); Сокращения.Вставить("ДОМ", "д.");
@@ -652,7 +652,7 @@
// //
Функция КраткоеНаписаниеМуниципальныхРайонов(Наименование, Сокращение) Экспорт Функция КраткоеНаписаниеМуниципальныхРайонов(Наименование, Сокращение) Экспорт
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(Сокращение, "г.о.") = 0 Тогда Если СтрСравнить(Сокращение, "г.о.") = 0 Тогда
Наименование = СокрЛП(СтрЗаменить(Наименование, "Городской округ", "")); // @Non-NLS-1 Наименование = СокрЛП(СтрЗаменить(Наименование, "Городской округ", "")); // @Non-NLS-1
КонецЕсли; КонецЕсли;
@@ -686,7 +686,7 @@
// //
Функция КраткоеНаписаниеПоселений(Наименование, Сокращение) Экспорт Функция КраткоеНаписаниеПоселений(Наименование, Сокращение) Экспорт
// АПК: 1297-выкл Данные ФИАС, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(Сокращение, "г.п.") Или СтрСравнить(Сокращение, "г. п.") = 0 Тогда // @Non-NLS-2 Если СтрСравнить(Сокращение, "г.п.") Или СтрСравнить(Сокращение, "г. п.") = 0 Тогда // @Non-NLS-2
Наименование = СокрЛП(СтрЗаменить(Наименование, "Городское поселение", "")); // @Non-NLS-1 Наименование = СокрЛП(СтрЗаменить(Наименование, "Городское поселение", "")); // @Non-NLS-1
КонецЕсли; КонецЕсли;
@@ -565,7 +565,7 @@
Если Не КомпонентаУстановлена Тогда Если Не КомпонентаУстановлена Тогда
ТекстВопроса = ТекстВопроса =
НСтр("ru = 'Для продолжения работы необходимо установить компоненту сканирования. НСтр("ru = 'Для продолжения работы установите компоненту сканирования.
|Установить компоненту?'"); |Установить компоненту?'");
Обработчик = Новый ОписаниеОповещения("ПоказатьВопросУстановкиКомпонентыСканирования", Обработчик = Новый ОписаниеОповещения("ПоказатьВопросУстановкиКомпонентыСканирования",
ЭтотОбъект, КомпонентаУстановлена); ЭтотОбъект, КомпонентаУстановлена);
@@ -869,7 +869,7 @@
#Если ВебКлиент Тогда #Если ВебКлиент Тогда
Если ПараметрыВыполнения.ДанныеФайла.Расширение <> "mxl" Тогда Если ПараметрыВыполнения.ДанныеФайла.Расширение <> "mxl" Тогда
Текст = НСтр("ru = 'Необходимо сохранить файл на компьютер, после чего распечатать его при помощи приложения, предназначенного для работы с данным файлом.'"); Текст = НСтр("ru = 'Сохраните файл на компьютер, после чего распечатать его при помощи приложения, предназначенного для работы с данным файлом.'");
ПоказатьПредупреждение(, Текст); ПоказатьПредупреждение(, Текст);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -1083,7 +1083,7 @@
Оповещение = Новый ОписаниеОповещения("ПолучитьИмяВременногоФайлаПослеПроверкиРасширенияРаботыСФайлами", Оповещение = Новый ОписаниеОповещения("ПолучитьИмяВременногоФайлаПослеПроверкиРасширенияРаботыСФайлами",
ЭтотОбъект, Контекст); ЭтотОбъект, Контекст);
ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение, ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение,
НСтр("ru = 'Для получения имени временного файла необходимо установить расширение для работы с 1С:Предприятием.'"), Ложь); НСтр("ru = 'Для получения имени временного файла установите расширение для работы с 1С:Предприятием.'"), Ложь);
КонецПроцедуры КонецПроцедуры
@@ -2485,9 +2485,11 @@
Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика();
НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить(); Если ПодсистемаЭПСуществует Тогда
НоваяСтрока.Процедура = "РаботаСФайлами.ПеренестиЭлектронныеПодписиИСертификатыШифрованияВРегистрыСведений"; НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить();
НоваяСтрока.Порядок = "После"; НоваяСтрока.Процедура = "РаботаСФайлами.ПеренестиЭлектронныеПодписиИСертификатыШифрованияВРегистрыСведений";
НоваяСтрока.Порядок = "После";
КонецЕсли;
НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить(); НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить();
НоваяСтрока.Процедура = "РегистрыСведений.НаличиеФайлов.ОбработатьДанныеДляПереходаНаНовуюВерсию"; НоваяСтрока.Процедура = "РегистрыСведений.НаличиеФайлов.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -7742,12 +7744,6 @@
КонецФункции КонецФункции
Функция ЭтоФайл(Файл)
Возврат Не ЭтоПапкаФайлов(Файл);
КонецФункции
Функция ЭтоСсылкаНаФайл(ОбъектВладелец) Функция ЭтоСсылкаНаФайл(ОбъектВладелец)
МассивТиповФайлов = Метаданные.ОпределяемыеТипы.ПрисоединенныйФайл.Тип.Типы(); МассивТиповФайлов = Метаданные.ОпределяемыеТипы.ПрисоединенныйФайл.Тип.Типы();
@@ -8175,7 +8175,7 @@
СтруктураПути = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ВыбранноеИмяФайла); СтруктураПути = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ВыбранноеИмяФайла);
Если ПустаяСтрока(СтруктураПути.Расширение) Тогда Если ПустаяСтрока(СтруктураПути.Расширение) Тогда
ТекстВопроса = НСтр("ru = 'Необходимо указать файл с расширением.'"); ТекстВопроса = НСтр("ru = 'Укажите файл с расширением.'");
Кнопки = Новый СписокЗначений; Кнопки = Новый СписокЗначений;
Кнопки.Добавить(КодВозвратаДиалога.Повторить, НСтр("ru = 'Выбрать другой файл'")); Кнопки.Добавить(КодВозвратаДиалога.Повторить, НСтр("ru = 'Выбрать другой файл'"));
Кнопки.Добавить(КодВозвратаДиалога.Отмена); Кнопки.Добавить(КодВозвратаДиалога.Отмена);
@@ -9828,7 +9828,7 @@
ОбъектDispatcherHelper = ОбъектServiceManager.createInstance("com.sun.star.frame.DispatchHelper"); ОбъектDispatcherHelper = ОбъектServiceManager.createInstance("com.sun.star.frame.DispatchHelper");
Исключение Исключение
ТекстИсключения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); ТекстИсключения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
ВызватьИсключение ТекстИсключения + Символы.ПС + НСтр("ru = 'Необходимо установить (переустановить) приложение OpenOffice.org Writer.'"); ВызватьИсключение ТекстИсключения + Символы.ПС + НСтр("ru = 'Установите (переустановите) приложение OpenOffice.org Writer.'");
КонецПопытки; КонецПопытки;
// Параметры открытия: отключение исполнения макросов. // Параметры открытия: отключение исполнения макросов.
@@ -9865,7 +9865,7 @@
ОбъектWord = Новый COMОбъект("Word.Application"); ОбъектWord = Новый COMОбъект("Word.Application");
Исключение Исключение
ТекстИсключения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); ТекстИсключения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
ВызватьИсключение ТекстИсключения + Символы.ПС + НСтр("ru = 'Необходимо установить (переустановить) приложение Microsoft Word.'"); ВызватьИсключение ТекстИсключения + Символы.ПС + НСтр("ru = 'Установите (переустановите) приложение Microsoft Word.'");
КонецПопытки; КонецПопытки;
ОбъектWord.Visible = 0; ОбъектWord.Visible = 0;
ОбъектWord.WordBasic.DisableAutoMacros(1); ОбъектWord.WordBasic.DisableAutoMacros(1);
@@ -9878,7 +9878,7 @@
// Произошла исключительная ситуация (Microsoft Word): Метод или свойство Merge недоступны, потому что эту команду // Произошла исключительная ситуация (Microsoft Word): Метод или свойство Merge недоступны, потому что эту команду
// нельзя использовать в режиме чтения. // нельзя использовать в режиме чтения.
ВызватьИсключение ТекстИсключения + Символы.ПС ВызватьИсключение ТекстИсключения + Символы.ПС
+ НСтр("ru = 'Необходимо в настройках Microsoft Word (меню Файл — Параметры) на закладке ""Общие"" снять флажок ""Открывать вложения электронной почты в режиме чтения"".'"); + НСтр("ru = 'В настройках Microsoft Word (меню Файл — Параметры) на закладке ""Общие"" снимите флажок ""Открывать вложения электронной почты в режиме чтения"".'");
КонецПопытки; КонецПопытки;
ОбъектWord.Visible = 1; ОбъектWord.Visible = 1;
@@ -170,20 +170,11 @@
ПараметрыДоставки.ШаблонТемы = Рассылка.ТемаПисьма; ПараметрыДоставки.ШаблонТемы = Рассылка.ТемаПисьма;
ПараметрыДоставки.ШаблонТекста = ?(Рассылка.ПисьмоВФорматеHTML, Рассылка.ТекстПисьмаВФорматеHTML, Рассылка.ТекстПисьма); ПараметрыДоставки.ШаблонТекста = ?(Рассылка.ПисьмоВФорматеHTML, Рассылка.ТекстПисьмаВФорматеHTML, Рассылка.ТекстПисьма);
// Получатели ПолучателиРассылкиВыбранны = ПолучателиРассылкиВыбранны(
Если ДополнительныеНастройки <> Неопределено И ДополнительныеНастройки.Свойство("Получатели") Тогда Рассылка, ПараметрыДоставки, ПараметрыЖурнала, ДополнительныеНастройки);
ПараметрыДоставки.Получатели = ДополнительныеНастройки.Получатели;
Иначе Если Не ПолучателиРассылкиВыбранны Тогда
Получатели = СформироватьСписокПолучателейРассылки(Рассылка, ПараметрыЖурнала); Возврат Ложь;
Если Получатели.Количество() = 0 Тогда
ПараметрыДоставки.ИспользоватьЭлектроннуюПочту = Ложь;
Если Не ПараметрыДоставки.ИспользоватьПапку
И Не ПараметрыДоставки.ИспользоватьСетевойКаталог
И Не ПараметрыДоставки.ИспользоватьFTPРесурс Тогда
Возврат Ложь;
КонецЕсли;
КонецЕсли;
ПараметрыДоставки.Получатели = Получатели;
КонецЕсли; КонецЕсли;
ТипТекста = ?(Рассылка.ПисьмоВФорматеHTML, "HTML", "ПростойТекст"); ТипТекста = ?(Рассылка.ПисьмоВФорматеHTML, "HTML", "ПростойТекст");
@@ -1324,6 +1315,49 @@
Возврат СписокПолучателей; Возврат СписокПолучателей;
КонецФункции КонецФункции
Функция ПолучателиРассылкиВыбранны(Рассылка, ПараметрыДоставки, ПараметрыЖурнала, ДополнительныеНастройки)
Получатели = СформироватьСписокПолучателейРассылки(Рассылка, ПараметрыЖурнала);
Если ДополнительныеНастройки <> Неопределено
И ДополнительныеНастройки.Свойство("Получатели") Тогда
ВыбранныеПолучатели = ДополнительныеНастройки.Получатели;
ИсключенныеПолучатели = Новый Массив;
Для Каждого Получатель Из Получатели Цикл
Если ВыбранныеПолучатели[Получатель.Ключ] = Неопределено Тогда
ИсключенныеПолучатели.Добавить(Получатель.Ключ);
КонецЕсли;
КонецЦикла;
Для Каждого Получатель Из ИсключенныеПолучатели Цикл
Получатели.Удалить(Получатель);
КонецЦикла;
КонецЕсли;
Если Получатели.Количество() = 0 Тогда
ПараметрыДоставки.ИспользоватьЭлектроннуюПочту = Ложь;
Если Не ПараметрыДоставки.ИспользоватьПапку
И Не ПараметрыДоставки.ИспользоватьСетевойКаталог
И Не ПараметрыДоставки.ИспользоватьFTPРесурс Тогда
Возврат Ложь;
КонецЕсли;
КонецЕсли;
ПараметрыДоставки.Получатели = Получатели;
Возврат Истина;
КонецФункции
// Подключает, проверяет и инициализирует отчет по ссылке, используется перед формированием или редактированием // Подключает, проверяет и инициализирует отчет по ссылке, используется перед формированием или редактированием
// параметров. // параметров.
// //
@@ -28,7 +28,7 @@
НастройкиРезервногоКопирования = НастройкиРезервногоКопирования(); НастройкиРезервногоКопирования = НастройкиРезервногоКопирования();
Если НастройкиРезервногоКопирования = Неопределено Тогда Если НастройкиРезервногоКопирования = Неопределено Тогда
Возврат НСтр("ru = 'Для настройки резервного копирования необходимо обратиться к администратору.'"); Возврат НСтр("ru = 'Для настройки резервного копирования обратитесь к администратору.'");
КонецЕсли; КонецЕсли;
ТекущаяНастройка = НСтр("ru = 'Резервное копирование не настроено, информационная база подвергается риску потери данных.'"); ТекущаяНастройка = НСтр("ru = 'Резервное копирование не настроено, информационная база подвергается риску потери данных.'");
File diff suppressed because it is too large. Load diff
@@ -50,6 +50,7 @@
ОпределениеASN.Вставить("ВключитьИсходныеДанные", СвойствоСтруктуры(ПараметрыОперации, "ВключитьИсходныеДанные", Ложь)); ОпределениеASN.Вставить("ВключитьИсходныеДанные", СвойствоСтруктуры(ПараметрыОперации, "ВключитьИсходныеДанные", Ложь));
ОпределениеASN.Вставить("ОтображатьОшибки", СвойствоСтруктуры(ПараметрыОперации, "ОтображатьОшибки", Ложь)); ОпределениеASN.Вставить("ОтображатьОшибки", СвойствоСтруктуры(ПараметрыОперации, "ОтображатьОшибки", Ложь));
ОпределениеASN.Вставить("ОграничениеDER", СвойствоСтруктуры(ПараметрыОперации, "ОграничениеDER", Ложь)); ОпределениеASN.Вставить("ОграничениеDER", СвойствоСтруктуры(ПараметрыОперации, "ОграничениеDER", Ложь));
ОпределениеASN.Вставить("ИзвлечьСОшибками", СвойствоСтруктуры(ПараметрыОперации, "ИзвлечьСОшибками", Истина));
Результат = Неопределено; Результат = Неопределено;
Попытка Попытка
@@ -58,8 +59,10 @@
Результат = НоваяСтрока("Начало", Новый Массив); Результат = НоваяСтрока("Начало", Новый Массив);
ПрочитатьОчереднуюПорцию(ОпределениеASN, ПотокЧтенияФайла, 1, Результат); ПрочитатьОчереднуюПорцию(ОпределениеASN, ПотокЧтенияФайла, 1, Результат);
Исключение Исключение
ОтработатьВозникновениеОшибки(ОпределениеASN); ОтработатьВозникновениеОшибки(ОпределениеASN, ИнформацияОбОшибке());
Результат = Неопределено; Если НЕ ОпределениеASN.ИзвлечьСОшибками Тогда
Результат = Неопределено;
КонецЕсли;
КонецПопытки; КонецПопытки;
Возврат Результат; Возврат Результат;
@@ -1665,11 +1668,12 @@
КонецФункции КонецФункции
// Предусмотрена для анализа отладочной информации // Предусмотрена для анализа отладочной информации
Процедура ОтработатьВозникновениеОшибки(ОпределениеASN) Процедура ОтработатьВозникновениеОшибки(ОпределениеASN, ТекущаяОшибка)
Если ОпределениеASN.ОтображатьОшибки Тогда Если ОпределениеASN.ОтображатьОшибки Тогда
ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ОбъектСообщения = Новый СообщениеПользователю();
ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(ТекстОшибки); ОбъектСообщения.Текст = ПодробноеПредставлениеОшибки(ТекущаяОшибка);
ОбъектСообщения.Сообщить();
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
Loaded 100 of 216 files, more files were not shown because too many files have changed in this diff. Show more